wake-up-neo.com

Entfernen Sie mehr oder [...] weniger Text aus dem kurzen Beitrag

Ich verwende ein Thema mit einer Zeichenbegrenzung für Shortpost und [...] zeige am Ende der Zeichenbegrenzung.

Ich möchte dies entfernen, suche also nach the_excerpt(); und ersetze durch the_content();

Das Problem wird mit normalem Inhalt behoben, es gibt jedoch immer noch ein Problem mit dem Typ des Bildposts, und es gibt <?php the_excerpt(); ?>, dass sich mein Shortpost beim Ändern wie ein vollständiger Post verhält und sich nicht auf die Länge des Posts bezieht.

Ich versuche alle PHP Dateien im Theme zu öffnen und suche nach Schlüsselwörtern wie: limit, length, excerpt for find wo ist der Code, der die Länge des Shortposts definiert und suche sogar nach "[...]" in Alle Dateien und Sprachen, aber ich weiß nicht, woher das kommt.

Aber alles, was ich finde, ist eine Codezeile in function.php

if ( ! function_exists( 'string_limit_words' ) ) :
function string_limit_words($str, $limit = 18 , $need_end = false) {
    $words = explode(' ', $str, ($limit + 1));
    if(count($words) > $limit) {
        array_pop($words);
        array_Push($words,'...');
    }
    return implode(' ', $words);
}
endif;

Und wenn ich 18 steige, ändert sich nichts!

Welchen Code muss ich suchen?

8
Arioman

Der Kodex ist dein Freund und sollte deine erste Anlaufstelle sein :-)

Der [...] wird durch the_excerpt() hinzugefügt. Es wird ein Filter mit der Bezeichnung excerpt_more mitgeliefert, der speziell zum Anpassen des nach dem Auszug gelesenen Texts enthalten ist

Gehen Sie folgendermaßen vor, um den [...] nach dem Auszugstext zu entfernen

function new_excerpt_more( $more ) {
    return '';
}
add_filter('excerpt_more', 'new_excerpt_more');
18
Pieter Goosen

Wie andere bereits betont haben, ist die Verwendung des excerpt_more-Filter-Hooks der richtige Weg.

Ich wollte nur hinzufügen, dass Sie keine Funktion schreiben müssen, die eine leere Zeichenfolge zurückgibt. WordPress hat einige eingebaute Funktionen, um wahr, falsch, null, null, leere Zeichenfolge oder leeres Array zurückzugeben.

In diesem Fall brauchen wir __ return_empty_string ()

Sie können diesen Code in Ihr Plugin oder in die functions.php Ihres Themes einfügen:

<?php 
// This will add a filter on `excerpt_more` that returns an empty string.
add_filter( 'excerpt_more', '__return_empty_string' ); 
?>
2
baras

das ist arbeit für mich!

function change_excerpt( $text )
{
    $pos = strrpos( $text, '[');
    if ($pos === false)
    {
        return $text;
    }

    return rtrim (substr($text, 0, $pos) );
}
add_filter('get_the_excerpt', 'change_excerpt');
1
HAROONMIND

Versuchen Sie, eine neue Funktion in Ihrem functions.php zu erstellen:

function custom_excerpt() {
 $text=preg_replace( "/\\[&hellip;\\]/",'place here whatever you want to replace',get_the_excerpt());
echo '<p>'.$text.'</p>';
}

Dann nutzen Sie die neue Funktion auf Ihrer Seite.

0
JaZ

Sie sollten dies zu Ihrem functions.php hinzufügen

    function custom_excerpt_more( $more ) {
    return '';//you can change this to whatever you want
}
add_filter( 'excerpt_more', 'custom_excerpt_more' );

Die Verwendung von the_excerpt hat außerdem den Vorteil, dass der Inhalt automatisch bereinigt und alle Bilder sowie andere HTML-Tags gelöscht werden.

Sie können hier mehr lesen

Wenn Sie auch die Länge des Ausschnitts ändern möchten, können Sie diesen Ausschnitt zu Ihrem functions.php hinzufügen:

function custom_excerpt_length( $length ) {
    return 20;//change the number for the length you want
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

Sie können mehr darüber lesen hier

0
Tomás Cot

'excerpt_more' ist ein WordPress-Hook. Es wird der Inhaltsauszug zurückgegeben. Um den [...] nach dem Auszugstext zu entfernen, können Sie wie folgt oder Ihre benutzerdefinierten Anforderungen leer zurückgeben. Verwenden Sie diesen Code auf function.php

function custom_excerpt_more( $excerpt ) {
    return '';
}
add_filter( 'excerpt_more', 'custom_excerpt_more' );
0
Tariqul_Islam