icon-flag in news-ausgabe setzen
Eingetragen von headkit (514)
am 09.12.2010 - 16:59 Uhr in
am 09.12.2010 - 16:59 Uhr in
hi leute!
mittels views möchte ich eine nodeauflistung ausgeben und dann pro node die möglichkeit ahben, ein icon ("new") hinzuzuschalten.
ich dachte mir, die per taxonomie zu lösen und wollte hier die taxonomiegruppe "flags" und die vokabularien "new" und "top" erstellen.
in der view lasse ich mir diese felder dann ausgeben aber nicht anzeigen.
jetzt müsste ich ein views-template entsprechend anpassen, um die DIV-klassen entsprechend zu beeinflussen. welches template nehm ich denn da am besten. das ist ja ein unglaublich riesiges und unübersichtliches objekt, das das ausgegeben wird...
oder gib es hier eine klügere und schnellere lösung?
danke!
- Anmelden oder Registrieren um Kommentare zu schreiben
Du kannst auch 2 CCK Felder
am 09.12.2010 - 17:08 Uhr
Du kannst auch 2 CCK Felder anlegen (wenn es nur new und top ist). Listenauswahlfelder die entweder new/top enthalten oder leer sind.
Im View kannst du die beide ausgeben. Die bekommen dann ja eine CSS Klasse die du stylen kannst. Du kannst "Hide if empty" aktivieren. Und mit CSS sowas machen:
.view-field-new {
text-indent: -999em;
display:block;
width: 30px;
height:15px;
background: transparent url(/pfad/zum/new/bild.png) scroll no-repeat 0 0;
}
» forward-media.de Drupal Entwicklung | Drupal Tutorials
auch ne idee -
am 09.12.2010 - 17:40 Uhr
auch ne idee - danke!
aaaaber, was ich noch nicht erwähnt hatte: ein weiterer weg, der mich interessiert ist folgender: meine nodes beinhalten jeweils ein cck-field LINK. nun möchte ich, dass, wenn dieser link in der node nicht ausgefüllt ist, ein weiteres icon anzeigen lassen...
wo bringe ich dann mein if (!empty($...)) unter...?
Es gibt mehrere
am 09.12.2010 - 17:55 Uhr
Es gibt mehrere Möglichkeiten, die leider, je besser sie sind (technisch gesehen), auch komplizierter werden ;-)
Das einfachste ist du machst es "quick and dirty". Du lässt dir im View die verwendeten Template Dateien anzeigen. Dort werden auch verchiedene Namen für Dateien vorgeschlagen mit denen du diese Template Dateien in deinem Theme Ordner überschreiben kannst. Die jeweils aktive Datei ist FETT.
Du lässt dir einfach den Inhalt der entsprechenden Datei anzeigen und erstellst eine neue mit einem neuen Namen (aus den Vorschlägen). In allen steht etwas Dokumentation drin. Du kannst ja mit print_r() oder falls devel installiert ist dpm() probieren was dir diese Dateien ermöglichen.
Besser aber komplizerter ist, wenn du dir die entsprechende preprocess Funktion suchst, z.B. http://api.lullabot.com/template_preprocess_views_view
Da kannst du den View vor der Ausgabe verändern. Das ist nur eine Richtung. Genau erklären kann ich auf Anhieb auch nicht was du wo machen musst :)
» forward-media.de Drupal Entwicklung | Drupal Tutorials
nr.1 war schon klar - muss
am 10.12.2010 - 09:43 Uhr
nr.1 war schon klar - muss ich eben tief wühlen. dpm() kannte ich noch nicht.
nr. 2 guck ich mir gleich mal an. klingt interessant.
danke!
super, habs jetzt so gelöst:
am 10.12.2010 - 10:36 Uhr
super, habs jetzt so gelöst: im template views-view-fields.tpl.php (bzw. einem entsprechend umbenannten) prüfe ich vor der feldausgabe einfach nach, ob es sich um den lnk handelt und gebe dann etwas anderes aus:
<?php if($field->class == 'field-link-the-url')
{
if($field->raw == '') print '<div class="icon_new"></div>';
...
?>
'war wohl gestern schon abgearbeitet...