Sziasztok,
egy újabb érdekes témában kérném segítségeteket.
Milyen formában oldható meg az, ha az alábbit szeretném:
Van egy domainem, mondjuk egyszerűség kedvéért domain.hu.
Ez alatt a domain alatt van 5 témával foglalkozó oldal, viszont a felhasználók, fórumok és néhány tartalom is közös.
Van egy plusz oldal, ami a az összesített tartalmakat jeleníti meg.
A témák oldalait url szerint szeretném megkülönböztetni, azaz ha beírom, hogy domain.hu/tema1, akkor a tema1 oldal címlapja jöjjön be, és onnan navigálva csak a tema1-nek megfelelő oldalak jöjjenek be. A nézeteket, tartalmakat már megcsináltam, és külön elérve azokat látom, viszont azt szeretném megoldani, amit fentebb is írtam, hogy ha beírom a domain.hu-t, akkor a gyűjtő címoldalt lássam, onnan navigálva mindig a gyűjtő oldalak jelenjenek meg, és az url-ben mindig domain.hu marad, viszont amennyiben rákattintok a bűvös téma1 gombra, akkor a téma1 címoldalát lássam a domain.hu/tema1 címen, és onnan navigálva mindenhol a téma1 oldalakhoz tudjak navigálni, és maradjon is ott a domain.hu/tema1 cím. Azért kéne hogy ott maradjon, mert sminket a domain figyelésével választom. Odáig eljutottam, hogy minden oldal címlapja között tudok navigálni, mert a page.tpl.php-ban figyelem az url-t, és ha tema1-et látok a domain.hu után, akkor a hozzá tartozó sminket hívom meg, ha a tema2-őt, akkor értelemszerűen a hozzátartozót. A blokkokat is url szerint rendelem bizonyos oldalakhoz, tehát ha van egy blokkom, amit csak akkor akarok hogy látszódjon, ha domain.hu/tema1...link van, akkor beírom, hogy csak tema1 és tema1/* -oldalakon látszódjon.
Ez a probléma nagyon kifogott rajtam, de remélem Közületek már valaki találkozott már hasonlóval.
Krisz
Taxonomy Theme
Csak a lényeget nem írtad le: ez az 5 téma 5 aldomain-en van? Multisite? Megosztott táblák? Vagy ez csak egy normál Drupal webhely, ahol szeretnéd URL alapján cserélgetni a sminket? Ha ez utóbbi, akkor a Taxonomy Theme modul lesz a barátod.
Edit, köszönm a választ, részletezem
Szia Edit,
köszönöm a választ. Alább részletezem a dolgot, azaz mit is szeretnék elérni valójában.
Van egy nagy site, és ez a site 6 db alwebhelyből áll. 5 webhely 5 témával foglalkozik, és a 6. webhely megjeleníti mind az 5 webhely tartalmát. Még nem tudom, hogy aldomaint használjak(tema1.domain.hu, tema2.domain.hu, stb...), vagy csak aliast (www.domain.hu/tema1, www.domain.hu/tema2, stb...) a megvalósításhoz. Ebben várnám a segítséget.
Az, hogy multisite legyen-e az oldal, és legyenek megosztott táblák, avagy normál Drupal alapú webhely, és csak sminket cserélgessek, megint nem tudom.
A webhely lényege: 5 témával foglalkozó oldal + 1 olyan oldal, ami összesíti az utóbbi 5 oldal tartalmát, tehát minden megjelenik ezen, ami az utóbbi 5 oldalon is. Mind a 6 webhely tetején ott a 6 db gomb, melyekkel át tudok jutni a kívánt webhelyre, és ott csak a webhely témájához rendelt tartalmat és designt látom.
Az 5 oldal között egy regisztrált tag szabadon átjárhat, nem kell neki újra regisztrálnia vagy belépnie.
Az 5 oldal között oszthatok meg tartalmat, azaz ha tema1-ben vagy egy olyan tartalom, ami tema2-re is vonatkozik, akkor mind a 2 webhelyen megjelenik.
Minden oldalnak szinte azonos a sminkje, kivéve 2 dolgot. Egy css-beli szín kód tér el, illetve a menüpontok.
Jelenleg az egészet egy webhelyen próbáltam megoldani, egy sminkkel, minden témának külön címlappal, az oldalakra views-al összerántva azokat a tartalmakat, amiket taxonomyval jelöltem, és egy témához tartoznak (pl.:témák - téma1, téma2, stb...).
Ezzel a megoldással az volt a gondom, hogy 5 webhely oldalait aliassal (www.domain.hu/tema1, www.domain.hu/tema2, stb...) próbáltam figyelni, és az aliasokhoz rendelni a tartalmat, de ez elég bonyolultnak tűnt. Próbáltam pathauto-t kötni a tartalmakhoz, hogy a tartalomhoz rendelt téma szerint kreáljon egy url-t, de itt az volt a gond, mi van akkor, ha egy tartalom több témához is tartozik. Gondolkoztam a multisite ötletével, de sajnos annak megvalósításában segítség kéne, nem tudom merre induljak, pedig ahogy olvasgattam az irodalmat hozzá, talán az lehet az én utam. Gyanítom van sokkal jobb megoldás is erre, mint amerre én indultam, ugye?
Köszi - Krisz
nem próbáltam, de így indulnék
1. Létrehozol egy tartalomtípust, ami csak a tartalmak törzsét jeleníti meg (vagy ha szeretnéd, hogy a 6 oldalad tetején ott legyen a cím, akkor azt is). Ezt a node-tartalomtipus.tpl.php fájlban tudod megoldani.
2. Létrehozod a 6 db oldalt ezzel a tartalomtípussal, a törzsbe pedig beteszed a Views által készített blokkokat valamilyen módszerrel (PHP kóddal behúzod, vagy Insert Views modul – nagyon kényelmes –, vagy ha azonos felépítésűek ezek az oldalak, akkor lehet hagyományos módon is, tehát régiókat hozol létre a template.php-ben, aztán a blokk beállítási oldalon útvonaltól függően beteszed a Views blokkokat a régiókba – én az Insert View-t használom mindenhol).
3. Felteszed a Pathauto modult, és útvonal álneveket generálsz.
4. Létrehozol 6 menüt, ezeket útvonal álnévtől függően megjeleníted, ill. elrejted.
5. A page.tpl.php-ben teszel egy útvonaltól függő egyedi id-t a body elemre, és annak segítségével tudod megjeleníteni a különböző oldalakon az egyedi CSS-t. Ha nem csak a CSS különbözik a szekcióidban, hanem más HTML kimenet is kell, akkor Taxonomy Theme (megtévesztő nevű modul, nem csak taxonómia alapján dolgozik, hanem útvonal álnevek alapján is).
6. Ha egy tartalom 2 kategóriában is szerepel, akkor a tartalomra mutató link végére teszel egy node id azonosítót, és Views modullal jeleníted meg: http://honlapneve.hu/szekcio1/1234. Erre a Views lekéri a nid=1234 tartalmat, és – vélhetően, nem próbáltam – az 1-es szekció sminkjével fog megjelenni.
az én gondolatom.
Szia!
Nem tudom milyen szinten állsz a PHP-vel. Amennyiben ismered, van egy másuk út is amit te a drupallal követhetsz. Van egy mintám, igaz nincs kidolgozva teljesen, de úgy működik ahogy te szeretnéd (persze csak akkor, ha jól értelmeztem a leírtakat).
a példa:
http://nj.nyuszis.hu
http://drupal.nyuszis.hu
igaz az utóbbin nem jelenik meg a node, de ha belépek tudom szerkeszteni. A drupal kezdetűn a bejegyzések az nj bejegyzései.
Ezt pedig úgy értem el, hogy apache-ba külön könyvtárba jelenítem meg az aldomaint, majd ebben a könyvtárban az index.php-ben beinclude-olom a bootstrap.inc fájlt, majd meghívom a
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
függvényt, ezután már a custom_theme globális vátozó értékadásával sminket is válthatok és programból döntöm el melyik node-ot akarom megjeleníteni.
üdv
nYuSZi
Edit segített, de egy kis probléma adódott még
Sziasztok,
köszönöm a segítséget mindenkinek. Edit ajánlása, miszerint a template.tpl.php-ba ezt a kódot tegyem:
és a body classnak ezt írjam:
<?php if ($body_class) {print $body_class;} ?>
bevállt, annyi kivétellel, hogy ha az url-em nem csak www.valami.hu/akarmi, hanem www.valami.hu/akarmi/cikk1, akkor a cikk1 classt akarja használni az akarmi class helyett. Azaz: hogyan tudom ezt a kódot átalakítani, hogy a domain után csak az első / jelig figyelje az URL-t?
Köszi - Krisz
tömb index 0-tól indul
$body_class[0]
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
PP, köszi
PP, köszi. Most megbuktam programozásból :o(
Krisz
Senki nem értékel téged!
Még kettes azért lehetsz! :D
Félretéve a tréfát, máskor igyekezz megtalálni mi lehet ebben segíthet neked a következő:
drupal_set_message('<pre>'.print_r($valtozo,true).'</pre>');
pp
(miért van az, hogy ha azt mondom egy megoldásról, hogy rossz akkor az emberek azt hiszik őket értékelem, holott leírom, hogy a megoldás a hibás? Számos hibás, vagy nem megfelelő megoldást adok én is, ha leírják a jobbat igyekszem tanulni belőle. ennyi)
Palócz István
https://palocz.hu | https://tanarurkerem.hu
i18n
Mikor Skype-on beszéltünk, ezt egy olyan webhely template.php-jéből másoltam ki gyorsan, ahol fent van az i18n modul, ami az URL-be mindig beilleszti a nyelv jelzését: http://valami.hu/hu/utvonal
Egyébként én is hajlamos vagyok 1-től kezdeni a számolást, pedig láttam már pár tömböt életemben :) A lényeg, hogy az ember tudja, mik a típushibái, és ha nem megy, azonnal tudja, mit kell ellenőrizni.
Klasszikus vicc ugye
Amikor a matematikus és az informatikus közösen akar felrakni egy polcot, de mindig ferde lesz. Mindegyik alulról a 10. lyukba teszi a polctartó szeget csak éppen a matematikus úgy számol, hogy 1, 2, 3 az informatikus meg úgy, hogy 0,1,2 :D
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Ez nagyszerű :)
Ez nagyszerű volt PP. Egyébként remélem tanultan a dologból, mert ez nem az első, hogy ezt a hibát vétem :o( Edith nagyon kedves volt, segítségemre sietett a kóddal, én meg nem találtam benne a megoldást. A kód tökéletes, teljesen jól működik :o) Kicsit tovább is fejlesztettem arra az esetre, ha az URL nem tartalmazza az egyik kategóriát sem.
Köszönet mégegyszer mindenkinek ;o)
Krisz