Cum se obține titlul paginii curente în WordPress
Cîteodată dorim să obținem titlul paginii curente, care este afișat în tag-ul <title>
. Aici mă refer la pagină în sens general, nu la „pagina” WordPress. Avem mai multe funcții WordPress care ne pot ajuta, cum ar fi:
-
get_the_title()
: pentru a obține titlul curent al postului/ paginii/ orice tip de post -
single_cat_title()
: pentru a obține titlul curent al categoriei. Există funcții surori pentru tag-uri și termeni, de asemenea:single_tag_title()
șisingle_term_title()
-
get_bloginfo()
: pentru a obține numele blogului - etc.
Utilizarea acestor funcții sunt grozave, dar au câteva dezavantaje:
- Aceste funcții sunt specifice pentru anumite pagini, cum ar fi paginile single post/page, category/tag, … pagini. Dar putem avea multe tipuri de pagini în WordPress, cum ar fi: Pagina 404, pagina cu rezultate de căutare, pagina de arhivă sau chiar pagina virtuală.
- Titlul afișat diferit în teme: este posibil să folosiți o temă care are titlul în format
Post Title | Blog Name
, dar o altă temă poate folosi doarPost Title
. Puteți face o combinație a funcțiilor de mai sus pentru a obține titlul corect, dar care nu va fi folosit pe scară largă pentru alte teme. - Ou puteți seta titlul în diferite moduri cu plugin-urile SEO
În acest post, voi folosi un truc simplu care poate rezolva rapid aceste probleme.
Sunt sigur că toți suntem familiarizați cu funcția wp_title()
, folosim adesea această funcție în fișierul header.php
, astfel:
<title><?php wp_title( '|', true, 'right' ); ?></title>
pentru a afișa titlul paginii (ar trebui să folosiți doar această funcție pentru a afișa titlul paginii, altfel site-ul dvs. poate nu este compatibil cu plugin-urile SEO sau cauzează probleme de performanță).
Trucul constă în schimbarea celui de-al doilea parametru $echo
de la true
la false
pentru a obține valoarea titlului paginii curente:
$title = wp_title( '|', false, 'right' );
Iată un exemplu în care această tehnică este utilă. Vom afișa un buton Twitter. Voi folosi o altă tehnică interesantă pentru a obține URL-ul paginii curente:
global $wp;$link = add_query_arg( $wp->query_string, '', home_url( $wp->request ) );$text = wp_title( '|', false );printf( '<iframe allowtransparency="true" frameborder="0" scrolling="no" src="https://platform.twitter.com/widgets/tweet_button.html?url=%s&text=%s&count=horizontal"></iframe>', urlencode( $link ), rawurlencode( $text ));
În prezent, folosesc scriptul de mai sus (cu câteva adăugiri pentru butoanele Facebook like, Google+) pentru site-urile mele. Și funcționează foarte bine în paginile de arhivă, unde funcțiile construite în WordPress nu sunt foarte utile.