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
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…
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 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ę ;-)