Beginner's Guide for WordPress / Start your WordPress Blog in minutes

How to Add Pinterest “Pin It” Button in WordPress (4 Ways)

Do you want to add the Pinterest “Pin It” button in WordPress?

Pinterest is a popular social networking site that allows you to share visual content and drive a lot of traffic to your website. Adding a pin it button makes it easier for visitors to share your content.

In this article, we will show you how to add the Pinterest “Pin It” button to your WordPress blog.

Add Pinterest Pin It button in WordPress

There are multiple ways to add a Pinterest Pin It button to your WordPress website. You can use a WordPress plugin to pin your images or manually add a Pin It button using code.

Besides that, you can create a shortcode to add the Pinterest button anywhere on your website and also allow users to save images to Pinterest by hovering over them.

In this guide, we’ll cover all these ways, so you can jump ahead to your preferred method.

Adding a Pinterest “Pin It” Button Using a Plugin

Pinterest officially changed the “Pin It” button name to Save in 2016.

Although some plugins still use the name “Pin It” instead of Save, they do the same job of pinning your images to Pinterest.

The easiest way to add a Pinterest button to your WordPress site is by using a social sharing plugin.

We recommend using Shared Counts plugin for this purpose. It is one of the best social media plugins for WordPress because it’s free and allows you to easily add the Pinterest button along with other popular social networks.

To get started, you need to install and activate the Shared Counts plugin. You can follow our step by step guide on how to install a WordPress plugin for detailed instructions.

Upon installation, head over to Settings » Shared Counts page to configure the plugin.

Shared Counts settings page

On the settings page, you need to scroll down to the Display section and then click on the “Share Buttons to Display” textbox.

This will open a dropdown menu where you can select the social media services you want to add. By default, Pinterest will be present in that box, along with Facebook and Twitter.

The plugin comes with multiple button styles that you can choose from the ‘Share button style’ option. You can also select the location and post type where you want to display the Pinterest button.

Once you are done choosing your settings, don’t forget to click on the Save Changes button.

You can now visit any post on your website to see the Pinterest button in action.

Pinterest button added to WordPress post

Another neat thing about SharedCounts is the free Custom Pinterest Image addon available on Github. This lets you set a custom Pinterest sharing image and description that’s optimized for Pinterest.

Manually Adding a Pinterest Pin It Button in WordPress

Some intermediate users may prefer to add the social sharing buttons manually to their WordPress site instead of using a plugin.

Let’s take a look at how to manually add a Pinterest button in WordPress.

The first thing you need to do is make a complete WordPress backup of your site. This will help you restore your site in case something breaks by accident.

Next, you need to add a bit of code to your footer. You can add footer code to your WordPress site using a plugin, or follow the instructions below to do it manually.

First you need to connect to your WordPress hosting using an FTP client and then go to the /wp-content/themes/ folder.

From here, you need to open your current theme folder and then locate the footer.php file.

Download footer php file

Next, simply right-click on that file and then select Download from the menu. This will download the footer.php file to your computer.

Now, you need to open the footer.php file using a plain text editor like Notepad and then paste the following script right before the </body> tag.

<script type="text/javascript">
(function() {
    window.PinIt = window.PinIt || { loaded:false };
    if (window.PinIt.loaded) return;
    window.PinIt.loaded = true;
    function async_load(){
        var s = document.createElement("script");
        s.type = "text/javascript";
        s.async = true;
        s.src = "";
        var x = document.getElementsByTagName("script")[0];
        x.parentNode.insertBefore(s, x);
    if (window.attachEvent)
        window.attachEvent("onload", async_load);
        window.addEventListener("load", async_load, false);

Once you have done that, you need to save the file and then upload it back to the current theme folder.

Next, you need to locate the template file in your theme where you want to add the button. If you’re not sure, you can see our beginner’s guide to the WordPress template hierarchy. Often it will be the single.php file, but it depends on your theme.

To edit the template file, simply download it from your theme folder and open it for editing. After that, you need to add the following code.

You will need to choose the location where you want it to appear in your post. Placing it after post title is the most common placement for social media buttons.

<?php $pinterestimage = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); ?>
<a href="<?php echo urlencode(get_permalink($post->ID)); ?>&media=<?php echo $pinterestimage[0]; ?>&description=<?php the_title(); ?>" class="pin-it-button" count-layout="vertical">Pin It</a>

The above code displays the Pinterest button with your featured image, title, description, and post URL in the share URL parameter.

Finally, you need to save the file and upload it back to your theme directory using FTP.

This will add a vertical share button to the posts of your website. If you want to display the horizontal share button, then simply change the count-layout parameter to horizontal.

Creating a Shortcode for Pinterest Button

Shortcodes in WordPress allow you to easily add dynamic items to your WordPress posts, pages, and widgets. By creating a shortcode, you’ll be able to manually add a Pinterest button to your articles.

First, you’ll need to add the following code to your theme’s functions.php file or a site-specific plugin:

function get_pin($atts) {
$pinterestimage = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' );
return '<a href="' . urlencode(get_permalink($post->ID)) . '&media=' . $pinterestimage[0] . '&description=' . get_the_title() .'" class="pin-it-button" count-layout="vertical">Pin It</a>'; }

add_shortcode('pin', 'get_pin');

For more help, see our beginner’s guide to pasting snippets from the web into WordPress.

After you’ve added the code, you can use the [pin] shortcode in your WordPress posts where you want to display the Pinterest button.

Adding Pinterest Pin It Button Over Your Images

If you are running a fashion, photography, or portfolio site, then you definitely want your images to be shared on Pinterest to increase your website traffic.

Adding a Pinterest Pin it button over your images in WordPress allows user to easily pin any image on your site by simply hovering their mouse over the image they want to share.

First, you need to install and activate the Weblizar Pin It Button On Image Hover And Post plugin. For more details, you can refer to our guide on how to install a WordPress plugin.

Upon activation, go to PinIt Button page from your WordPress admin panel to configure the plugin.

Pin it Button settings

You can choose whether you want to show the Pin It button on your WordPress blog posts or pages on the settings page. You should also ensure that the option for ‘Show Pin It Button On Image Hover’ is set to ‘Yes.’

Besides that, the plugin lets you show the Pin It Button on mobile devices and edit the button’s size. Once done, you need to store the settings.

Now you can visit your website and then hover your mouse cursor over any image to see the Pinterest Pin It or ‘Save’ button.

View your pin it button

If you want to exclude some images from showing the Pin It or Save button, then you can go to the PinIt Button page from your WordPress dashboard and select the ‘Exclude Images’ tab from the settings.

All you have to do is enter the image URL you want to exclude from showing the pin it button and click the ‘+ Add’ button.

Exclude images from pin it button

You can also exclude pages from displaying the Pinterest Save or Pin It button using the plugin. Simply head over to the ‘Exclude Pages’ tab and add the name of the page.

Exclude pages from pin it button

That’s all!

We hope this article helped you understand how to add a Pinterest “Pin It” button to your WordPress blog. You may also want to see our guide on how to create an email newsletter, or see our comparison of the best web design software.

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.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit – a collection of WordPress related products and resources that every professional should have!

Reader Interactions

59 CommentsLeave a Reply

  1. hi wpbeginner, I follow your codes, may i know if i will still pin the images on my pinterest boards? or it will automatically pin there? Im still a beginner in this platform. thank you

  2. Thanks for the code. I just added it to my author site. (I have no idea how the Pinterest button shows up on my images on my business site, but it does.)

    Now my author site is all set up!
    Thanks, Syed.

    P.S. I just followed you on Pinterest. :)

  3. I did the last option, adding the short code to my theme’s functions.php file. It worked, but I couldn’t save my posts as draft anymore. Then I removed the code and it is not working. My site is still online, but I cannot log in into my site anymore. The following message appear:

    Warning: Cannot modify header information – headers already sent by (output started at /home/peque107/public_html/wp-content/themes/himmelen/functions.php:2) in /home/peque107/public_html/wp-includes/pluggable.php on line 1224

    Please help!

  4. Does this only apply for blogs? I have a blog and I am not sure if I can add this plugin to it?

    Thank you!

  5. I have a problem. I followed the instructions and came up with this error:

    Parse error: syntax error, unexpected ‘<' in /home/cmomb/ on line 18

    Now I cannot get rid of it. Could someone advise. My site is now down.

    • Open the functions.php file in a text editor like notepad. Go to line 18. You probably have <?php tag there that you don’t need. Delete it and also delete the ?> closing tag


  6. Thanks for this firstly

    I am struggling to position the element. It is seeming to always sit in the top left of the div.

    Is it possible to position it and also change the bg image to own custom one.


  7. Good tutorial, i have put it on my site without any problems, i then tested it and it worked, but it still says 0 after i pinned.

  8. I tried so many plugins… they don’t work with infinite scroll and nextgen gallery…. but with some changes this script solved my issue.. thanks

  9. Hello,

    I just want to ask if I could change the size of the “pin it” button? Because it seems that it was a little bit small.



  10. This code just recently stopped working. I had it on my site and it was working great and recently images appear to be working but then when you go view the pinboard there is no image set. Other times when trying to pin it 502 error that comes from the Pinterest site. Any ideas?

  11. There’s a bug in the code. The generated href for the pin it button should include ‘url=’, currently it’s missing the equals sign.

  12. For wordpress users..adding the pin it or any other social media is easy! Under dashboard, go to setting, click on sharing and they all appear- click on what you want to add!

    • THANK YOU! I have been searching for how to do this for 2 days & downloaded something & that didn’t work, I was about to give up & then THANKFULLY read your comment. I appreciate someone making it as EASY as it really is, how come wordpress can’t do that?

  13. I tried adding this… it worked but when you click on “Pin it” and it opens the window in a new browser and you actually submit the pin, it just reloads the newly opened window and the pin isn’t submitted. Decided not to implement it until they’ve fixed their bugs.

  14. I used the ‘follow me’ code on the Pinterest Goodies page and pasted it into the ‘text’ widget on my WordPress blog. The button now appears right after my mini bio. It works quite well. :)

  15. For any advanced theme framework like Thesis, Genesis, Headway etc, you have to add these codes via functions.php file using the framework appropriate hooks. We cannot possibly cover all the theme frameworks out there. Most theme framework blogs have instructions on how to do customize the themes.


    • @wpbeginner It’s not ideal, but it’s really not much more than you have to do to post the image anyway. I’m still looking for a great option (plugin ideally) that a) works on my theme and b) is easy. Luckily, due to the popularity of Pinterest, I’m confident someone will have one up and running soon!

  16. It works, but it shows the text “array” before the Pin It button. I’m calling it via my functions.php, like so “echo $pinterestimag…..<?php;" Could that be why?

  17. How do you get this to integrate with an existing WP plugin like Digg Digg or Sociable?

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.