wake-up-neo.net

Ändern Sie alle Post-Titel in das Format [Title Case]

Ich habe ungefähr 2000 Beiträge mit den Titeln im folgenden Format:

[i like apples]

Ich möchte sie machen:

[I Like Apples]

Ich habe das WP Title Case-Plugin verwendet, aber das Problem ist, dass dieses Plugin nur den Titel des Posts selbst in Großbuchstaben schreibt, sodass nur h1 normal aussieht, <title> in <head> jedoch immer noch nicht in Großbuchstaben geschrieben wird. Ich denke, die echten nicht großgeschriebenen Titel werden aus der Datenbank abgerufen.

Vielleicht gibt es ein SQL-Skript, um die Spalte in der Tabelle der Datenbank groß zu schreiben, oder ein PHP-Skript, um den <title> in head in ein normales Format zu ändern?

1
Adam S.

EDIT: WP Title Hook

Ok, wenn Sie wp_title verwenden (was wahrscheinlich der Fall ist), sollte diese Funktion zwei Filter enthalten, die Sie verwenden können.

Der erste ist wp_title_parts, der Ihren Titel in ein Array unterteilt zurückgibt.

function wp_title_capitalize( $title_parts ) {

    // Only uppercases the words of the first element (should be the page title)
    $title_parts[0] = ucwords( $title_parts[0] );

    return $title_parts;

}
add_filter( 'wp_title_parts', 'wp_title_capitalize' );

ODER wenn Sie mit dem Ausführen des Großbuchstabenfilters für das Ganze einverstanden sind, können Sie ihn auf wp_title ausführen

function wp_full_title_capitalize( $title, $sep, $seplocation ) {

    // Uppercases the entire title
    $title = ucwords( $title );

    return $title;

}
add_filter( 'wp_title', 'wp_full_title_capitalize' );

Die zweite Antwort ist einfacher zu verstehen, da sie auf die ganze Sache läuft, aber wenn Ihre Titel so aussehen

About Us | COMPANY NAME

Dann möchten Sie wahrscheinlich mit der ersten Option gehen.

Wie immer gehen diese mit Hooks & Filtern in die functions.php Ihres Themas.

Alte Antwort (NUR CSS)

Wenn Sie nur über die Anzeige besorgt sind, können Sie sich einfach bewerben

text-transform: capitalize;

an die CSS deines h1.

http://www.w3schools.com/cssref/playit.asp?filename=playcss_text-transform&preval=capitalize

3
socki03

Sie können WordPress-Hooks in functions.php verwenden, aber als socki03 antwortete, denke ich, dass dies ein bisschen besser ist

add_filter( 'wp_title', 'ucwords' );

Ich halte das immer noch für übertrieben

function wp_full_title_capitalize( $title, $sep, $seplocation ) {

    // Uppercases the entire title
    $title = ucwords( $title );

    return $title;

}
add_filter( 'wp_title', 'wp_full_title_capitalize' );

Ich kann seine Antwort nicht kommentieren, also lasse ich dies als Antwort :)

2
blackstar