Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Puchar WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Jak dodać metadane Facebook Open Graph w motywach WordPress

Chcesz mieć pewność, że treść Twojej witryny internetowej WordPress wygląda świetnie na Facebooku? Musisz dodać metadane Facebook Open Graph do twojego motywu WordPress.

Metadane Open Graph przekazują Facebookowi i innym witrynom społecznościowym informacje o twoich wpisach i stronach WordPress i pozwalają kontrolować ich wygląd, gdy ktoś je udostępnia.

W tym artykule pokażemy, jak łatwo dodać metadane Facebook Open Graph w motywach WordPress. Podzielimy się trzema różnymi metodami, w tym metodą All in One SEO, której używamy w WPBeginner, abyś mógł wybrać tę, która najlepiej pasuje do Twojej witryny internetowej WordPress.

How to Add Facebook Open Graph Meta Data in WordPress Themes

Możesz skorzystać z poniższych odnośników, aby przejść bezpośrednio do metody, która najbardziej Cię interesuje:

Metoda 1: Dodawanie metadanych Facebook Open Graph za pomocą AIOSEO

All in One SEO to popularna wtyczka WordPress SEO używana przez ponad 3 miliony witryn internetowych. Pozwala ona łatwo zoptymalizować twoją witrynę internetową pod kątem wyszukiwarek, a także platform społecznościowych, takich jak Facebook i Twitter.

Najpierw należy zainstalować i włączyć darmową wtyczkę All in One SEO. Aby uzyskać więcej informacji, zobacz nasz przewodnik krok po kroku, jak zainstalować wtyczkę WordPress.

Po włączaniu należy przejść na stronę All in One SEO ” Media społecznościowe. Tutaj możesz wpisz adres URL twojej strony na Facebooku i wszystkich innych mediów społecznościowych.

The AIOSEO SEO plugin for WordPress

Następnie kliknij kartę Facebook u góry strony, a zobaczysz, że znaczniki Open Graph są domyślnie włączone.

Możesz kliknąć przycisk „Prześlij lub wybierz obrazek”, aby wybrać domyślny obrazek Facebook OG, jeśli artykuł nie ma obrazka Open Graph.

Set default Open Graph image

Jeśli przewiniesz w dół, możesz dostosować własną nazwę witryny, opis i inne ustawienia. Nie zapomnij kliknąć niebieskiego przycisku „Zapisz zmiany” po zakończeniu.

Po ustawieniu metatagów Open Graph dla całej witryny, następnym krokiem jest dodanie metadanych Open Graph dla poszczególnych wpisów i stron.

Domyślnie AIOSEO użyje tytułu i opisu Twojego wpisu jako tytułu i opisu Open Graph. Możesz także ręcznie ustawić miniaturkę Facebooka dla każdej strony i wpisu.

Wystarczy edytować wpis lub stronę i przewinąć w dół do sekcji „Ustawienia AIOSEO” poniżej edytora. Z tego miejsca przełącz się na kartę Społecznościowe, a zobaczysz podgląd twojej miniaturki.

AIOSEO Facebook preview

Można tu ustawić obrazek mediów społecznościowych, a także tytuł i opis.

Wystarczy przewinąć w dół do pola „Źródło obrazka”. Możesz użyć wyróżniającego się obrazka, przesłać własny obrazek lub skorzystać z innych opcji.

Choose which WordPress image to use as your Facebook thumbnail

Metoda 2: Ustaw metadane Facebook Open Graph za pomocą Yoast SEO

Yoast SEO to kolejna wtyczka WordPress SEO, której można użyć do dodania metadanych Facebook Open Graph do dowolnej witryny WordPress.

Pierwszą rzeczą, którą musisz zrobić, jest zainstalowanie i włączanie wtyczki Yoast SEO. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem krok po kroku, jak zainstalować wtyczkę WordPress.

Po włączaniu, dane Facebook Open Graph są domyślnie włączone.

Możesz to sprawdzić, przechodząc do Yoast SEO ” Ustawienia i przewijając w dół do sekcji Udostępnianie społecznościowe. Teraz możesz upewnić się, że funkcja danych Open Graph jest włączona.

Enable Facebook Open Graph

należy przejść do SEO ” Społecznościowe i wybrać opcję „Włączone” w sekcji „Dodaj metadane Open Graph”.

Możesz zapisać twoje ustawienia lub kontynuować i skonfigurować inne opcje społecznościowe Facebooka.

Możesz podać identyfikator aplikacji Facebook, jeśli używasz go dla Twojej strony na Facebooku i insights. Możesz również zmienić tytuł, opis i obrazek Twojej strony głównej Open Graph.

Wreszcie, można ustawić domyślny obrazek, który będzie używany, gdy żaden obrazek nie jest ustawiony dla wpisu lub strony.

Wersja Premium Yoast SEO pozwala również na ustawienie metadanych Open Graph dla poszczególnych wpisów i stron. Wystarczy edytować wpis lub stronę i przewinąć w dół do sekcji „Yoast SEO” poniżej edytora.

Set open graph meta data for post and pages using Yoast

W tym miejscu można ustawić miniaturkę Facebooka dla danego wpisu lub strony. Jeśli nie ustawisz tytułu lub opisu wpisu, wtyczka użyje twojego meta tytułu i opisu SEO.

Możesz teraz zapisać swój wpis lub stronę, a wtyczka zapisze Twoje metadane Facebook Open Graph.

Metoda 3: Dodawanie metadanych Facebook Open Graph za pomocą kodu

Ta metoda zazwyczaj wymaga skopiowania i wklejenia kodu do pliku functions.php twojego motywu . Zalecamy jednak dodanie kodu za pomocą wtyczki WPCode, która ułatwia i zwiększa bezpieczeństwo dodawania własnego konfiguratora w WordPress.

WPCode zawiera również bibliotekę gotowych fragmentów kodu, w tym jeden do dodawania podstawowych tagów Open Graph, więc zajmuje to tylko kilka kliknięć.

Najpierw zainstaluj i włącz darmową wtyczkę WPCode. Więcej szczegółów można znaleźć w naszym przewodniku na temat instalacji wtyczki WordPress.

Po włączaniu, możesz przejść do Code Snippets ” + Add Snippet z twojego kokpitu WordPress.

Wyszukaj w bibliotece fragment kodu „Dodaj podstawowe tagi Open Graph”. Gdy go znajdziesz, najedź na niego kursorem i kliknij przycisk „Użyj fragmentu kodu”.

Select the 'Add basic Open Graph Tags' snippet from the library

Następnie WPCode automatycznie doda kod, a także ustawi nagłówek witryny jako lokalizację metody wstawienia.

WPCode automatically adds the code for Open Graph data

Następnie wystarczy przełączyć fragment kodu na „Aktywny” i kliknąć przycisk „Aktualizuj”. Twój motyw zacznie teraz wyświetlać metadane Facebook Open Graph w nagłówku WordPress.

Activate and update snippet

Jeśli jesteś zaawansowanym użytkownikiem, możesz skopiować i wkleić poniższy kod do pliku functions.php twojego motywu.

Ponieważ wymaga to bezpośredniej edycji plików twojego motywu, upewnij się, że wykonałeś kopię zapasową plików motywu przed wprowadzeniem jakichkolwiek zmian.

//Adding the Open Graph in the Language Attributes
function add_opengraph_doctype( $output ) {
        return $output . ' xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml"';
    }
add_filter('language_attributes', 'add_opengraph_doctype');
 
//Lets add Open Graph Meta Info
 
function insert_fb_in_head() {
    global $post;
    if ( !is_singular()) //if it is not a post or a page
        return;
        echo '<meta property="fb:app_id" content="Your Facebook App ID" />';
        echo '<meta property="og:title" content="' . get_the_title() . '"/>';
        echo '<meta property="og:type" content="article"/>';
        echo '<meta property="og:url" content="' . get_permalink() . '"/>';
        echo '<meta property="og:site_name" content="Your Site Name Goes Here"/>';
    if(!has_post_thumbnail( $post->ID )) { //the post does not have featured image, use a default image
        $default_image="http://example.com/image.jpg"; //replace this with a default image on your server or an image in your media library
        echo '<meta property="og:image" content="' . $default_image . '"/>';
    }
    else{
        $thumbnail_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'medium' );
        echo '<meta property="og:image" content="' . esc_attr( $thumbnail_src[0] ) . '"/>';
    }
    echo "
";
}
add_action( 'wp_head', 'insert_fb_in_head', 5 );

Pamiętaj, aby dodać nazwę twojej witryny w linii 17, gdzie jest napisane „Your Site Name Goes Here”. Następnie należy zmienić domyślny adres URL obrazka w wierszu 19 na jeden z twoich własnych adresów URL obrazków.

Zalecamy umieszczenie tam obrazka z Twoim logo, więc jeśli Twój wpis nie ma miniaturki, to pobierze logo Twojej witryny.

Musisz również dodać twój identyfikator aplikacji Facebook w linii 13. Jeśli nie masz aplikacji Facebook, możesz usuwać linię 13 z kodu.

Przewodniki ekspertów na temat Facebooka i WordPressa

Teraz, gdy już wiesz, jak dodać metadane Facebook Open Graph, możesz chcieć zobaczyć kilka innych przewodników związanych z tym, jak możesz korzystać z Facebooka w WordPress:

Mamy nadzieję, że ten artykuł pomógł Ci dodać metadane Facebook Open Graph w WordPress. Zachęcamy również do zapoznania się z naszym przewodnikiem na temat tego, jak zorganizować rozdanie lub konkurs w WordPressie, a także z wyborem najlepszych wtyczek do Facebooka, które pomogą Ci rozwinąć Twojego bloga.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz na niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak WPBeginner jest finansowany, dlaczego to ma znaczenie i jak możesz nas wspierać. Oto nasz proces redakcyjny.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Najlepszy zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi - zbiór produktów i zasobów związanych z WordPressem, które każdy profesjonalista powinien mieć!

Reader Interactions

221 komentarzyZostaw odpowiedź

  1. Daniel

    This is indeed helpful but SEO Yoast’s interface doesn’t look like this anymore. This needs updating.

    • WPBeginner Support

      Thank you for letting us know that their interface has been updated, we will look to update it when we update the article :)

      Administrator

  2. Jiří Vaněk

    Thanks for the tutorial. I’ve been adding Open Graph in AIO SEO and I’m still surprised that AIO SEO tells me there isn’t one. I spent about half an hour on this before I found out that I had to click refresh again in the SEO evaluation so that the plugin would download the new WordPress settings and do a new SEO analysis. Such a simple thing and it took me so long.

  3. Harry Goldhagen

    Hello, thanks for the code snippet, I look forward to trying it. One question, will it then allow FB to pick up the featured image (is that the „thumbnail”?) and excerpt for each blog post, or will it just use the sitewide logo image designated in line 19? I’ve tried Blog2Social, but the posts lacked the featured image and excerpt and did not look good. Thanks!

    • WPBeginner Support

      The code snippet should set your featured image to the featured image of the post.

      Administrator

  4. Kiss Attila

    Hi,

    Awesome code. BUT, why it’s not changes og:url and og:image. I tried with a post with no image set as default. But checking it on fb debugger, it picks up my logo from the footer instead of getting the image I added in the og:image part.
    Title is working it changed from the origin and I pasted og:description too. All the most important metas but image and url.
    Why is that?

    Thanks,
    Atila

    • WPBeginner Support

      Please ensure you’ve cleared any caching on your WordPress site as that is the most common reason it would not update to match the code.

      Administrator

  5. rehman

    hi how can i modify the code to add OG tags for custom post types i tried by changing this line code if ( !is_singular()) to if ( is_singluar( array( 'post’, 'publications’) ) ) but my website throw fatal error. can anyone please help thank you

    • WPBeginner Support

      You should not need to modify the code to work with custom post types and it should work on them :)

      Administrator

  6. gabriele biagini

    Hello, i tried all the solution suggested still i miss some parameter to the schema:
    A required field is missing: id
    A required field is missing: price
    A required field is missing: availability

    Is there any solution via plugin or updating the function.php code?

    • WPBeginner Support

      That would be markup for a product you are selling on your site and All in One SEO does have the option to add that markup to your products.

      Administrator

  7. Richard S.

    Wow, this really worked for me, you’re awesome!

    • WPBeginner Support

      Glad our guide was helpful :)

      Administrator

  8. evelien

    You did it again – looking for a solution, and you deliver ! You rule :)

    • WPBeginner Support

      Glad our guide was helpful :)

      Administrator

  9. Eddie

    Does this also work for sms text message url previews or just Facebook?

    • WPBeginner Support

      While not specifically for SMS messages, the markup helps with that as well.

      Administrator

  10. Indranil Paul

    If I use the Yoast SEO settings, will it take times for showing the perfect result in facebook share? Or will it start working within minutes?

    • WPBeginner Support

      That would depend on your site’s caching and any caching on Facebook for how long it takes

      Administrator

      • Indranil Paul

        I’m facing this problem in all social sharing sites.

        • WPBeginner Support

          If it is not showing what you set on every social site, you would want to reach out to Yoast’s support and let them know to ensure there isn’t a problem with the plugin.

  11. Udaya Bhaskar

    Hello
    When I share my post in facebook it’s how my post featured image .
    But when I share in whatsapp it’s not show my featured image with link please help me..

    • WPBeginner Support

      If you’re using Yoast to add the meta data, we would first recommend reaching out to Yoast to ensure that there aren’t any known issues.

      Administrator

  12. Colin

    My title looks like this in the preview:

    %%title%% %%page%% %%sep%% %%sitename%%

    How do I fix this?

  13. Pramod Singh

    Hello please help me
    Facebook has blocked my site, now in the Facebook developer app, I can not even link my site because it has blocked the Facebook

    Please tell me how to unblock your website with Facebook

  14. Sadie

    Hello

    Please can you advise when using a child theme – do i need to copy the parent theme functions.php and then add the above script to a newly created functions.php and upload it to the child theme folder OR do I just add the script to the parent theme functions.php

    Thanks for reading Sadie

  15. Max

    How would I remove the „By …” from appearing on the card?

    Currently we have an issue where it displays as: site-name | By site-name

    We just want the first website name to appear and not twice.

  16. Laura

    I’m using this on a self-hosted website. What do I do about the USER ID that I’m supposed to replace since the site is not on wordpress.com?

  17. Suraj

    Hello,
    I have a big problem!!
    When I share my post in facebook it’s how my post featured image .
    But when I share in whatsapp it’s not show my featured image with link please help me..

  18. Malik Adil

    All Good, But still one problem, How to add Facebook ID..After using this code, following Facebook ID message appears.

    The 'fb:app_id’ property should be explicitly provided, Specify the app ID so that stories shared to Facebook will be properly attributed to the app. Alternatively, app_id can be set in url when open the share dialog.

  19. Eric Hepperle

    I enjoyed this article, but in January 2018 this *manual code* option doesn’t appear to work completely. For instance, though I have verified that the default image property works, when I create a new post, I don’t see ANYWHERE a field where one can begin to edit „open graph (og)” metadata.

    Suggestions? Thanks!

  20. Mahesh Yadav

    Thanks for such great information. But I have one question.

    How helpful it is to add facebook graph meta data in our site..?

    And if it is very much helpful, for what purpose, it is helpful..?

  21. elsa

    This plugin gave me a white screen of death, obviously a conflict with something or memory exceeded

  22. Jin Miller

    What if I am wanting to change the thumbnail image not for the whole site, but just a page off my wordpress site : For example I’m trying to share an event page from my site and would like a unique, relevant thumbnail. Help?

    • Nikki

      Hi Jin, Did you ever get an answer to your question? I’m looking for the same information.
      Thank yoU!

  23. Vic

    Hey, I wanted to include Worpress SEO by Yoast but Im not sure if latest version is compatible with my version of Worpress (4.2.2) do you know if is safe to activate?

    Thanks guys

  24. Martin

    Does my Facebook profile have to be public in order for my Facebook User ID to be good to use here?

  25. Martin

    I’ve added the code for manually adding this to my theme. However, things aren’t working. Does my profile have to be public in order for my Facebook user id to be accessible?

  26. Jordan Carter

    Is this still valid for today? I tried it and works, but I noticed in the code the following: „xmlns:fb=”http://www.facebook.com/2008/fbml”’;

    Isn’t 2008 a little old? Is there a newer protocol we should be using today?

  27. Wagner Lungov

    Hello, thanks for posting. I remained with one doubt. I understood that the in each post is dynamically constructed by the functions you explained so well. What I can’t figure out is where the variables called by that function are defined and stored. When you put property=”og:type” content=”article”/, OK you are defining with a fixed string. But when you use: property=”og:title” content=”’ . get_the_title() . '”, where is the function get_the_title() going to get it? How can I define before hand those values for each post in a way that the code will pick the right meta data for each parameter?

    • Jordan Carter

      get_the_title() will get your post title. If you want to use something else, you could always get the value from a meta box. With the advanced custom fields plugin, it would be something like get_field(„my_field”), or with a regular WordPress custom meta field it would be get_post_meta($post->ID, „my_field”, true). See get_post_meta()

  28. Jolanda

    Nicely explained! I try to figure out where I can add the code in checking the size of the featured image, since FB needs a size with a minimum of 200px for both width and height, otherwise it will use another image from the post.
    Any help would be great!

  29. Mohsin Rafique

    Nicely explained & works like a charm.

  30. Devyn

    I’ve been trying to use Yoast to enable my meta data so I can use Rich Pins on Pinterest. I’ve done what this tutorial says, but Pinterest still won’t recognize my post. Is there another plugin I could try?

  31. Michelle

    I added the Yoast plugin and there is no social option. Please help me. I am at my wits end with this issue.

    • Glenford

      Once you have Yoast installed the look under SEO » Dashboard » Titles & Metas and under that is Social.
      in Social you should Enable the „Add Open Graph meta data” in the Facebook tab.

      • Xavier

        This option just isn’t there with v4.6 of the plugin.
        Under SEO >> Dashboard, the tabs I have are: Dashboard, General, Features, Company info, Webmaster tools and Security. No mention of Titles & Metas or Social.

        Is this because I haven’t set up a Facebook social profile? Surely this shouldn’t be needed just to be able to configure OG stuff!

        • WPBeginner Support

          Hey Xavier,

          First you would need to go to SEO » Features page and then click 'Enable’ under 'Show Advanced Settings Pages’ option. This will display advanced settings pages in Yoast SEO. For more details see our article on how to install and setup Yoast SEO.

  32. joe Barrett

    I added social sharing to the search result template, so each excerpt has a share button BUT the meta data that is shared is messed up and uncontrollable with this, is there a way to make this work better when there are 20 reuslts on the same page with different meta description for each?

  33. giovanna

    Hi can you help me please? I added the code in function and what I have to add in the head please?

  34. benjamin s

    Here’s also a nice improvement to make an exception for the home-page:

    if (is_front_page()){
    echo ”;
    echo ”;
    echo ”;
    }else{
    echo ”;
    echo ”;
    }

  35. benjamin

    I just want to say thanks! … this is very helpful, you the best!

  36. Laura K

    I’ve downloaded the Yoast plugin, and set it up for my home page, but when I enter the website on Facebook it still won’t show the image I’ve specified, or the text snippet I’ve written.
    Also can’t find my Facebook URL using the link you provided, it just gives me an error…
    I tried debug but it says Facebook pages can’t be debugged, and they have no cache.
    Sooooo….nothing has worked so far!

  37. Courtney

    Hi there,

    I have SEO Yoast and I uploaded the new image and its still not working on facebook……???

  38. MassimoDIFA

    Thank you, manually added open graph on header, perfect!! Thank you!!

  39. D

    I just wanted to thank you for this very thorough description on the process of connecting facebook to your wordpress page. I’ve been trying to do for days now following other sites and recommendations. This evening I came across your page from a google search and bam, it worked. Hooray! Thanks a lot.

  40. Amanda Paul

    Thanks for this info. It was really easy to follow. I uploaded the Yoast plugin and followed all the steps and saved but the thumbnail is still just a blank box. does it take some time to flow through? Do I need to log out and back in again to Facebook? or Wordpress?

  41. Mahmud Ayaz

    Hi! When i replace this link with my name http://graph.facebook.com/syedbalkhi got this error

    {
    „error”: {
    „message”: „(#803) Cannot query users by their username (mahm0od)”,
    „type”: „OAuthException”,
    „code”: 803
    }
    }

    Any Solution?

  42. Daniele Besana

    Hi guys, I’m having problems with og:description, basically all the formatting is missing on the shared page. New lines are not respected, how can I control that?
    Thanks!

    • JC

      I have the same problem, also getting og:description missing

    • AC

      I have the same problem, and I cannot use FB debugger because i work in localhost…

    • Marc

      this worked for me:

      $metadesc = strip_tags(get_post_field(’post_content’, $post->ID));
      echo ”;

      (my posts had a very short content)

    • Kim McCann

      The following works by pulling from your excerpt. Just add under og:title

    • BK

      Thank you for taking the time to reply. Will give it a shot!

  43. BK

    Thanks for this. I want to share link directly from my site using the social button. However, when I click on for example the Facebook share button, the image and the description is still using a previous information. Although I have updated the image and description using Yoast SEO and specifically customise the image and description for that post. May I know what did I do wrongly?

  44. Naren Patel

    Thank you very much, I really want this information.

  45. Robin

    Thank you. I can’t tell you how long I have been trying to figure this out. Easy to do with ZiPLIST for recipes but could not figure it out for Articles.

  46. Maria

    Hi! I have a issue that i don’t know how to solve. When I try to share a link on facebook from my blog, or a particular page this message appera „page not found” or the link with symbols I don’t understand. I controlled th elinks with object debugger and this is what appear: required property 'og:title’ of type 'string’ was not provided. How can I solve it, please?

  47. Salih Kulangara

    @ Syed Balkhi. —– Just want to ask you this, After all I have got setup all the tags, and got a clean debug test result without any warning, when any one click on the Facebook Like button i used in my web page, it’s not showing up in the Facebook Timeline feed, just showing up in the recent activity section only, why is this, Is there anything else I have to add to get it be shown in the newsfeed directly when the click the LIKE button??????

  48. Anas Khan

    Great tutorial, i want to know is there any tutorial about open graph meta for Google Plus ?

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszymi polityka komentarzy, a Twój adres e-mail NIE zostanie opublikowany. NIE używaj słów kluczowych w polu nazwy. Przeprowadźmy osobistą i konstruktywną rozmowę.