it-swarm.com.de

Wie zeige ich nur die ersten X Wörter (von jedem Beitrag) auf der Homepage an?

Wie können Sie es so einstellen, dass auf der Homepage der Site nur die ersten X (sagen wir 300) Wörter des Posts angezeigt werden?

Aber ohne "more" -Tag oder handgefüllte Auszüge? Ich suche ein Plugin/Hack für WP 2.9 und höher.

Ich bin bisher auf mehrere Lösungen gestoßen, hoffe aber auf eine empfohlene Lösung.

Herausforderungen, denen ich bisher begegnet bin:

  • Was passiert, wenn ein Tag (zum Beispiel) in Word 295 beginnt und nach Word 301 endet?
  • Kann es möglich sein, ein anderes X für die Startseite, die Tag-Seite, die Kategorieseite usw. zu haben?
  • Kann das Format des Textes beibehalten werden? (alle Bilder und Texte formatieren)?
  • Wenn Sie das Plugin verwenden, wird der Server am wenigsten mit Ressourcen belastet.
1
Tal Galili

Das Ändern der Wortanzahl auf der Homepage ist ganz einfach:

if( is_home() )
  add_filter( 'excerpt_length', create_function( '', 'return 300;' ) );

Replizieren Sie einfach diesen Code und ändern Sie die bedingte Prüfung, um dies anderen Seiten hinzuzufügen. Die andere Möglichkeit besteht darin, den Code einfach auf der Vorlagenseite einzufügen (home.php, tag.php usw.), damit Sie wissen, dass er auf der richtigen Seite eingestellt wird.

Wenn Sie the_excerpt() verwenden, werden Shortcodes und HTML-Code automatisch aus dem Inhalt entfernt, wenn kein Auszug bereitgestellt wird. Sie können diese Filter entfernen, aber es macht es sehr viel schwieriger, Word-Zählungen durchzuführen, wenn Sie Markups in die Mischung einfügen. Wenn die Formatierung/der Text/die Bilder beibehalten werden sollen, ist das Tag more dafür vorgesehen. Es wird manuell eingefügt, weil es zu schwierig ist, in allen Fällen, in denen diese Unterbrechung auftreten sollte, automatisch herauszufinden.

3
John P Bloch

Sie können dafür das Fancy Excerpt Plugin für WordPress verwenden und etwas modifizieren. Es behält den Stil bei und zählt die Wörter. Sie müssen dies nur ein wenig ändern, um Ihre Wortzahl zu erhalten, und wenn Sie die Ellipse nicht mögen, müssen Sie möglicherweise auch die Endung ändern.

1
hakre

wenn Sie nur die ersten 300 Wörter des Inhalts benötigen, können Sie ihn problemlos verwenden

wp_trim_words( $post->post_content, 300, '');
0
Geza Gog