it-swarm.com.de

Ersetzen Sie den gesamten Inhalt durch einen Auszug

Mein Theme zeigt die vollständigen Beiträge auf der Hauptseite an und ich möchte, dass nur die Zusammenfassung angezeigt wird. Ich habe versucht, in der index.php-Datei meines Themas nach dem_content-Tag zu suchen, aber es ist noch nicht einmal da!
Ich habe keine home.php oder category.php. Ich habe versucht, meine gesamte WordPress-Installation nach the_content zu durchsuchen. Die einzige Stelle, an der ich sie finden konnte, ist page.php, und selbst wenn ich sie dort ändere, funktioniert sie nicht wirklich.

Die anderen Stellen, an denen ich es in meinen Themenformaten (image.php, audio.php ...) gefunden habe, aber wenn ich es dort ändere, wird in dem Beitrag die Zusammenfassung angezeigt, auch wenn Sie darauf klicken und in den Beitrag hineingehen.

Meine index.php-Datei hat Folgendes:

<?php if (have_posts()) : while (have_posts()) : the_post(); $format = get_post_format();  ?>

  <?php if($format == ''): ?>

    <?php get_template_part('library/functions/theme/formats/standar'); ?>


  <?php else: ?>

    <?php get_template_part('library/functions/theme/formats/'.$format); ?>

  <?php endif; ?>

<?php endwhile ?>

Muss ich dort etwas Bestimmtes tun, damit dies funktioniert?

1
hyperexpert

Entscheiden Sie über the_excerpt() oder the_content() mit einer Bedingung: is_singular().

Sie können ein Plugin verwenden und the_content filtern, abhängig vom Typ der aktuellen Seite: Archiv oder Singular. Sie können es aber auch in Ihrem Thema verwenden.

add_filter( 'the_content', 't5_replace_content_with_excerpt', 100 );

/**
 * Return excerpt if we are not on a singular post view.
 *
 * @param  string $content
 * @return string
 */
function t5_replace_content_with_excerpt( $content )
{
    if ( is_singular() )
    {
        return $content;
    }
    // remove our filter temporarily.
    // Otherwise we run into a infinite loop in wp_trim_excerpt().
    remove_filter( 'the_content', __FUNCTION__, 100 );
    $excerpt = apply_filters( 'the_excerpt', get_the_excerpt() );
    add_filter( 'the_content', __FUNCTION__, 100 );
    return $excerpt;
}

Suchen Sie in Ihrem Thema die Zeile, in der Sie the_content() aufrufen. Ändern Sie es in:

is_singular() ? the_content() : the_excerpt();
4
fuxia

Mit welchem ​​Thema arbeitest du?

Dieser Code hier:

<?php get_template_part('library/functions/theme/formats/standar'); ?>

Scheint, dass Ihre index.php ein Template-Include aufruft. Wenn Sie die richtige Datei finden (höchstwahrscheinlich in diesem Format-/Standardverzeichnis) und die Stelle, an der the_content () angezeigt wird, durch the_excerpt () ersetzen, sollten Sie sehen, dass die Zusammenfassungen anstelle des vollständigen Inhalts geladen werden. Dies wird eine Kern-Themendatei modifizieren, die nicht empfohlen wird. Ohne mehr über Ihr Thema zu wissen und ob dies überschreibbar ist, würde ich sagen, dass Sie dies auf Ihr eigenes Risiko tun.

0
jhoffmcd