Mező megjelenítésének állítása node-onként?

thamas képe

A CCK mezőknél be lehet állítani, hogy miként jelenjenek meg bevezető nézetben illetve teljes tartalom nézetben. Így pl. imagefield (és imagecache) esetén beállíthatom, hogy bevezetőben egy kis kép látszódjon, teljes nézetben meg egy nagy. A beállítás azonban az adott tartalomtípus minden node-jára érvnyes.

Mi a teendő, ha szeretnék lehetőséget, hogy felülbíráljam az eredeti beállítást és mondjuk egy-egy node esetén nagy kép helyett kicsit szeretnék teljes nézetben is, vagy mondjuk nem is szeretném megjeleníteni a bevezetőben látható képet?

Készíthetek pl. két kép mezőt és az egyiknél a teljes nézetet beállítom "nagykép"-re a másiknál pedig teljes nézetben nem jelenítem meg a képet. Aztán használom azt a mezőt, amelyik megjelenítési módja megfelel.

De gondolom létezik ennél elegánsabb megoldás is. Így van?

(Természetesen használtam a keresőt és találtam is ilyeneket:
http://drupal.hu/forum/drupal-6-node-typetplphp-cck
http://drupal.hu/forum/imagefield-imagecache-pseudo-filter
de az elsőről nem tudtam eldönteni, ez érinti-e az én témámat, a második pedig többet csinál mint ami nekem kell...)

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
aboros képe

vegyél fel a választási lehetőségeidnek megfelelő mezőket a tartalom típusba és aztán az előfeldolgozóban azok alapján manipuláljad a $content.

valószínűleg úgy lesz a legegyszerűbb, ha a képmezőt a cckban rejtettre állítod, mert akkor nem kell újraépítened az egész $content, ha a jóember nem akarja a képet full nézetben. hozzáadni ugyanis sokkal egyszerűbb a $content -hez, mint elvenni belőle (tekintve, hogy az ugye már html..)

(amúgy szerintem azzal se lenne semmi baj, ha két imagefield meződ lenne, csak az nem valami rugalmas..)

kéne egy checkbox: "Mutasd a képet teljes tartalom nézetben is"
meg egy lehulló lista: "Használd hozzá ezt az imagecache sablont:"

aztán az előfeldolgozóban:
$node = $vars['node'];
if (mutasd a képet teljes nézetben is && $vars['page'] != 0) {
$original = $node->field_a_te_képmeződ[0]['filepath'];
$preset = $node->field használd hozzá ezt az imagecache sablont['value'] :)
$image = theme('imagecache', $preset, $original);
$options = array(
'html' => TRUE,
'attributes' => array(
'rel' => 'lightbox['.$vars['nid'].']'
)
);
$vars['content'] = l($image, $original, $options) . $vars['content'];
}

bocs, nagyon sietek ezért nem írok teljesen pontos megoldást, de az elv látszik szépen.

0
0

-
clear: both;

thamas képe

Gondoltam, hogy Nálad lesz a megoldás! ;o)

Nagyon köszönöm!

0
0

Üdvözlettel:
Hajas Tamás