Views Page - ohne Titel?
Eingetragen von guldi (78)
am 01.10.2007 - 13:22 Uhr in
am 01.10.2007 - 13:22 Uhr in
Hi
Ich habe mittels views eine Seite definiert, welche den neusten Node eines bestimmten Inhaltstyps komplett ausgibt.
Dieser Inhaltstyp hat aber an erster Stelle ein Bild, mittels CCK und CCK-Templates bestimmt.
Bei der Ausgabe der views-Seite schreibt views aber den Titel des Nodes über das Bild...
Und das passt natürlich nicht.
Kann mir jemand einen Tipp geben, wie ich den wegkriege?
Eigentlich steht ja auf der views-edit page "The title that be shown at the top of the view. May be blank.".
Das habe ich natürlich versucht und leer gelassen, aber der (node) Titel erscheint trotzdem.
- Anmelden oder Registrieren um Kommentare zu schreiben
Contemplate oder ein
am 01.10.2007 - 15:01 Uhr
Contemplate
oder ein "echtes" Template: "node_dein-inhaltstyp.tpl.php".
In diesem Template, sieht mit Basis-Code bei 5.x so aus,
<?php phptemplate_comment_wrapper(NULL, $node->type); ?>
<div id="node-<?php print $node->nid; ?>" class="node<?php if ($sticky) { print ' sticky'; } ?><?php if (!$status) { print ' node-unpublished'; } ?>">
<?php print $picture ?>
<?php if ($page == 0): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
<?php if ($submitted): ?>
<span class="submitted"><?php print t('!date — !username', array('!username' => theme('username', $node), '!date' => format_date($node->created))); ?></span>
<?php endif; ?>
<div class="content">
<?php print $content ?>
</div>
<div class="clear-block clear">
<div class="meta">
<?php if ($taxonomy): ?>
<div class="terms"><?php print $terms ?></div>
<?php endif;?>
</div>
<?php if ($links): ?>
<div class="links"><?php print $links; ?></div>
<?php endif; ?>
</div>
</div>
schmeisse einfach
<?php if ($page == 0): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
weg. Das sollte es sein.
Was unklar bleibt bei Deiner Fragestellung. Gibt der View gleich den Haupttext aus oder erst den Teaser aus?
Denn
if ($page == 0)
ist der Teaser. Undif ($page == 1)
ist der Hauptext.Damit haette wohl der Haupttext noch den Titel, da der nicht mehr ausgegebene Teil den Titel als Link beseitigt. Bin mir Jetz nicht im Klaren, ob die Variable $content den Titel enthaelt.
Klappt so natuerlich erst Mal nur wenn sich Dein View auf einen separaten Inhaltstypen bezieht - wegen "node_dein-inhaltstyp.tpl.php".
Wenn es mehrere verschiedene Inhaltstypen sind auf die sich Dein View bezieht dann koennte man auch die in Frage kommenden Inhaltstypen in der "node.tpl.php" abfragen und in Abhaengigkeit der Antworten die Ausgabe des Titel in der "node.tpl.php" wegschmeissen.
Zum Thema Templates fuer Nodes gibt es genug Stoff zum Lesen auch auf Drupalcenter.
PS
Man kann doch den View auch so ausgeben, dass nicht der Teaser oder Haupttext ausgeben wird sondern einzelne Teile eines Node. Die da z. Bsp. waeren, als Felder, Node: Titel oder Node: Textkoerper oder Node: Name des Authors oder Kommentar: Anzahl usw.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Hmmm Ich glaube, du hast
am 01.10.2007 - 15:25 Uhr
Hmmm
Ich glaube, du hast mich falsch verstanden.
Dass der Titel bei meinem Nodetype nicht ausgegeben wird, habe ich mittels contemplates bereits erreicht.
Nun ist aber das Problem, dass views den Titel trotzdem darüber schreibt, wenn es die Seite ausgibt. Und das obwohl ich das Feld "Titel" in der views-bearbeitung leer gelassen habe.
gruess luusbueb
www.gocreative.ch
gruess guldi
luusbueb wrote: Ich glaube,
am 01.10.2007 - 16:03 Uhr
Ich glaube, du hast mich falsch verstanden.
Dass der Titel bei meinem Nodetype nicht ausgegeben wird, habe ich mittels contemplates bereits erreicht.
Nun ist aber das Problem, dass views den Titel trotzdem darüber schreibt, wenn es die Seite ausgibt. Und das obwohl ich das Feld "Titel" in der views-bearbeitung leer gelassen habe.
Verstehe ich immer noch nicht.
Wie stellst Du fest das Contemplate den Nodetitel nicht zeigt wenn ihn der View zeigt? Im Moment siehst Du den Titel ja. Oder ist der Titel weg wenn Du die Node direkt anzeigst, nicht mit dem View?
Du redest vom Node-Titel? Nicht vom Label ueber dem Bild?
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Wenn Du in einer View die
am 01.10.2007 - 16:12 Uhr
Wenn Du in einer View die komplette Node ausgeben willst, dann kannst Du eine Template-Datei für diesen Inhaltstype erstellen und in diesem das Design bestimmen:
Wenn du das Theme Garland benutzt:
1. Lege in "drupal-5.2\themes\garland\" eine neue Datei an.
2. Benenne die Datei nach dem Muster "node-inhaltstypename.tpl.php" um.
3. In dieser Datei kannst Du das Design individuell bestimmen. Dabei kann Dir das Modul Content Templates helfen. Es zeigt Dir, welche Variablen Du benutzen kannst. Als Vorlage kannst Du die Datei "node.tpl.php" benutzen.
Ich glaube, die Dir gesuchte
am 01.10.2007 - 16:30 Uhr
Ich glaube, die Dir gesuchte Überschrift befindet sich in der page.tpl.php Datei.
Ähnlich wie es oben bereits mit der node.tpl.php-Datei beschrieben wurde, kannst Du auch unterschiedlich Page-Templates benutzen und darin z.B. den Titel entfernen. Siehe hier: http://www.drupalcenter.de/handbuch/4284
--
bv - drupalcenter.de
Ich danke euch allen für
am 02.10.2007 - 06:33 Uhr
Ich danke euch allen für eure Hinweise.
Aber das Problem ist nicht die "normale" Nodetype Ausgabe. Die habe ich mittels CCK und contemplate perfekt hingekriegt. (Mit Bild an erster Stelle, kein Titel etc.)
Nur wenn ich diesen Nodetype via views ausgeben möchte, schreibt views den Titel. (Meines Erachtens noch bevor es den eigentlichen Node ausgibt, da
gruess luusbueb
www.gocreative.ch
gruess guldi
Hast Du das denn
am 02.10.2007 - 07:48 Uhr
Hast Du das denn ausprobiert, was ich beschrieben habe?
--
bv - drupalcenter.de
Nein, weil ich denke, dass
am 02.10.2007 - 09:34 Uhr
Nein, weil ich denke, dass das auch "nur" auf die Node-Ausgabe, nicht aber auf views bezieht.
Liege ich da falsch?
gruess luusbueb
www.gocreative.ch
gruess guldi
Zur Veranschaulichung
am 02.10.2007 - 09:37 Uhr
Hier der normale Node: http://drupal.myeurocamp.ch/node/3
Hier der Node via Views http://drupal.myeurocamp.ch/
gruess luusbueb
www.gocreative.ch
gruess guldi
luusbueb wrote: Nein, weil
am 02.10.2007 - 09:39 Uhr
Nein, weil ich denke, dass das auch "nur" auf die Node-Ausgabe, nicht aber auf views bezieht.
Liege ich da falsch?
Ich denke schon! Teste es doch einfach mal...
--
bv - drupalcenter.de
Ich hab's versucht, es hat
am 02.10.2007 - 09:56 Uhr
Ich hab's versucht, es hat nicht geklappt.
Hab aus page-startseite.tpl.php die Titel-Zeile entfernt und eine andere Teständerung vorgenommen.
Der views-Titel erscheint unentwegt, die Teständerung ist auch ersichtlich.
(Ausserdem finde ich die Lösung nicht gerade effizient, dass ich dann jede Änderung am Layout in mehreren page-nodetype.tpl.php Dateien vornehmen müsste... das ist aufwändig und Fehler anfällig. Aber natürlich trotzdem danke für den Hinweis! :) )
Andere Ideen?
Nochmal zur Veranschaulichung:
Hier der normale Node: http://drupal.myeurocamp.ch/node/3
Hier der Node via Views http://drupal.myeurocamp.ch/
gruess luusbueb
www.gocreative.ch
gruess guldi
Hmm also ich habe auch
am 02.10.2007 - 10:39 Uhr
Hmm also ich habe auch gerade eine Startseite mit views, ohne Titel erzeugt. Dazu habe ich als audgabe nicht den vollständigen node, sondern listenansicht ausgewählt.
Dann als einziges Feld den textkörper.
Dann noch im css file für die liste bullet, margin und padding entfernen, fertig.
Was mich aber interessieren würde, wie hast Du mit contemplate das bild vor den titel bekommen? Kannst Du für mich mal den contempate template code posten? Ich versuche auch inhalte vor den Titel zu bekommen, bekomme dann aber immer noch einen zusätzlichen Titel!
Welches Template verwendest Du?
florianr wrote: Hmm also
am 02.10.2007 - 11:00 Uhr
Hmm also ich habe auch gerade eine Startseite mit views, ohne Titel erzeugt. Dazu habe ich als audgabe nicht den vollständigen node, sondern listenansicht ausgewählt.
Dann als einziges Feld den textkörper.
Dann noch im css file für die liste bullet, margin und padding entfernen, fertig.
Das würde wahrscheinlich klappen..
Mein Problem: Ich habe ca. 10 Felder, welche ich dann anzeigen müsste... und wenn ich am Inhaltstyp eine Veränderung vornehme, was sehr wahrscheinlich ab und zu vorkommen wird, muss ich auch views anpassen... das ist mir wiederum zu aufwändig und vor allem Fehler anfällig... :(
Kannst Du für mich mal den contempate template code posten?
Klar, hier: http://drupal.myeurocamp.ch/contemplate.txt
Gibt es wirklich keine "saubere" Möglichkeit, den views-Titel abzuschalten?? :(
gruess luusbueb
www.gocreative.ch
gruess guldi
Also,der Code Deiner
am 02.10.2007 - 11:28 Uhr
Also,
der Code Deiner unerwünschten Überschrift sieht so aus als würde er einer node.tpl.php aus diesem Codebereich entstammen.
<?php if ($page == 0): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
Die Überschrift zeigt sich nur im Teaser, das ist genau das was Du mit der klickbaren Überschrift siehst.
<a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?>
Das wird auch so nur im Teaser gezeigt wegen
<?php if ($page == 0): ?>
Hast Du wirklich mal eine node-meinnodetype.tpl.php verwendet und diesen Code
<?php if ($page == 0): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
in dieser Templatedatei entfernt?
Erstelle doch einfach mal eine solche Templatedatei und mache das, unabhängig was Dir Contemplate zuflüstert!
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Hab jetzt die
am 02.10.2007 - 13:27 Uhr
Hab jetzt die node-startpage.tpl.php erstellt und die Anweisungen befolgt.
Das hat tatsächlich geklappt. Hätte nicht daran geglaubt, danke fürs nachhacken!! :)
gruess luusbueb
www.gocreative.ch
gruess guldi
geht auch ohne Template-Datei
am 02.10.2007 - 19:34 Uhr
Es gibt auch noch einen anderen Ansatzpunkt, ohne Template-Datei:
Diesen Code in der template.php einfügen. Wenn die Funktion bereits existiert entsprechend anpassen.
<?php
function _phptemplate_variables($hook, $vars = array()) {
switch ($hook) {
case 'page':
//titles are now ignored by specific node type when they are anomalous in the design
$vars['breadcrumb_title'] = $vars['title'];
if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if (in_array($node->type, array('startpage'))) {
$vars['title'] = '';
}
}
break;
}
return $vars;
}
?>
http://drupal.org/node/138910
Taggings für die Suche:
Nodetitel entfernen
Node Titel entfernen
Node ohne Titel
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.