How to put the Facebook ‘Like’ button on your WordPress blog

Facebook has announced its Facebook for Websites service the their f8 developers conference.  Along with a bunch of other services is a fairly simple little button you can add to any site called the Like Button.  It works in exactly the same way as liking something on your Facebook newsfeed, but it’s for any page on the internet. 

This is what the button looks like when it’s put onto a page:

Like button 

It shows the profile picture of the person who’s viewing the page (if they’re logged into Facebook) and how many other people have liked that page. You can see an example of this on my wife’s site Pea Pilly Bean *.

If you click the Like lutton on any page, it will add a like to that page & post a message on your newsfeed that you liked that page, it looks like this:

Likes on my newsfeed

On the Like button page on the Facebook developers site there’s a handy too that will allow you to generate the code for the button to put on your site. You can put any url in there & it will spit out code that looks like this:

<iframe src=";layout=standard&amp;show_faces=true& amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:px"></iframe>

You can stick this on your site & it will work.  The only problem is that it’s a fixed url.  So if you use your site’s homepage url when people click it, no matter what page or post they’re actually looking at, it will always post the link to your homepage.  This is fine, but it would be way more useful if it posted that they were liking the actual post they’re on.

Fortunately this is really easy to do.  You just need to change the code to this:

<iframe src="<?php echo urlencode('http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']) ?>&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:px"></iframe>

This will then generate a link button for the page you’re looking at, rather than for a fixed URL.  To install this either paste this code into your WordPress template somewhere, or to make it even easier install the PHP Code Widget plugin which allows you to add a widget to your sidebar that you can put PHP code into.  Then just drag the ‘PHP Code’ widget onto your sidebar in the Widgets admin section & paste the above code into it

PHP Code Widget

Click ‘Save’ and you’re done.  The Like button will now show on every page, with the button referencing this page the person is looking at.

The only thing you may have to change is the ’450′ value for the width in the code.  If you want it to be narrower or wider you’ll need to change this value

I’m sure a more sophisticated solution to this will come out fairly soon, but for now this works just fine. Update: There’s now a bunch of plugins that will replicate this functionality, check the comments of this post for some examples

Microsoft providing the .NET source code with VS2008

I already posted this on the tumblelog, but I think it bears repeating: With the next release of Visual Studio, the common .NET assemblies will be provided with source code

Today I’m excited to announce that we’ll be providing this with the .NET 3.5 and VS 2008 release later this year.

We’ll begin by offering the source code (with source file comments included) for the .NET Base Class Libraries (System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, System.Text, etc), ASP.NET (System.Web), Windows Forms (System.Windows.Forms), ADO.NET (System.Data), XML (System.Xml), and WPF (System.Windows).  We’ll then be adding more libraries in the months ahead (including WCF, Workflow, and LINQ).  The source code will be released under the Microsoft Reference License (MS-RL).

You’ll be able to download the .NET Framework source libraries via a standalone install (allowing you to use any text editor to browse it locally).  We will also provide integrated debugging support of it within VS 2008.

Continue reading