wake-up-neo.com

WP Aktion/Filter zum Ändern des Titels vor der Kopf- und Artikelausgabe?

Ich versuche, zwei Versionen eines Beitragstitels mithilfe eines benutzerdefinierten Plugins zu testen. Bisher habe ich nicht den richtigen Filter oder die richtige Aktion gefunden, um den Titel auf der Meta-Tag-Ebene zu ändern, bevor die Seite ausgegeben wird.

Was ich gefunden habe, ist der Filter the_title, aber das scheint es nur im Post-Inhalt zu tun, und nicht im Dokumentenkopf.

http://codex.wordpress.org/Plugin_API/Filter_Reference/the_title

Ist dies der richtige Filter, und ich muss nur meine Designvorlage ändern, um die ausgewählte Aktion auszuführen? Kann ich das nur von einem Plugin aus tun, ohne das Thema zu ändern?

Ich möchte überprüfen, ob eine GET-Variable festgelegt ist, z. B. ?title_ver=1, und dann den entsprechenden Post-Meta-Wert für den alternativen Titel abrufen.

Nicht funktionierender Code

    function custom_modify_title( $title, $id = null ) {
        return 'CUSTOM '.$title;
    }
    add_filter( 'wp_title', 'custom_modify_title', 10, 2 );
    add_filter( 'the_title', 'custom_modify_title', 10, 2 );
1
user3657553

Der Filter wp_title ändert nur die Funktion wp_title () , wenn sie aufgerufen wird.

Sie müssen also den Quellcode Ihres Themas überprüfen, bevor Ihr Header wp_title verwendet.

Wie auch immer, Sie können Ihren Filter auf functions.php einstellen. Eine Funktion zur Identifizierung Ihres Parameters GET sollte ungefähr so ​​aussehen:

function maybe_change_wp_title_ver( $title, $sep ) {

    if ( isset( $_GET['title_ver'] ) && 1 === $_GET['title_ver'] ) {
        $title = 'My New Title';
    }

    return $title;
}

add_filter( 'wp_title', 'maybe_change_wp_title_ver', 99, 2 ); //99 is set as priority (read comments)
1
Leo Caseiro