Hur du ställer in din avatar i wordpress. Avatar plugin för wordpress

Tar emot html-kod avatar ( ) kommentator, om användaren är auktoriserad eller angett ett e-postmeddelande när han kommenterar. Används vanligtvis i kommentarsfältet.

Används i en kommentarslinga eller så måste den första parametern passeras!

Funktionsersättning (override) - i pluginet kan du skapa en funktion med samma namn, då kommer den att ersätta den nuvarande funktionen.

✈ 1 gång = 0,000196s = snabb| 50 000 gånger = 4,98s = snabb| PHP 7.1.0, WP 4.7.1

Returnerar

Sträng/falsk. HTML-tagg . falskt om begäran inte kunde skickas. Om det inte finns någon avatar, men begäran har skickats, kommer den att returnera standardavataren - inte falsk.

Användande

$id_or_email (sträng/objekt/nummer) (obligatoriskt)

ID eller e-post för användaren som du behöver för att få en avatar. Du kan också ange objekt: WP_User, WP_Post, WP_Comment eller md5 gravatar hash.

I de flesta mallar kan du ange den globala $comment-variabeln i den här parametern. Om funktionen inte fungerar (orsakar ett fel), skriv sedan ner kommentatorns e-post i den, detta görs så här:

Get_the_author_meta(" [e-postskyddad]"); $storlek (siffra) Bildstorlek. Det angivna antalet blir bredd och höjd i pixlar.
Standard: 96$default (linje)

URL till bilden som standard, för användare som inte har en avatar i gravatartjänsten.

Accepterar även:

Standard: "" (alternativvärde "avatar_default" eller "mystery")

$alt (linje) Text för "alt"-attributet för taggen .
Standard: ""$args (array)

Ytterligare argument för att få avataren:

  • höjd - Antal. Höjd i pixlar. Standard är $size .
  • bredd - Antal. Bredd i pixlar. Standard är $size .
  • force_default - Boolean. Visa alltid standardbilden och aldrig en avatar.
  • betyg - String. Minsta avatarbetyg att visa. Kan vara: "G", "PG", "R", "X". Standardvärdet för alternativet är "avatar_rating".
  • schema - String. URL-schemat som ska användas. Se set_url_scheme() .
  • klass - Array/sträng. Ytterligare klasser för img-taggen.
  • force_display - Boolean. Alltid visa avatar? Ignorerar alternativet show_avatars.
  • extra_attr - Sträng. Ytterligare HTML-attribut för IMG-taggen. Inte rensad före visning.

Standard: null

Exempel

#1. Låt oss visa den nuvarande kommentatorns avatar:

#2 Visar avatar för författaren till det aktuella inlägget

#3 Lägga till stilattributet

Parametern "extra_attr" låter dig lägga till alla IMG-taggattribut:

user_email, 30, "", "", array("class"=>"pull-left", "extra_attr"=>"style="margin: -4px 7px;"")); ?>

#4 Standardavataralternativ i diskussionsinställningar

Detta är koden för att lägga till ytterligare en bild (alternativ) i diskussionsinställningarna, som kan väljas som standardavatar. Denna avatar lagras i alternativet get_option("avatar_default").

## Lägger till ytterligare ett standardavataralternativ till diskussionsinställningarna ## Avatarfilen "def-avatar.jpg" måste laddas upp till temamappen "img" add_filter("avatar_defaults", "add_default_avatar_option"); funktion add_default_avatar_option($avatars)( $url = get_stylesheet_directory_uri() . "/img/def-avatar.jpg"; $avatars[ $url ] = "Site-avatar"; returnera $avatars; )

Som ett resultat får vi följande ytterligare alternativ:

#5 Standardavatar

Om du för det föregående alternativet behöver lägga till en krok, gå sedan till inställningarna och välj standardavatar, då kommer det här alternativet att ställa in standardavatar omedelbart...

Detta alternativ ställer in standardavataren i farten, för funktionerna: get_avatar_url() och get_avatar_data() . Standardavataren kommer endast att installeras om standardavataren inte anges i funktionen, dvs. Parametern "default" är inte inställd.

## Ställer in standardavatar ## Avatarfilen "def-avatar.jpg" måste laddas upp till temamappen "img" add_filter("pre_get_avatar_data", "replace_default_avatar"); funktion replace_default_avatar($args)( // adminpanel och diskussionssida där standardavataren är konfigurerad... // if(is_admin() && get_current_screen()->base === "options-diskussion") return $args; statisk $defava; if($defava === null) $defava = get_option("avatar_default", "mystery"); // påskynda // Om standardava används kommer parametern "default" att fungera om den är inställd för avatarfunktioner om (! $args["default"] || $defava == $args["default"])( $args["default"] = get_stylesheet_directory_uri() . "/img/def-avatar.jpg "; ) returnera $ args;)

Lista över ändringar

Från version 2.5.0 Introducerad.
Från version 4.2.0 Valfri $args-parameter tillagd.

Koda skaffa avatar: wp-includes/pluggable.php WP 5.3.2

96, "height" => null, "width" => null, "default" => get_option("avatar_default", "mystery"), "force_default" => false, "rating" => get_option("avatar_rating") , "scheme" => null, "alt" => "", "class" => null, "force_display" => false, "extra_attr" => "",); if (empty($args)) ( $args = array(); ) $args["size"] = (int) $size; $args["default"] = $default; $args["alt"] = $alt; $args = wp_parse_args($args, $defaults); if (empty($args["höjd"])) ( $args["höjd"] = $args["storlek"]; ) if (empty($args["bredd"])) ( $args["bredd" " "] = $args["size"]; ) if (is_object($id_or_email) && isset($id_or_email->comment_ID)) ( $id_or_email = get_comment($id_or_email); ) /** * Filtrerar om det ska hämtas avatar URL tidigt. * * Att skicka ett icke-nullvärde kortsluter effektivt get_avatar(), skickar * värdet genom filtret (@se "get_avatar") och kommer tillbaka tidigt. * * @sedan 4.2.0 * * @param string|null $avatar HTML för användarens avatar. Standard null. * @param blandat $id_or_email Gravataren att hämta. Accepterar ett user_id, gravatar md5 hash, * användarens e-post, WP_User objekt , WP_Post-objekt eller WP_Comment-objekt. * @param array $args Argument skickas till get_avatar_url(), efter bearbetning. */ $avatar = apply_filters("pre_get_avatar", null, $id_or_email, $args); if (! is_null ($) avatar)) ( /** Detta filter är dokumenterat i wp-includes/pluggable.php */ return apply_filters("get_avatar", $avatar, $id_or_email, $args["size"], $args["default" ], $args["alt"], $args); ) if (! $args["force_display"] && ! get_option("show_avatars")) (retur false; ) $url2x = get_avatar_url($id_or_email, array_merge($ args, array("size" => $args["size"] * 2))); $args = get_avatar_data($id_or_email, $args); $url = $args["url"]; if (! $url || is_wp_error($url)) ( return false; ) $class = array("avatar", "avatar-" . (int) $args["size"], "photo"); if (! $args[" found_avatar" ] || $args["force_default"]) ( $class = "avatar-default"; ) if ($args["class"]) ( if (is_array($args["class"])) ( $class = array_merge($ klass, $args["klass"]); ) else ( $klass = $args["klass"]; ) ) $avatar = sprintf(" ", esc_attr($args["alt"]), esc_url($url), esc_url($url2x) . " 2x", esc_attr(join(" ", $klass)), (int) $args["höjd" ], (int) $args["width"], $args["extra_attr"]); /** * Filtrerar avataren som ska hämtas. * * @since 2.5.0 * @since 4.2.0 The `$args` parameter lades till * * @param sträng $avatar tagg för användarens avatar. * @param blandad $id_or_email Gravataren att hämta. Accepterar ett user_id, gravatar md5 hash, * användare-post, WP_User objekt, WP_Post objekt eller WP_Comment objekt. * @param int $size Square avatar bredd och höjd i pixlar att hämta. * @param sträng $default URL för standardbilden eller en standardtyp. Accepterar "404", "retro", "monsterid", * "wavatar", "indenticon","mystery" (eller "mm ", eller "mysteryman"), "tom" eller "gravatar_default". * Standard är värdet på alternativet "avatar_default", med en reserv av "mystery". * @param sträng $alt Alternativ text att använda i avataren bildtagg. Tomt som standard. * @param array $args Argument skickade till get_avatar_data(), efter bearbetning. */ return apply_filters("get_avatar", $avatar, $id_or_email, $args["size"], $args[ "default "], $args["alt"], $args); )

Plugin-programmet Lägg till lokal avatar implementerar ett uppladdningsformulär för avatarer på den registrerade användarens profilsida. Först måste du ladda ner detta plugin från dess officiella sida eller så kan du använda sökningen via webbplatsens kontrollpanel.

När du har aktiverat insticksprogrammet kommer "Avatar"-objektet att visas i den vänstra menyn på kontrollpanelen i avsnittet Användare.

Plugin-inställning

Gå gärna till inställningssidan "Avatar" och utför följande steg i ordning:

  1. Markera rutan bredvid "Visa avatarer"
  2. I avatarstilar ställer du in värdet på "G" - visa för valfri publik
  3. Vi väljer den avatarstorlek som passar oss enligt webbplatsens design
  4. Twitter Avatar - markera den här rutan om du vill att avatarerna för användare som är registrerade på Twitter ska laddas
  5. Gravatar som standard - välj en av de vanliga WordPress-avatarlösningarna
  6. Standardbild - i det här fältet kan du ange hela sökvägen till avataren, som kommer att visas om användaren inte har en (till exempel: http://www.your-site.com.ua/avatars/standart-ava .jpg)
  7. Använd skärmdumpar – krävs om du använder skärmdumpar (jag använder dem inte, så jag kryssar aldrig i rutan)
  8. Postavatarer - Ersätter taggen med avataren för den här e-postadressen i inläggets innehåll
  9. Användarnedladdningar är den viktigaste punkten. Vi markerar rutan, vilket gör att användare kan ladda upp sina avatarer; glöm inte att ange namnet på mappen som du vill ladda upp bilder till. Och viktigast av allt, i samma fält finns det en annan kryssruta bredvid metoden $_SERVER["DOCUMENT_ROOT"], den måste också markeras (denna kryssruta anger hela sökvägen till avatarer - som vi alla vet, och de som inte gör det vet, vet att sökvägar till bilder fungerar i WordPress endast fullständiga)
  10. Bildbeskärning – beskär bilder som inte är fyrkantiga
  11. Wrap Avatars with URL - alternativet klipper URL:en till avataren (exempel: http://your-site.ua/avatar-name.jpg)
  12. Nick - avatar innehållsförteckning - bockade, men märkte ingen effekt
  13. I fältet "övrig data" väljer du att inte visa en länk till författaren
  14. Tja, äntligen trycker vi på den efterlängtade knappen "Uppdatera Avatarinställningar"

Som ett resultat kommer du efter uppdateringen att få denna situation på sidan:

Vi använder

Som alltid kollar vi allt på vår personliga profil, går till menyn Användare -> Din profil och längst ner hittar vi en magisk form för att ladda upp en avatar, jag tror att det inte finns något behov av att förklara hur man använder den.

Visar avataren i mallen

Om vi ​​går tillbaka till sidan för plugin-inställningar, längst ner ger utvecklaren koden för att anropa avataren i temat. Låt oss ta reda på det.

För det första, om du vill att avataren ska visas i kommentarerna måste du göra ändringar i filen functions.php. Öppna först den (helst med Notepad++), tryck på den uppskattade Ctrl+F-kombinationen och skriv in “avatar”. Efter detta kommer du att se raden:

Byt ut den mot:

Om du vill visa den registrerade användarens avatar var som helst i mallen måste du lägga till följande kod till detta:

Notera: siffrorna 60 och 40 är storleken på avataren i pixlar

Förresten, om du vill använda avatarer i en widget eller i ett användarbehörighetsformulär, läs artiklarna

Vid första anblicken är detta ett utmärkt plugin, men det finns ett betydande MEN - detta är justeringen av den interna koden för temat och den vilda komplexiteten i dess implementering på profilsidan (detta är när du vill ha användaren på din blogg att justera sin profil på separat sida inbyggd i webbplatsdesignen, och inte från adminpanelen - även om du är öppen, så är detta vad du behöver) och det faktum att du bara kan ladda upp en liten bild.

Och så att fördomar inte uppstår alls, prova plugin - enligt min mening den mest värda lösningen i denna fråga.

En kort notering om hur du ställer in en godtycklig bild som din standardavatar. Det finns minst tre alternativ för att göra detta. Vilken skulle passa bättre i en specifik situation skrivs nedan.

Gravatar-tjänsten är inte särskilt populär, särskilt i RuNet. Därför finns många kommentarer kvar utan ava. För sådana fall, så att napparna inte är desamma, i WordPress-inställningar Du kan ställa in dynamiska avatarer (alla typer av monster).

Men ibland måste du vara "på varumärke" för din webbplats och ställa in en anpassad avatar som standard. Det här inlägget är precis för sådana fall.

Observera att standardbilduppsättningen endast kommer att visas om användaren inte har en avatar. Och så blir det förvirring under testningen...

Alternativ 1: lägg till en inställning (ny standardavatar) på adminpanelen

Koden nedan kommer att lägga till ytterligare ett avataralternativ när du väljer standardavatar i adminpanelen, i diskussionsinställningarna.

## Lägger till ytterligare ett standardavataralternativ till diskussionsinställningarna ## Avatarfilen "def-avatar.jpg" måste laddas upp till temamappen "img" add_filter("avatar_defaults", "add_default_avatar_option"); funktion add_default_avatar_option($avatars)( $url = get_stylesheet_directory_uri() . "/img/def-avatar.jpg"; $avatars[ $url ] = "Site-avatar"; returnera $avatars; )

Som ett resultat får vi:

Notera: du kan ta reda på vilken standardavatar som för närvarande är vald genom att hämta värdet av alternativet "avatar_default" - get_option("avatar_default") .

Nackdelen med denna metod är att du inte bara kan installera koden, utan du måste också "gå" till adminpanelen och aktivera standardavataren. Det här tillvägagångssättet kan helt enkelt vara oacceptabelt när du strikt behöver ställa in en ava så att den inte kan ändras... Eller när du behöver att den angivna ava alltid ska vara standard, oavsett vem och vad som har ställts in där i inställningarna.

Jag skrev den andra versionen speciellt för sådana fall. Och det visade sig vara användbart, det är inte så enkelt som jag förväntade mig, men det här är en text som ingen behöver, så vi hoppar över den...

Alternativ 2: ange standardavatar "on the fly", genom ett filter

Det här alternativet ställer in standardava direkt efter att du har infogat koden och tillåter dig inte att ändra ava-inställningen i adminpanelen.

Kroken tar hänsyn till standardparametern som anges i funktionerna för att visa eller få en avatar. De där. till exempel, om du anropar funktionen get_avatar() med standardparametern, kommer avataren som anges i standardparametern att visas, och inte den som anges i kroken.

## Ställer in standardavatar ## Avatarfilen "def-avatar.jpg" måste placeras i temamappen "img" add_filter("pre_get_avatar_data", "replace_default_avatar"); funktion replace_default_avatar($args)( // adminpanel och diskussionssida där standardavataren är konfigurerad... // if(is_admin() && get_current_screen()->base === "options-diskussion") return $args; statisk $defava; if($defava === null) $defava = get_option("avatar_default", "mystery"); // snabbare // Om standardava används kommer parametern "default" att fungera // om den är inställd för funktionsavatarer if(! $args["default"] || $defava == $args["default"])( $args["default"] = get_stylesheet_directory_uri() . "/img/def-avatar .jpg"; ) returnera $args;)

Alternativ 3: ange en länk till standardavataren när du anropar funktionen

Detta är kanske det mest oflexibla alternativet. Jag minns inte att jag någonsin använt den. Men det kan absolut komma väl till pass...

För att få en avatar eller dess data finns det tre funktioner:

  • get_avatar() - Gets html-kod för kommentatorns avatar.
  • get_avatar_data() – Hämtar en uppsättning avatardata.
  • get_avatar_url() - Hämtar avatar-URL från den medföljande e-posten, ID eller användarobjekt.

I var och en av dem kan du ange standardparametern och därmed ställa in standardavatar-URL. Jag kommer att ge ett exempel för varje funktion där standardparametern är specificerad:

Echo get_avatar(" [e-postskyddad]", 48, "http://example.com/default-avatar.png"); $ava_data = get_avatar_data(" [e-postskyddad]", array("size" => 48, "default" => "http://example.com/default-avatar.png",)); echo $ava_data["url"]; $url = get_avatar_url(" [e-postskyddad]", array("size" => 48, "default" => "http://example.com/default-avatar.png",)); echo $url;

För att fortsätta med implementeringen vill jag överväga ett intressant plugin som hjälper till att diversifiera bloggkommentarflödet. Alla användare är inte registrerade i Gravatar, så då och då dyker det upp vanliga platshållarbilder på sajten. I systeminställningarna kan du välja ett av alternativen för att automatiskt ersätta ikoner (MonsterID, Wavatar, Identicon) eller använda din egen bild. Å ena sidan lägger du till originalitet till listan med kommentarer, å andra sidan har allt detta ingenting att göra med en specifik användare, eftersom genereras slumpmässigt. Det finns en lösning, och detta är WP First Letter Avatar-plugin.

Huvudsyftet med modulen är automatisk installation ursprungliga avatarer för WordPress-användare utan att ansluta till Gravatar-tjänsten (i själva verket dess alternativ). När du skapar motsvarande bilder används den första eller valfri bokstav i användarens namn + en flerfärgad bakgrund läggs till. Som ett resultat får du något sånt här:

WP First Letter Avatar har många olika inställningar och funktioner, det är tydligt att författaren har arbetat med allt in i minsta detalj. Modulen kommer att lägga till några ljusa färger till din blogg, och kommer också att locka besökares uppmärksamhet och kanske uppmuntra dem att skriva. Uppenbarligen är detta en mycket mer intressant lösning än grundläggande "stubbar", plus att bilderna är direkt knutna till författarens personlighet.

Huvudfunktioner i WP First Letter Avatar:

  • Insticksprogrammet genererar avatarer i WordPress för nästan alla användarnamn: latinska, kyrilliska, siffror och till och med arabiska alfabetet.
  • Olika storlekar stöds: 48px, 96px, 128px, 256px, 512px och modulen väljer det mest optimala alternativet för att inte visa för mycket stora bilder i de fall där minst 48px är tillräckligt.
  • I arkivet hittar du även PSD-källor för standardikonerna.
  • Du kan korrigera de aktuella bilderna (med en PSD-layout) eller lägga till dina egna absolut nytt set. Detta kommer att göra ditt projekt så unikt som möjligt, eftersom ingen annan kommer att ha sådana avatarer för WordPress-kommentarer.
  • All grafik är optimerad genom TinyPNG-tjänsten så att den är så lätt som möjligt.
  • Lösningen är kompatibel med bbPress och wpDiscuz. Med BuddyPress, använd en speciell modifiering - BuddyPress First Letter Avatar.

Installation och konfiguration av WP First Letter Avatar

Ladda ner plugin-programmet eller sök efter namn i adminpanelen. En mycket viktig detalj - den behöver minst PHP 5.4 för att fungera! Om du vid aktivering ser ett meddelande om kritiskt fel, då är problemet troligen med PHP-versionen. Kontakta din värd för hjälp.

När recensionen skrevs var version 2.2.7 aktuell. Det krävde minst WordPress 4.6, så du måste installera webbplatser på äldre versioner. Det finns inte många nedladdningar - mer än 3 tusen, poängen är nästan maximal - 4,8 (någon gav 1 poäng för att de inte kunde starta den).

Efter aktivering av modulen kommer den omedelbart att börja fungera utan ytterligare inställningar - alla WordPress-avatarer som inte använder Gravatar kommer att få bilder med den första bokstaven i deras namn. Du kan göra några ändringar i lösningen i avsnittet "Inställningar" - "WP First Letter Avatar".

Det finns:

  • Bokstavsindex — numret på bokstaven som läses i kommentatorns namn: "0" är den första, "1" är den andra, etc., "-1" är den sista.
  • Filformat - png-format eller jpg.
  • Okänt bildnamn - filnamn för okända smeknamn där det är omöjligt att tillämpa igenkänningsalgoritmen (som standard mystery.png).
  • Avataruppsättning - den aktuella uppsättningen WordPress-avatarer (det här är faktiskt namnet på mappen på webbhotellet där platshållarikonerna lagras wp-first-letter-avatar/images/default/).
  • Använd Gravatar — om original Gravatar ska inkluderas på webbplatsen. Om det är inaktiverat kommer alla bilder att genereras via WP First Letter Avatar.
  • Runda avatarer – runda bilder (som Google+).
  • Pluginfilterprioritet - när du använder flera plugins för avatarer, denna inställning låter dig göra prioriteringar. Så, till exempel, om WP First Letter Avatar kommer att störa arbetet med andra moduler, minska denna parameter. Ibland bör du ställa in ett värde från 11 till 9999 för att göra det till en högre prioritet.

Total. Vad du än säger, plugin är cool. För det första ser det original ut, och för det andra är det perfekt implementerat och genomtänkt till minsta detalj. Om du letar efter en lämplig lösning för att göra ditt kommentarflöde mer levande och unikt, finns det ingen bättre metod. Samtidigt kan du enkelt ändra de grundläggande ikonalternativen till dina egna. Det enda är att jag inte vet hur det är med belastningen på sajten med stora besök: å ena sidan är bilderna optimerade, å andra sidan är det förstås lättare att visa en bild för alla. Jag tror dock inte att det finns betydande laddningsförseningar, särskilt eftersom kommentarer ofta delas upp i sidor. I allmänhet, prova WP First Letter Avatar och skriv dina intryck nedan.

Flexor 5

WordPress har använt tjänsten Gravatar.com som avatarer under lång tid, men många människor förstår fortfarande inte hur den här tjänsten fungerar och hur man ställer in sin avatar där. Det är därför på forumen WordPress nybörjare bloggare ställer regelbundet frågor om hur man ställer in och visar sina egna lokala avatarer. Plugin-programmet gör det väldigt enkelt att bädda in stöd för dina egna avatarer i din blogg, uppladdade av användare via deras profil.

Ladda ner plugin från den startsida och installera det:

1. Packa upp arkivet.

2. Kopiera mappen enkla-lokala-avatarer V /wp-content/plugins/.

3. Gå till bloggens adminpanel på "fliken" Plugins" och aktivera insticksprogrammet.

Insticksprogrammet har en enda inställning, som du hittar i " Alternativ\Diskussion":

Genom att markera den här rutan kommer du att förbjuda vanliga "prenumeranter" från att ställa in sina lokala avatarer, och lämnar denna behörighet för "hantering" av bloggen.

Själva avataren ställs in i användarprofilen. Allt du behöver göra är att välja din avatarbild och trycka på " Uppdatera profil". Denna avatar kommer att laddas ner till mappen uppladdningar din blogg (eller till mappen du ställer in för mediauppladdningar i dina blogginställningar).

Avatarbilden laddas upp till bloggen utan några ändringar. Avatarer rätt storlek från denna bild bildas på begäran. Till exempel visas en avatar i storleken 96x96 i profilen - när du öppnar profilen skapas en avatar med exakt dessa dimensioner.

Den stora bekvämligheten med plugin är att den inte ersätter gravatarer, utan fungerar tillsammans med dem – om en lokal avatar är installerad kommer den att visas med samma mått som gravatarer. Om en lokal avatar inte är installerad kommer en gravatar att visas istället. På så sätt undviker du situationer där för 20 kommentarer från olika författare endast en avatar av kommentatorn visas, som inte var för lat för att ladda upp den till bloggen.

Insticksprogrammet skapar en avatar av önskad storlek endast en gång vid den första begäran. Då tas en färdig avatar och därför blir det ingen extra belastning. På olika platser på bloggen kan avatarer visas i olika storlekar (i enlighet med de inställda gravatarutdatastorlekarna), så plugin kommer helt enkelt att skapa flera avatarer av önskad storlek:

Insticksprogrammet är väldigt enkelt, men det utför samtidigt de funktioner som tilldelats det utan någon finjustering. Om du behöver en lokal avatar-plugin för din blogg WordPress, då hittar du inget bättre.