Als Block auf meiner Homepage versuche ich Folgendes auszugeben:
<ul>
<li><a><img><p>Node 1</p></a></li>
<li><a>Node 2</a></li>
<li><a>Node 3</a></li>
<li><a>Node 4</a></li>
</ul>
wobei jedes <li> einen Knoten darstellt und das Bild / der Text von CCK-Feldern geliefert wird, die an jeden Knoten angehängt sind.
Derzeit verwende ich eine Blockansicht für die Ausgabe der Knoten 2 bis 4 und eine Anhangsansicht für die Darstellung des ersten Knotens, wie hier beschrieben: http://www.agileapproach.com/blog-entry/the-views2-attachment-display
Das Problem ist, dass meine Ausgabe eher so endet:
<div class="attachment attachment-before">
<div class="view view-homepage-news ..">
<div class="item-list">
<ul>
<li class="views-row ...">
<a><img><p>Node 1</p></a>
</li>
</ul>
</div>
</div> <!-- /.view -->
</div>
<div class="item-list">
<ul>
<li class="views-row ..."><a>Node 2</a></li>
<li class="views-row ..."><a>Node 3</a></li>
<li class="views-row ..."><a>Node 4</a></li>
</ul>
</div>
Ich kann diese Ausgabe wahrscheinlich für meinen Zweck biegen, aber es wird eine Menge Vorlagen und Konfiguration erfordern. Ich möchte auch vermeiden, CSS und / oder JavaScript zum Ändern der Ausgabe zu verwenden, es sei denn, dies ist meine einzige Option.
Was ist vor diesem Hintergrund der einfachste Weg, um die Ausgabe näher an das zu bringen, was ich brauche?
Bearbeiten: Hier ist ein grober PHP-Code, den ich im Customfield-PHP-Codefeld verwende (basierend auf Jeremy Frenchs Vorschlag: Hier ist der Code, den ich in meinem PHP-Code-Customfield verwende:
<?php
++$static;
if ($static == 1) {
$nd=node_load($data->nid);
$img_path = imagecache_create_path('news_image_thumbnail', $nd->field_image[0]['filepath']);
print '<a><img src="' . $img_path . '"><p>Node 1</p></a>';
} else {
print "<a>Node $static</a>";
}
?>
Ich persönlich verwende dazu Vorverarbeitungsfunktionen, etwa die folgenden:
quelle
Ich bin mir nicht sicher, ob ich Ihre Frage richtig verstehe, aber ich glaube, Sie könnten dafür das Modul Semantic Views verwenden . Wenn Sie den Stil unter Grundeinstellungen auf Semantische Ansichten festlegen, haben Sie unter den Einstellungen für Semantische Ansichten die Möglichkeit, ein "First-Class-Attribut" festzulegen, mit dessen Hilfe Sie das erste Listenelement in Ihrer Ansicht im Stil Ihres Themas ausrichten können. CSS-Datei.
quelle
Die einfachste Lösung ist eine benutzerdefinierte Vorlage. Es muss jedoch nicht viel Arbeit sein. Anhand der in der Ansichtsoberfläche verfügbaren Themeninformationen können Sie sehen, welche Vorlage Sie ändern müssen. Sie müssen lediglich Code hinzufügen, um die zusätzlichen Elemente für den ersten Knoten zu drucken. Ansichten durchlaufen jede Zeile und sollten daher einfach sein.
quelle