În cazul în care administrați o publicație sau un blog cu mai mulți autori, este o idee excelentă să includeți în subsolul fiecărui articol o casetă bio cu detalii despre redactor, alături de legături către rețelele sale sociale.
În mod nativ, WordPress include câmpuri de contact precum e-mail, site web sau protocoale mai vechi de mesagerie instantă. Cu ajutorul unui simplu filtru integrat în fișierul functions.php al temei active, puteți extinde profilul utilizatorilor pentru a introduce conturile de Facebook și Twitter (X).
Extinderea metodelor de contact în functions.php
Pentru a înregistra aceste câmpuri suplimentare în panoul de administrare, deschideți fișierul functions.php din tema dumneavoastră (sau dintr-o temă copil) și adăugați următoarea funcție conectată la cârligul (hook-ul) user_contactmethods:
<?php
function my_new_contactmethods( $contactmethods ) {
// Adăugare câmp Twitter
$contactmethods['twitter'] = 'Twitter';
// Adăugare câmp Facebook
$contactmethods['facebook'] = 'Facebook';
return $contactmethods;
}
add_filter( 'user_contactmethods', 'my_new_contactmethods', 10, 1 );
?>
După salvarea fișierului, în panoul de administrare WordPress (secțiunea Utilizatori → Profilul tău) vor apărea două câmpuri noi: Twitter și Facebook, unde fiecare autor își poate introduce datele de contact.
Afișarea informațiilor în fișierele temei
Pentru a afișa valorile completate în paginile de arhivă ale autorului (de exemplu în author.php), unde obiectul curent de utilizator este deja definit prin variabila $curauth, puteți folosi următorul apel:
<?php echo esc_url( $curauth->twitter ); ?>
Dacă doriți să afișați profilurile sociale în interiorul buclei WordPress (WordPress Loop), de pildă în fișierul single.php la finalul articolului, funcția recomandată este get_the_author_meta():
<?php
$twitter_user = get_the_author_meta( 'twitter' );
$facebook_url = get_the_author_meta( 'facebook' );
if ( ! empty( $twitter_user ) ) {
echo '<a href="https://twitter.com/' . esc_attr( $twitter_user ) . '" target="_blank" rel="noopener">Urmărește pe Twitter</a>';
}
if ( ! empty( $facebook_url ) ) {
echo '<a href="' . esc_url( $facebook_url ) . '" target="_blank" rel="noopener">Profil Facebook</a>';
}
?>
Prin această metodă simplă și elegantă, evitați instalarea unor module greoaie și le oferiți cititorilor o modalitate directă de a interacționa cu autorii preferați pe rețelele sociale.