Rozszerzenie listy domyślnych awatarów o własne propozycje czyli szybki i skuteczny sposób na nadanie stronie bardziej indywidualnego i profesjonalnego charakteru.
Ustawianie domyślnego awatara
Jeśli komentujący poda adres e-mail, który został zarejestrowany w serwisie Gravatar, to obok komentarza pojawi się wybrany przez niego obrazek. W przypadku gdy go nie poda lub adres taki nie został zarejestrowany wyświetli się obrazek nazywany domyślnym awatarem.
W panelu administracyjnym w zakładce „ustawienia / dyskusja” mamy możliwość wybrania jednej z 6 propozycji wyglądu domyślnych awatarów. Pierwsze 3 są stałymi obrazkami, kolejne są generowane losowo:
Ustawianie domyślnego awatara
Niestety, brakuje opcji pozwalającej na wybranie własnego obrazka.
Rozszerzanie listy domyślnych awatarów
Cała operacja sprowadza się do zamieszczenia prostego kodu PHP w pliku functions.php aktualnie używanego szablonu graficznego:
add_filter('avatar_defaults', 'custom_avatar');
function custom_avatar ($avatars) {
$custom_avatar_url = get_template_directory_uri().'/img/nazwa-pliku.gif';
$custom_avatar_title = "Nazwa awatara";
$avatars[$custom_avatar_url] = $custom_avatar_title;
return $avatars;
}
$custom_avatar_url – adres obrazka
W powyższym przykładzie obrazek nazywa się „nazwa-pliku.gif” i znajduje się w katalogu /img/ w aktualnie używanym szablonie graficznym.
Zamiast funkcji get_template_directory_uri można użyć get_stylesheet_directory_uri. Różnica pomiędzy nimi polega na tym, że jeśli aktualnie używany motyw jest motywem potomnym to pierwsza funkcja zwróci adres katalogu motywu rodzica a druga motywu dziecka.
$custom_avatar_title – nazwa obrazka
Zostanie wyświetlona w panelu administracyjnym, na stronie z wyborem domyślnego awatara.
Efektem takiej operacji będzie rozszerzenie listy domyślnych awatarów o naszą własną propozycję (ostatnia pozycja – „Pedobear”):
Ustawianie własnego, domyślnego awatara
Zastosowana metoda działa bez względu na to, czy wyświetlamy komentarze w tradycyjny sposób, czy za pomocą „nowego” systemu komentarzy.
Comments