it-swarm.com.de

Benutzerdefiniertes Gravatar funktioniert nicht

Ich versuche, ein benutzerdefiniertes Gravatar in Wordpress hochzuladen, aber etwas bricht den Bildlink und ich bin nicht sicher, wie ich es reparieren soll.

add_filter( 'avatar_defaults', 'new_default_avatar' );

function new_default_avatar ( $avatar_defaults ) {
    //Set the URL where the image file for your avatar is located
    $new_avatar_url = get_bloginfo( 'template_directory' ) . '/img/icons/avatar.jpg';
    //Set the text that will appear to the right of your avatar in Settings>>Discussion
    $avatar_defaults[$new_avatar_url] = 'New Default Gravatar';
    return $avatar_defaults;
}

Der Code funktioniert, weil ich ein Optionsfeld mit der Option zum Hinzufügen des Gravatars erhalte. Das einzige, was kaputt ist, ist das eigentliche Bild.

Wenn ich mit der rechten Maustaste auf das Bild klicke, erhalte ich diese URL:

http://i2.wp.com/localhost/wordpress/wp-content/themes/blog-theme/img/icons/avatar.jpg

Ich bin mir nicht sicher, woher i2.wp.com kommt oder was es tut. Wenn ich das entferne und tue

loalhost: 888/wordpress/wp-content/themes/blogthema/img/icons/avatar.jpg

Ich kann das Gravatar-Bild sehen.

Als ich das googelte, sah ich, dass viele Leute dieses Problem wegen der Jetpack- und Photon-Plugins hatten, aber ich habe keine Plugins installiert.

4
Anindya Basu

Ich denke, das Problem ist einfach, dass Ihr Standard Avatar nicht öffentlich verfügbar ist.

Versuchen Sie es zum Beispiel

http://upload.wikimedia.org/wikipedia/de/b/b0/Avatar-Teaser-Poster.jpg

anstatt

http://loalhost:888/wordpress/wp-content/themes/blog-theme/img/icons/avatar.jpg

Beachten Sie, dass das Standard-Gravatar über http{|s}://i{0,1,2}.wp.com/... bereitgestellt wird.

Aus den Dokumenten :

Wenn Sie ein Standardbild einfügen, wird dieses Bild von Gravatar automatisch bereitgestellt, wenn dem angeforderten E-Mail-Hash kein Bild zugeordnet ist. Es gibt einige Bedingungen, die für die Standard-Bild-URL erfüllt sein müssen:

  • MUSS öffentlich verfügbar sein (z. B. nicht in einem Intranet, auf einem lokalen Entwicklungscomputer, hinter HTTP Auth oder einer anderen Firewall usw.). Standardbilder werden einem Sicherheitsscan unterzogen, um schädliche Inhalte zu vermeiden.
  • MUSS über HTTP oder HTTPS auf den Standardports 80 bzw. 443 erreichbar sein.
  • MUSS eine erkennbare Bilderweiterung haben (jpg, jpeg, gif, png)
  • DARF KEINEN Querystring enthalten (wenn ja, wird dieser ignoriert)
7
birgire

Dies liegt an dem Photon-Addon, das Sie im JetPack-Plugin aktiviert haben. Deshalb sehen Ihre Bild-URLs so aus wie ...

> http://i0.wp.com/image-url
> http://i1.wp.com/image-url
> http://i2.wp.com/image-url

Sie erhalten eine dieser drei URLs. Es ist der kostenlose CDN-Dienst von WordPress. Was großartig ist.

Das Problem ist, dass Sie es auf localhost versuchen, deshalb funktioniert es nicht. Weil WordPress CDN oder ein anderes CDN keine Bilder von localhost ziehen kann. Sie sollten es auf dem Online-Server versuchen. Deaktiviere einfach Photon und alles wird gut :)

Tipp: Schalten Sie niemals CDN-Dienste auf localhost ein. Sie werden in Fehler geraten.

EDIT: Standardmäßig sollte es so etwas haben ...

http://0.gravatar.com/avatar/...

Aber in deinem Fall benutzt es http://i2.wp.com/, was durch ein Plugin verursacht werden muss oder du hast Code in functions.php hinzugefügt.

Haben Sie Code in functions.php hinzugefügt, um alle Bilder von http://i2.wp.com/ zurückzugeben? Dies muss auch ein Fall sein.

0
Robert hue