Drupal 6: Néhány oldalnak egyedi háttér

Modessa képe

A kérdésem az lenne hogy, néhány oldalnak egyedi hátteret szeretnék csinálni és nem tudom hogyan tehetném meg.

A Sminkek témakörben már adtak erre egy választ:

A sminkben (page.tpl.php fájlban) a body elemre tehetsz egyéni azonosítót vagy osztályt. Mondjuk így:

<body class="body_<?php print arg(1); ?>">
...
</body>

Az arg(1) kiszedi az URL-ből a domain utáni második elemet, tehát www.valami.hu/node/25 eseten ezt kapod:

<body class="body_25">
...
</body>

A .body_25 stílusosztály hátterét pedig megadhatod a CSS fájlban.

Nos megnéztem az én sminkemnél ezt a bizonyos page.tpl.php file-t és a következőt találtam:

 <body class="<?php print $body_classes; ?>">

Így ránézésre ha ezt megbolygatom, akkor kidobhatom a jelenlegi css file-omat.
Persze lehet félreértem a kódot.

Szóval mit javasoltok arra, hogy néhány oldalnak egyedi hátteret csinálhassak?
Előre is köszi a segítséget!

Drupal verzió: 
Fórum: 
Désiré képe

...csak kicsit másképp!

most ez van a page.tpl.php-ban:
<body class="<?php print $body_classes; ?>">

változtasd erre:
<body class="<?php print $body_classes; ?> o_<?php print arg(1); ?>">

és akkor az oldaladnak lesz még egy olyan osztálya, hogy "o_25" (a Te példád esetén),
és eszerint tudod sminkelni.

0
0

- - -
Juhász Márton

http://juhaszmarton.hu

Modessa képe

Köszönöm a választ.

Kipróbáltam, egyenlőre csak a page.tpl.php file-t módosítottam és ezt az üzenetet kaptam:
(A CSS-t még nem módosítottam)

user warning: Duplicate entry '5099' for key 1 query: INSERT INTO i18n_strings (lid, type, objectid, property) VALUES(5099, 'item', 601, 'title') in /home/***/web/sites/all/modules/i18n/i18nstrings/i18nstrings.module on line 305.

A page.tpl.php fileban erre lett módosítás:
<body class="<?php print $body_classes; ?> o_<?php print arg(1); ?>">

Mit kell tegyek?

0
0
Modessa képe

Ez lehet valami mástól lehetett, azt hittem a módosítás okozta.
Azóta nem jelent meg ez az üzenet.
Elnézést.

0
0
Pasqualle képe

elfer oda tobb is

<body class="<?php print $body_classes; print ' body_'. arg(1); ?>"> 
0
0
Modessa képe

Kipróbáltam ezzel a page.tpl.php kóddal:
<body class="<?php print $body_classes; print ' body_'. arg(1); ?>">

A CSS-t sehogy sem sikerül beállítani.

Egy példa.
Az összes oldal hátterének az átállítása továbbra is megy CSS-ből így:

#content {
  background:....;
}

Én így próbáltam a node/21 beállítását:

#content body_21{
  background: .....;
}

Már több verziót is kipróbáltam de sehogy sem akar működni.
Mit csinálok rosszul?

0
0
aboros képe

a kód amit a page.tpl.php -ba raksz, például a 42 -es node -nál ilyen html -t eredményez:

<body class="body_42">

persze még egyéb classok is lesznek ott, de most az nem számít...

azt a #content -et akarod célozni, ami olyan body -n belül van, aminek body_42 class -a is van.
azt így kell csinálni:

body.body_42 #content {
}
0
0

-
clear: both;

Modessa képe

Nagyon köszönöm a helpet, működik!
Legalább 5 sörrel már biztosan lógok neked! :)

0
0
gergely képe

ez zen-ben default benne van, erdemes azzal fejleszteni :)

0
0

---
Tévedni mindenkinek szabad, csak a mérnöknek észre kell vennie.