[gelöst] Blog-Übersichtsseite gleich wie /node themen
am 07.12.2009 - 20:31 Uhr in
Vielleicht ist dies mal wieder eine der typischen Dummy-Fragen... gut möglich. Ich frage einfach mal (Links setze ich, da es ggf. leichter nachzuvollziehen ist, wo das Problem liegt):
Auf meiner Website (www.hQuadr.at) habe ich schon seit längerem einen Blog. Nun aber habe ich Drupal6 neu installiert und auch ein anderes Theme genommen als früher (ich mache also quasi einen kompletten Neustart). Nun etwas konkreter:
Auf der Startseite ( /node ) werden ja bekanntlicherweise alle Beiträge aufgelistet, welche neu geschrieben wurden, sofern das entsprechende "Häkchen" gesetzt wurde. In meinem Blog-Summary (www.hquadr.at/blogs bzw. normalerweise /blog/1) werden die Beiträge anders dargestellt: mit einem weissen Hintergrund, welcher ja eigentlich nur für die einzelnen Blogeinträge so gedacht ist.
Wie bekomme ich es hin, dass die Blogeinträge gleich wie auf der Startseite gelistet werden? Brauche ich hierzu noch eine zusätzliche .tpl.php Datei oder wo beginne ich hier überhaupt zu suchen?
Vielleicht weiss ja einer von Euch rat ;-) Danke.
- Anmelden oder Registrieren um Kommentare zu schreiben

Hast Du in Deinem Theme 2
am 07.12.2009 - 20:47 Uhr
Hast Du in Deinem Theme 2 Templatefiles? page.tpl.php und page-front.tpl.php? Die Struktur der Seite wird unterschiedlich ausgegeben und das liegt am Theme, was ich nicht kenne.
Beste Grüße
Werner
hmm, es gibt nur eine
am 07.12.2009 - 21:05 Uhr
hmm, es gibt nur eine page.tpl.php, keine page-front.tpl.php.
vielleicht ist der Hinweis noch hilfreich, dass das Theme mit Artisteer (Version 2.3) erstellt wurde...?
Dann solltest Du mal die
am 07.12.2009 - 21:07 Uhr
Dann solltest Du mal die page.tpl.php analysieren, ob sich das Script bei der Frontpage anders verhält. Die Ausgabe ist jedenfall unterschiedlich und das liegt definitiv am Theme.
Beste Grüße
Werner
ja... in dieser Datei suche
am 07.12.2009 - 22:46 Uhr
ja... in dieser Datei suche ich auch gerade in diesem Moment, aber irgendwie werde ich daraus nicht schlau - zumindest finde ich die Ursache hierfür nicht... Ob es was bringt, wenn ich hier den Code der page.tpl.php datei mal poste?
EDIT: ich habe den Code mal gekürzt auf den Teil, der vermutlich relevant ist. Zumindest auf der Startseite wird der css-Style "art-Post-body" verwendet, um einen Beitrag zu definieren. Nun gibt es hier zwei "Definitionen" des Beitrags? Zumindest wird beim ersten Teil geprüft, ob es die Startseite ist ($is-front)...
Nur: was genau kann ich hier ändern, um den gewünschten Effekt herbei zu führen? Und wenn es die richtige Stelle im Code ist: wie müsste ich es umschreiben? Irgendwelche Vorschläge?
<?php if (($is_front) or ($node->nid) ): ?>
<?php if (!empty($breadcrumb) || !empty($tabs) || !empty($tabs2)): ?>
<div class="art-Post">
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<div class="art-PostContent">
<?php if (!empty($breadcrumb)) { echo $breadcrumb; } ?>
<?php if (!empty($tabs)) { echo $tabs.'<div class="cleared"></div>'; }; ?>
<?php if (!empty($tabs2)) { echo $tabs2.'<div class="cleared"></div>'; } ?>
</div>
<div class="cleared"></div>
</div>
</div>
</div>
<?php endif; ?>
<?php if (!empty($mission)) { echo '<div id="mission">'.$mission.'</div>'; }; ?>
<?php if (!empty($help)) { echo $help; } ?>
<?php if (!empty($messages)) { echo $messages; } ?>
<?php echo art_content_replace($content); ?>
<?php else: ?>
<div class="art-Post">
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<div class="art-PostContent">
<?php if (!empty($breadcrumb)) { echo $breadcrumb; } ?>
<?php if (!empty($title)): print '<h2'. ($tabs ? ' class="with-tabs"' : '') .'>'. $title .'</h2>'; endif; ?>
<?php if (!empty($tabs)) { echo $tabs.'<div class="cleared"></div>'; }; ?>
<?php if (!empty($tabs2)) { echo $tabs2.'<div class="cleared"></div>'; } ?>
<?php if (!empty($mission)) { echo '<div id="mission">'.$mission.'</div>'; }; ?>
<?php if (!empty($help)) { echo $help; } ?>
<?php if (!empty($messages)) { echo $messages; } ?>
<?php echo art_content_replace($content); ?>
</div>
<div class="cleared"></div>
</div>
</div>
</div>
<?php endif; ?>
Ich habe mal ein wenig
am 08.12.2009 - 12:51 Uhr
Ich habe mal ein wenig weiter nach Lösungen gesucht, wurde aber noch nicht fündig. Vielleicht noch zur Konkretisierung: dieses "Problem" tritt nicht nur beim blog-Modul auf, sondern bei ALLEN "Übersichtsseiten", also z.B. die Seiten zu den einzelnen Begriffen in der Drupal-Taxonomie - also sobald eine Liste von Beiträgen erstellt wird. Da ich auf meiner Seite ohnehin nur einen Blog habe (und nicht mehrere), habe ich das Blog-Modul wieder deaktiviert und erstelle nun Blogeinträge unter einem anderen, selbst erstellten Inhaltstyp und erstelle eine Übersichtsseite mit Views (siehe aktuell: www.hQuadr.at/blog).
Problematisch ist nun, dass der css-Tag "art-Post-body" zweimal verschachtelt auftritt - dieser sorgt also auch für den unerwünschten weißen Hintergrund, welcher nur für die einzelnen Beiträge gedacht ist. also, exemplarisch:
<div class="art-Post-body"><div class="art-Post-body"> [BEITRAG 1] </div>
<div class="art-Post-body"> [BEITRAG 2] </div>
...
</div>
Weiss vielleicht jemand, wie ich dies vermeiden kann? Ich weiss wirklich nicht, unter was für Stichworten ich da in Google weiter komme - bis jetzt habe ich jedenfalls nichts konkreteres dazu gefunden.
Da hilft nur das
am 08.12.2009 - 13:45 Uhr
Da hilft nur das Template-File page.tpl.php von Hand zu ändern. Dann hast Du allerdings ein Problem bei späteren Änderungen über Artisteer, daß die Korrekturen von Dir wieder überschrieben werden.
Beste Grüße
Werner
ja, das glaube ich auch. nur
am 08.12.2009 - 18:37 Uhr
ja, das glaube ich auch. nur die frage war eher: WAS muss ich dort ändern? Wenn ich die entsprechenden Div-Tags einfach auskommentiere, dann habe ich zwar auf den angesprochenen Seiten (Blog, Taxonomie-Seiten, etc.) den erwünschten Effekt, dafür aber auf diversen anderen Seiten der Website gar keinen Hintergrund mehr.
Du hast 2
am 08.12.2009 - 19:46 Uhr
Du hast 2 Möglichkeiten:
Egal wie, ohne ein tieferes Eintauchen in die page.tpl.php geht es nicht.
Beste Grüße
Werner
Panels und Views - page.tpl.php ist von Gestern
am 08.12.2009 - 22:59 Uhr
Hier wird fortlaufend von der Handhabung der page.tpl.php geredet. Kann man machen. Aber,
eleganter und letztendlich voll im Backand administrier- und konfigurierbar ist es wenn man das Modul Panels verwendet.
Alle Uebersichtsseiten, man kann sie auch als Landing Pages bezeichnen, werden jeweils mit einer Panelseite realisiert.
In jeder Panelseite kann man nun wie gewuenscht und wie in einem Baukasten Seitenelemente einfuegen um eine Landing Page mit Inhalt zu versehen.
Jede Panelseite hat eine URL. Eine Panelseite fuer die Startseite wird die URL home haben und diese URL wird als Standard Startseite eingetragen.
Ublicherweise wird man, wenn es in diesen Panelseiten um die Anzeige von Ubersichten dreht, fuer die Uebersichten eine entsprechende Views Ansicht verwenden die man in das Panel einbindet.
Wie gesagt, page.tpl.php kann man machen. Aber ich denke diese Vorgehensweise ist von Gestern.
PS
Da hier von Blog die Rede ist.
Speziell fuer die Verwendung in Multiuser-Blogs habe ich ein Modul entwickelt welches eine Blog-Uebersichtseite bereitstellt.
------------------------
Quiptime Group
@Werner: ich habe das
am 12.12.2009 - 15:25 Uhr
@Werner: ich habe das Problem nun mit zwei Hilfsdateien (page-blog.tlp.php und page-taxonomy.tpl.php) gelöst und in diesen die entsprechenden CSS-Definitionen auskommentiert, die für den weißen Hintergrund gesorgt hatten - so ist das Ziel erstmal erreicht, auch wenn es vermutlich nicht die eleganteste Lösung hierzu ist.
@quiptime: Panels ist sicher ne gute Sache, aber für die Problemstellung wohl nicht geeignet, da es letzten Endes ein PHP/CSS Problem war: mehrere CSS-Formatierungen wurden "verschachtelt" ausgegeben. Der jetzige Blog-Abschnitt meiner Website ist übrigens eine Views-Ansicht, die ich natürlich auch per Panels dann woanders verwenden könnte. Die Formatierung per CSS bliebe aber auch in diesem Fall dieselbe.
Ich habe nun einfach die Div-Tags auskommentiert, die jedem Blo-Beitrag einen weißen Hintergrund und die Umrandung geben, denn diese werden bei einer Übersichtsseite verschachtelt bzw. Drupal sieht die Auflistung der Teaser als "einen Beitrag" und umrandet alle Teaser überflüssigerweise nochmals.
--
www.hquadr.at