it-swarm.com.de

Ersetzen Sie Gravatar durch img URL für Avatare

Ich habe viele, viele WordPress-Autoren. Für jedes habe ich das benutzerdefinierte wp_usermeta-Profilfeld "photo_url" verwendet, um URLs für verschiedene remote gehostete Avatar-Bilder zu speichern.

Ich zeige derzeit diese Bildavatare auf author.php an, indem ich die Zeichenfolgen durch das img-HTML-Tag wiedergebe. Aber ich möchte sie enger mit WordPress integrieren, indem ich sie über get_avatar verfügbar mache, als wären sie Standardavatare.

Ich habe mir hier mehrere Threads angesehen, einschließlich zum Deaktivieren von Gravatar . Das ist gut, aber wie stelle ich dann sicher, dass auf die URLs über alle Standard-WordPress-Avatar-Hooks an den gewünschten Stellen zugegriffen werden kann? auf Autorenprofilen, Posts und Loops?

(Ich möchte auch standardmäßig get_template_directory_uri() . '/images/avatar_default.png' verwenden, wenn "photo_url" keinen Wert hat.

Vielen Dank.

2
Robert Andrews

Sofern ich Ihre Frage zur Erstellung eines benutzerdefinierten Gravatars für Ihr Thema nicht falsch verstanden habe, fügen Sie den folgenden Code in die Datei functions.php oder in ein benutzerdefiniertes Plugin ein.

Passen Sie von dort aus den Titel und das Bild an, das Sie verwenden möchten. Der Screenshot unten zeigt das fertige Ergebnis.

add_filter( 'avatar_defaults', 'dev_designs_gravatar' );
/**
 * Display a custom Gravatar
 * 
 * @param       $avatar
 * @return      mixed
 * @author      Joe Dooley - [email protected]
 *              
 */
function dev_designs_gravatar( $avatar ) {
    $custom_avatar            = get_stylesheet_directory_uri() . '/images/avatar_default.png';
    $avatar[ $custom_avatar ] = "Custom Gravatar";

    return $avatar;
}

 See Custom Avatar in top right of the admin bar.  Select new Custom Gravatar option to set default gravatar for theme. 

1
Joe Dooley