Fordított tartalom azonos node-nid alatt lehessen elérni

barna89 képe

Sziasztok!

Lehet, hogy a kérdésem csak 1 pipa berakásról szól, de nem találom, meg nem is biztos, hogy van rá mód:
Azt szeretném kérdezni, hogy megoldható-e hogy ha egy tartalmat fordítok (i18n) akkor a tartalom ne kapjon új NID-et, hanem ugyan az alatt a cím alatt lehessen elérni.
Gyakorlatilag a különbség ugye annyi a magyar és az angol között, hogy útvonal előtag van.

Tehát ugyan az az elérési út csak ha angol akkor angol szöveg, ha magyar akkor magyar.

Köszönöm előre is!!!

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
Balogh Zoltán képe

Azt szeretném kérdezni, hogy megoldható-e hogy ha egy tartalmat fordítok (i18n) akkor a tartalom ne kapjon új NID-et, hanem ugyan az alatt a cím alatt lehessen elérni.

Nem.

0
0
barna89 képe

Ohh,
és esetleg valahogy hasonló uri-ra hozni, hogy legalább következzen a másikból és ne az éppen soron következőt NID-et kapja végnek?
Azért mert akkor php-ban meg tudnám adni neki, hogy ha angol a jelenlegi nyelv és ha rákattintok egy képre ami (nálam link és ezért nem kell azt fordítanom és új uri-t adnom).

Csak annyi lenne a lényeg, hogy következzen a "magyar NID"-ből az "angol NID." :D
ez így elég hülyén hangzik :)

0
0
nevergone képe

Igazából azért nem, mert a "nid" (node id) egy tartalomazonosító, ezért nem lehetsz hatással az értékére. Ezért nem lehet két különböző tartalom (még ha csak annyi a különbség, hogy egymás fordításai) azonos nid-del, mint ahogy nem lehet két különböző ember azonos személyi számmal sem. A "nid" egy folytonosan növekvő, inkrementális azonosító, amelynek értékére nem lehetsz hatással.
Nem tudom, pontosan mit csinál a PHP szkripted, és hogyan (remélem modul, és nem valami kézi kókány), de én az útvonal álneveket használnám fel, illetve szerintem van olyan Drupal API függvény, ami egy tartalomról megmondja, hogy milyen fordításai érhetőek még el a rendszerben.
Remélem érhető, amit el szerettem volna mondani, némi bor-fogyasztás után így sikerült. :)

0
0
barna89 képe

Köszönöm mindenkinek!
szerintem megvan a megoldás, habár nem hiszem, hogy nektek tetszeni fog, mert sql lekérdezés lesz és szerintem sminkbe fogom tenni (mert most hova máshova???)

A következőt gondoltam:
Észrevettem, hogy node táblában annál a tartalomnál amit fordítottam a tnid mezőbe belekerült a NID-je a tartalomnak, de nem csak amögött, hanem a lefordítás által létrehozott új NID-ű tartalom mögött is szerepel!

Ez lesz nekem az összekötő kapocs és így már lazán meg tudom írni a lekérdezést amiből visszakapom az ő párját!

Tudom, hogy ez nem szép dolog :(
De nem értem, hogy miért
- a smink saját én meg nem adok ki frissítést :) (ha meg igen akkor úgyis a jelenlegit javítom, tehát az az alap)
- a lekérdezésemben nem lesz hiba

Nem tudom milyen hátrányai vannak még!
De azt sem igazán, hogy hogyan lehetne kiszedni, vagy modulnak csinálni?
(A drupal specifikus dolgokat még szoknom kell!)

0
0
Paal képe

Még mindig nem adtál értelmes indokot arra, hogy mit akarsz ezzel a gányolással megoldani?

Ha nem is mered a Drupal rendszert, akkor miért nem írod meg pontosan mit szeretnél, hátha valaki mégis tud adni valamilyen jó/jobb megoldást?

0
0

--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan

nevergone képe

Attól tartok, még nincs kellő tapasztalatod a Drupallal történő fejlesztés terén, ez azért más személetet követel, mintha "natúr" PHP-vel dolgozna az ember

mert sql lekérdezés lesz és szerintem sminkbe fogom tenni (mert most hova máshova???)

Mondjuk modulba, ahol annak a helye van, és a modul által összeállított kimenetet használod a sminkben. Vagy legutolsó esetben preprocessben, de annál "kijjebb" (p. tpl.php fájlok) semmiképpen.

De azt sem igazán, hogy hogyan lehetne kiszedni, vagy modulnak csinálni?
(A drupal specifikus dolgokat még szoknom kell!)

Szerintem itt kellene kezdened, meg a Drupal API környékén.

Igazából sokat segítene, ha pontosan tudnánk, hogy mit szeretnél elérni és miért, mert ennek megfelelően jobban tudnánk segíteni is.

0
0
barna89 képe

Köszi!
Tényleg nincs még fejlesztés terén tapasztalatom, de ugyanakkor ötleteim szoktak lenni :)
Hamarosan neki is látok tanulmányozni amit küldtél!

Van egy nézetem oldalt és abban vannak a teaser-ek!
De ezek nem a hagyományos cím+bevezető(első pár mondat), hanem több db kép.
(fotó emberek fejéről mert a tartalom ő "életrajzuk")
Ha rá kattintasz egy ember képére oldalt akkor behozza a szöveget róla.

A probléma, hogy nem szeretnék új nézetet csinálni az angol oldalra és azt sem, hogy a kis képet amin a fejük van újra fel kelljen nekik tölteni, ezért alkalmaznám ezt a lekérdezéses megoldást!

A linkelést egyébként is a sminkben van megoldva, most csak annyiban változna, hogy bele kerül a lekérdezés ha az oldal angol, ami visszaadja az angol tartalom NID-jét és stringben összerakom.

0
0
dj képe

miért kellene külön nézetet létrehoznod az angol tartalomra. Amit akarsz, egy sima view-ban össze tudod kattintgatni.

0
0

Üdv!
Dudás József

aries képe

  1. Elmondom, hogy a tnid-be nem a lefordított fordított tartalom azonosítója van letárolva.
  2. A Drupal egy rendszer, ennek a rendszernek pedig van egy előírása, ami mentén fejleszteni, kiegészíteni lehet. Ez nem jelenti azt, hogy másképp nem lehet, hanem ez a melegen ajánlott. Ne kérdezd, hogy miért, ha nem jöttél rá magadtól (ezek szerint szoftverfejlesztési alapismereteid hiányosak), csak tegyél úgy, ahogy le van írva és sokkal egyszerűbb lesz az életed.
0
0
barna89 képe

1. Hát utánanézegettem, hogy akkor mi is az a tnid de nem találtam más választ csak amit eddig is gondoltam róla azaz a "kapocs" az eredeti tartalom és a fordítás között.
Ezt hol tudom kideríteni, hogy akkor most mi??? Mármint ha nem az akkor micsoda a tnid?
Futtattam néhány lekérdezést phpmyadmin-ban és tökéletesen visszaadta pl. az angolra fordított tartalom nid-jét a magyar tartalom nid-jéből. (Minden esetben!)
Ezért sem értem, hogy mi vele a baj, vagy vannak helyzetek amikor nem menne?

2. Ezzel egyetértek! És mint már írtam ráhajtok a modulos dolgokra!

0
0
aries képe

Ez véletlen. A tnid értéke egy folyamatosan növekvő sorozat, ha van megfelelés minden tartalomra a tnid és a nid között, aza véletlen műve. Annyit jelent, hogy ha két vagy több tartalom egymásnak fordításai, akkor a tnid értékük megegyezik. De semmi többet nem jelent.

0
0
dj képe

A tnid tartalmazza a forrás node idjét ( nid ) azoknál a tartalmaknál amiknél a fordítás támogatás engedélyezett és így lettek lefordítva. Amíg az ilyen tartalom nincs lefordítva addig az értéke 0.

0
0

Üdv!
Dudás József

pp képe

barna89 és dj az aki szerintem jól tudja.
Ha megnézzük a translation.modul fordítását szerintem ez egyértelmű lesz.

http://api.drupal.org/api/drupal/modules--translation--translation.modul...

a fájl eleje:

 *   The node table stores the values used by this module:
 *    - 'tnid' is the translation set id, which equals the node id
 *      of the source post.

Ez szó szerint az amit barna89 írt.
Majd a kódban, ha hibás vagy elavult lenne a megjegyzés rész:

      if ($node->tnid == $node->nid) {
        // This is the source node of the translation

pp

0
0
Pasqualle képe

csak D5-ben volt a tnid novekvo sorozat, D6-ban mar a forras nid-je..

0
0
aries képe

Mindig tanul az ember...

Ebben az esetben viszont bug van (volt?) valahol valamelyik kiegészítő modulban, van 3 teljesen eltérő, többnyelvű D6 honlap amit fejlesztek/karbantartok és egyiknél sincs összefüggés a forrás nid és a tnid között, pedig igazatok van.

0
0
dj képe

a tartalomtípusnál nincs engedélyezve a fordítás támogatás, csak a több nyelv.

0
0

Üdv!
Dudás József

Pasqualle képe

a korai i18n beta szakaszban nem volt jo a tnid D5-D6 upgrade, de elmeletileg kesobb javitva lett http://drupal.org/node/260626
ugy emlekszem a translation_overview modul megzavarodik ha a tnid nem a forras nid..

0
0
Paal képe

Sokat gondolkoztam azon, hogy mi lehet az a szöveg angolul és magyarul is u.az. Te tudsz ilyet?

Mert szerintem amit te szeretnél annak semmi értelme:
hu/hirek
en/hirek

Ilyennek már inkább:
hu/hirek
en/news

Szerinted?

0
0

--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan

barna89 képe

(ide akartam rakni az előzőt írást csak elnéztem) boccs!

0
0
Pasqualle képe

kapcsold be a path modult es mindket tartalomnak add ugyanazt az utvonal alnevet

igy:
en/news
hu/news
de/news

mind azonos utvonalon lesz, csak az elotag mas..

0
0
dj képe

ha be vannak állítva a nyelvnél. Elég mindegyiknél ugyanazt a nevet megadni útvonalnak.

0
0

Üdv!
Dudás József

barna89 képe

ez tetszik, habár akkor kénytelen lennék minden új tartalmat kézzel path-olni :(

0
0
pp képe

Ha sminkben tudsz gányolni akkor már mennyi időbe telik összepattintani egy kis scriptet ami ezt megcsinálja neked??? Semennyi. Miért ragaszkodsz a teljesen hibás rossz és gány megoldásodhoz, mely hosszú távon egy karbantarthatatlan, kusza és átláthatatlan rendszert eredményez?

Persze ha tanulni akarsz, akkor hajrá! Kemény utat választottál, tisztellek érte. :D

pp

0
0
Boobaa képe

Szerintem nem fog menni - bár most nem próbáltam ki. (Hint: a nyelvi előtagot levágja az i18n, így csak a „news” rész marad meg, mire dolgozni kezdene vele a path modul - ha jól emlékszem.)

0
0
aboros képe

szerintem se fog menni ez.

meg nincs is semmi értelme, ahogy az egész szálnak nincs túl sok. :)
(a sminkbe van téve a link ami a views sorait a tartalmakra irányítja??? ez nem egy jelölőnégyzet a mező beállításainál?)

0
0

-
clear: both;

Pasqualle képe

de ez mukodik. Ez mar core funkcio nem az i18n resze. Az alnev nyelvenkent egyedi, nem globalisan. (Persze D6-rol van szo, D5-ben globalisan egyedi az alnev)

0
0
Boobaa képe

Végigolvastam, a kommenteket is. Hát...

1. Az oldalt (blokkban?) levő nézetedbe tegyél még egy szűrőt, hogy csak azon tartalmakat jelenítse meg, amelyek nyelve az oldal aktuális nyelve.

2. Kapcsold be a nyelvváltó blokkot, és használd.

Egy képekkel is rendelkező tartalom fordításakor a képeket nem kell újra feltölteni, lévén a rendszer eleve úgy adja fel a tartalombeküldő űrlapot, hogy az már ki van töltve az eredeti nyelvű adatokkal (képekkel, szövegekkel, akármivel). Neked csak azt kell megváltoztatni, ami a lefordított tartalomban nem ugyanaz kéne legyen, mint az eredeti fordítatlanban.

HTH

0
0
barna89 képe

Mennyire igazad van!
Teljesen kiment a fejemből, hogy létezik nyelv szerinti szűrés is :D
ez lesz a megoldás! Köszönöm!
/Habár én mindig hajlok a "kemény úr" irányába de csak azért mert jó érzés, ha írok egy kódot és az szépen azt csinálja amit szeretnék :)/
Köszönöm mindenkinek, megnézem, tényleg megy-e (de biztos)!

0
0
nevergone képe

mert jó érzés, ha írok egy kódot és az szépen azt csinálja amit szeretnék :)

Ha jól csinálod, a Drupal filozófiája és szabályai szerint viszed véghez. Ellenben csak idegeskedés és hajtépés, nem csak neked.

0
0
barna89 képe

Igazából sok mindent nem tudok a Drupal szabályai szerint csinálni, mert még nem ismerem a szabályokat, de ez változni fog! Rajta leszek!

0
0