web-dev-qa-db-fra.com

Remplacer l'avatar par défaut

J'ai un peu cherché sur Google et chaque site a le même filtre mais il ne semble pas fonctionner pour moi. Je ne sais pas si c'est ma configuration ou juste un ancien code.

J'essaye ceci:

add_filter( 'avatar_defaults', 'newgravatar' );  

function newgravatar ($avatar_defaults) {
    $myavatar = get_bloginfo('template_directory') . '/img/blog_noPhoto.jpg';
    $avatar_defaults[$myavatar] = "Default Avatar";
    return $avatar_defaults;
}

Cependant, lorsque je regarde le code de mon modèle, il ajoute http://0.gravatar.com/avatar/?d= avant l'URL complète de la commande. image. J'utilise le plug-in "User Avatar" mais il me semblait que c'était pareil si je désactivais cela.

1
Bjorn

Je l'ai compris. Le serveur sur lequel je travaille n'a pas accès à l'extérieur. Ainsi, même si l'image se trouve dans mon dossier de modèles, l'appel gravatar.com situé devant le chemin de l'image était à l'origine de l'erreur.

2
Bjorn

Cela vous donne cette erreur parce que l'image n'existe pas. Je voudrais essayer de le changer pour:

add_filter( 'avatar_defaults', 'newgravatar' );  

function newgravatar ($avatar_defaults) {
    $myavatar = site_url() . '/img/blog_noPhoto.jpg';
    $avatar_defaults[$myavatar] = "Default Avatar";
    return $avatar_defaults;
}

Ainsi, le lien vers le fichier image serait en réalité http://www.example.com/img/blog_noPhoto.jpg

0
westondeboer