Za chwile zaczynam „piątek, piątunio, piąteczek”, czyli kreatywne spotkanie w kreatywnym gronie, przy trunku, który sprzyja kreatywności (oczywiście w umiarze… pity), to jeszcze rzutem na taśmę (psy trzeba wyprowadzić przed wyjściem) krótki poradni o tym, jak w WordPressie zmienić domyślny separator w tytule strony…
Spis treści w artykule [rozwiń]
Modyfikacja tytułu strony w WordPressie
Można by pomyśleć, ze separator w tytule to w sumie taka błahostka, że nie ma sobie co nią w ogóle zawracać głowy. Ja natomiast uważam, że o perfekcji decydują właśnie drobiazgi, bo to one odróżniają produkt od (wspaniałego) dzieła, a niewątpliwie chcemy, by właśnie czymś była nasza strona… ;-)
Standardowo w WordPressie tytuł strony głównej wygląda tak:
Nazwa Strony | Slogan (opis)
A tak wygląda tytuł w przypadku innych stron/wpisów:
Tytuł wpisu - Nazwa Strony
Widać tu pewną niekonsekwencję, bo mamy tu 2 rodzaje separatorów, zależnie od tego, w którym miejscu strony się znajdziemy (strona główna, czy podstrona/wpis).
Wystarczy odrobina kodu
By to skorygować, wystarczy odrobina kodu, czyli jak to zwykle w przypadku tego typu modyfikacji bywa, i tym razem skorzystamy z pliku functions.php (lub własnej wtyczki jak ktoś woli) i motywu potomnego, gdzie dodajemy:
function webinsider_wp_document_title_separator( $sep ) {
$sep = '|';
return $sep;
}
add_filter( 'document_title_separator', 'webinsider_wp_document_title_separator' );
I to tyle – teraz w przypadku podstron mamy taki sam separator jak na stronie głównej, czyli:
Tytuł wpisu | Nazwa Strony
Statyczny tytuł strony
Ale jeśli już przy modyfikacji tytułu jestem, to jeszcze prosty sposób na ustawienie „na sztywno” tytułu dla wszystkich stron:
function webinsider_wp_pre_get_document_title( $title ){
return 'WebinsiderPL';
}
add_filter( 'pre_get_document_title', 'webinsider_wp_pre_get_document_title' );
Albo dla wybranego typu, np. stron (ale nie wpisów, czy archiwów):
function webinsider_wp_pre_get_document_title( $title ){
if ( is_singular( 'page' ) ) {
return 'WebinsiderPL';
}
}
add_filter( 'pre_get_document_title', 'webinsider_wp_pre_get_document_title' );
Można też bardziej precyzyjnie, np. ustawiamy tytuł tylko dla strony od ID „12345”:
function webinsider_wp_pre_get_document_title( $title ){
if ( is_page( 12345 ) ) {
return 'WebinsiderPL';
}
}
add_filter( 'pre_get_document_title', 'webinsider_wp_pre_get_document_title' );
Lub posługując się jej tytułem (lub adresem/slugiem):
function webinsider_wp_pre_get_document_title( $title ){
if ( is_page( 'Kontakt' ) ) {
return 'WebinsiderPL';
}
}
add_filter( 'pre_get_document_title', 'webinsider_wp_pre_get_document_title' );
Oczywiście nic nie stoi na przeszkodzie, by tego typu operacje wykonać dla wpisów z konkretnej kategorii, czy oznaczonych wybranym tagiem…


- Wtyczka BackWPup w wersji 5.x to doskonały przykład, jak wylać dziecko z kąpielą i z relatywnie świetnego narzędzia zrobić właściwie bezwartościowego gniota - 1970-01-01
- Testowy przelew w Bitcoinach z najniższą prowizją, czyli krótka historia o tym, jak zamroziłem BTC na (ponad) rok - 1970-01-01
- Nowy system kopii zapasowych w Home Assistant 2025.1 to zapewne krok w dobrym kierunku, ale zdecydowanie przedwczesny - 1970-01-01
Przetestuję statyczne rozwiązanie na swoim blogu :)
To musisz mi (na priv, adres znasz :-)) pochwalić się swoim prywatnym blogiem, bo znam tylko adres „służbowy” :-)
Problem w tym, że po aktualizacji motywu nasze zmiany znikną
Bo tego typu zmiany robimy, korzystając z motywu potomnego (child theme), o czym wręcz do znudzenia piszę ;-)