Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

"Weiterlesen"- bzw. "read more"-Link deutlicher machen?

Eingetragen von hQuadrat (17)
am 02.09.2006 - 17:22 Uhr in
  • Allgemeines zu Drupal

Nach dem einen gelösten Problem folgt das Nächste... :)

Sicherlich kennt hier (fast) jeder die Seite von Spiegel.de, nehme ich einfach mal an :)
Wenn man auf deren Startseite geht, dann erscheinen ebenso Artikel, die mit Teasern angezeigt werden. Der für mich markante Unterschied: Direkt am Ende des Teasers nach dem zuletzt angezeigten Wort erscheint ein Link "mehr...".
Hier finde ich, ist es direkt ersichtlich, dass der Artikel an dieser Stelle nicht abgeschlossen ist und man durch Klicken auf den entsprechenden Link den gesamten Artikel angezeigt bekommt.

Auf meiner Seite (http://www.hquadr.at) erscheinen, wie wohl bei den meisten Drupal-Installationen, am unteren Rand des Teasers ein kleiner Balken mit Optionen und der Anzeige der Kategorien, welcher der Artikel zugeordnet ist.
Wie mich meine Seitenbesucher hingewiesen haben und ich auch selbst finde: man muss sehr genau hinsehen, dass der Artikel noch länger ist.

Wie kann ich etwas vergleichbares, wie Spiegel.de es macht, schaffen? Meinetwegen statt "mehr..." eben "[...]" möglichst hinter dem zuletzt im Teaser angezeigten Wort? Hat jemand eine Idee?

Wäre dies hier: http://www.drupalcenter.de/node/1315
eventuell eine Lösung bzw. die von quiptime anderswo genannten Module aggregator2 und excerpt eine mögliche Lösungsmöglichkeit? Aus den entsprechenden Dokumentationen werd ich irgendwie nicht schlau...

Ich benutze Drupal 4.7.3 mit dem "Meta Theme" (http://drupal.org/node/43376)

Danke für Eure Tipps...
hquadrat

‹ Meta-Community mit Drupal? simples newsletter-anmeldung für Gäste ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Teaser nicht themeable

Eingetragen von md (3717)
am 02.09.2006 - 17:43 Uhr

Wenn der Teaser 'themable' wäre, könnte man die Funktion überschreiben. Ist er aber leider nicht, wenn ich das richtig sehe.
Sieh: http://api.drupal.org/api/4.7/group/themeable
Vielleicht geht es, wenn man theme_node überschreibt. Schau ich mir bei Gelegenheit mal an.

Aggregator2 nützt dir hier gar nichts und das excerpt Modul erzeugt die Teaser nicht automatisch.

md - drupalcenter
-----------------
www.mdwp.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

theme_node

Eingetragen von md (3717)
am 02.09.2006 - 17:53 Uhr

Ich hab mir das hier - http://api.drupal.org/api/4.7/function/theme_node - mal angesehen.
Wenn man die Fuunktion in der template.php überschreibt, müsste das gehen.

md - drupalcenter
-----------------
www.mdwp.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Übers Ziel hinaus geschossen

Eingetragen von md (3717)
am 03.09.2006 - 14:00 Uhr

Da bin ich ein wenig übers Ziel hinausgeschossen.

Es geht auch einfacher. Schreib folgenden Code in die node.tpl.php Datei deines Themes:

<?php if (!$is_front): ?>

  <div class="content">
   <?php print $content ?>
  </div>
<?php endif; ?>

<?php if ($is_front): ?>

  <div class="content">
   <?php print $content . '... <a href="/node/' . $node->nid. '">mehr </a>' ?>
  </div>
<?php endif; ?>

Jetzt musst du noch dafür sorgen, dass der 'normale' read-more Link nicht mehr auftaucht.
Da ich das gerade für meine Site - www.go-with-us.de - auch mache, kommt die Lösung dazu bald.

md - drupalcenter
-----------------
www.mdwp.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Read-more Link

Eingetragen von md (3717)
am 03.09.2006 - 15:01 Uhr

So gehts. Schreib in deine template.php folgendes:

<?php
function phptemplate_links($links = array(), $delimiter = ' | ') {
 
/**
* catches the theme_links function and calls back a link.tpl.php file to determine the layout
*/
 
return _phptemplate_callback('links', array('links' => $links, 'delimiter' => $delimiter));
}
?>

Jetzt erzeug eine links.tpl.php und schreib da folgendes rein:

<?php
$delimiter
= "|";
// Display the left cap of the 'button bar'
print "&raquo; ";
$link_count = count($links);
$current = 1;

foreach ( $links as $lnk ) {
   
$key = strstr($lnk, 'Weiterlesen');  // does a search in the link
   
if ($key == FALSE) {
        print
$lnk; 
    }
  
// Only print the delimiter if not the last link
   
if ( $current < $link_count and $current > 1 ) {
        print
' '.$delimiter.' ';
    }
   
$current++;
}
?>

Diesen Code benutze ich jetzt auf www.go-with-us.de. Musst du bei dir evtl. Anpassungen machen.
Z.B. "Weiterlesen" durch "read-more" übersetzen.

Als Basis hierfür diente mir dieser Thread im Handbuch von drupal.org:
http://drupal.org/node/44708

md - drupalcenter
-----------------
www.mdwp.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo md, Vielen vielen Dank

Eingetragen von hQuadrat (17)
am 04.09.2006 - 00:18 Uhr

Hallo md,

Vielen vielen Dank für die Hinweise! Ich werde das gleich nachher noch ausprobieren.
Irgendwie habe ich da wohl nach den falschen Stichworten gesucht gehabt.

Grüße, hQuadrat

--
www.hquadr.at

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo nochmals... Irgendwie

Eingetragen von hQuadrat (17)
am 10.09.2006 - 01:10 Uhr

Hallo nochmals...

Irgendwie funktioniert Deine Lösung für mich nicht so optimal - oder ich mache da etwas falsch (?) und kenne mich da in PHP/CSS zu wenig aus... Entweder erscheinen bei mir die Links dann überall (also auch in Beiträgen, die schon auf Vollansicht sind) oder es gibt Fehler in der Darstellung meiner Seite. Der alte Link ließ sich zudem nicht ausblenden oder es verschwanden anstelle des einzelnen "Weiterlesen"-Links gleich alle folgenden Links (Kategorien, Kommentare zu dem entsprechenden Artikel).
Vorläufig werde ich nun wohl erst mal nach einer anderen Lösung suchen, z.B. die "Weiterlesen"-Links farblich hervorheben - sofern ich das bei dem relativ komplexen Theme, das ich verwende, irgendwie zustande bekomme... Faktisch steht der Link ja bereits da und wird korrekt dargestellt, nur ist er - so wie es auf meiner Seite momentan noch zu sehen ist - relativ leicht zu übersehen, wie mir meine Seitenbesucher berichtet hatten. Mal sehen, ob ich das hinbekomme und es dann wenigstens ein wenig deutlicher wird, dass der Artikel (so wie er auf der Startseite angezeigt wird) noch nicht komplett ist...

Dennoch erstmal vielen Dank für Deine Hilfe - ich werde damit weiter herumprobieren auf einer lokalen Installation, die nicht im Web erscheint. Vielleicht finde ich ja noch den "Haken" :)

Grüße, hQuadrat

--
www.hquadr.at

  • Anmelden oder Registrieren um Kommentare zu schreiben

Bessere Lösung - externes Modul

Eingetragen von hQuadrat (17)
am 13.11.2006 - 10:57 Uhr

Hallo,
ich wollte noch kurz auf eine recht geniale Lösung dieses Problemchens hinweisen - recht "einfach" und funktioniert wirklich genial. So ist es auch recht einfach, den "alten" read more bzw. Weiterlesen Link auszublenden:
http://www.angrydonuts.com/the_nuisance_of_the_read_more_fl

Hier arbeitet man quasi mit einem separaten Modul anstelle der node.tpl.php - schaut es Euch bei Interesse am besten selbst an...

Grüße, hQuadrat

--
www.hquadr.at

  • Anmelden oder Registrieren um Kommentare zu schreiben

Prima

Eingetragen von md (3717)
am 13.11.2006 - 11:09 Uhr

Danke für den guten Tipp. Kommt bei Gelegenheit in unser FAQ.

md - drupalcenter
--
www.mdwp.de :: www.go-with-us.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Rauskramen

Eingetragen von Katoka (26)
am 23.04.2009 - 01:00 Uhr
Zitat:

Da dieses Theme recht alt ist will ich es mit diesem Post hervorholen und gleich fragen ob es inzwischen eine einfachere Lösung gibt. Stehe vor dem selben Problem bei meiner ersten Drupalsite und zweiten überhaupt :)

Gruß
Kato

Fünf Minuten nach dem Post hatte ich eine Idee. Hat sich also erledigt.

Mit den drei hier:

<?php if($teaser && $readmore): ?>
<a href="<?php print $node_url; ?>" title="<?php print $title ?>">Weiterlesen</a>
<?php endif; ?>

<?php
print ('http://www.homepage.de/?q=comment/reply/' . $nid . '#comment-form');
?>


<?php if ($comment_count > 0): ?>
print $comment_count;
<?php endif; ?>

Für meine Zwecke reicht es. So kann ich alles einzeln dahin packen wo ich es hinhaben will.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 5 Tagen
  • Hey danke
    vor 1 Woche 6 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 2 Stunden
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 4 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 4 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 1 Tag
  • In der entsprechenden View
    vor 3 Wochen 1 Tag
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 1 Tag
  • gelöst
    vor 5 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 18 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association