Feed on
Posts
Comments

Results for facebook

Still Alive

Posted July 27th, 2010 by Steve

I know its been pretty quiet round here for a bit. Its just been one of those periods of time when I’d nothing really to write about, and even if I did I didn’t really have the time, or the motivation, or the energy.

When I’ve not been working I’ve been bashing my head against the wall over my Wordbooker plugin which I’ve been playing a continual catch up game with Facebook and WordPress and W3C compliance (some of which was nothing to do with me but actually Facebook’s decision to use non compliant tags and people having WordPress themes with not quite the right Doctypes and other things). I’ve been wanting for ages to start on Version 2 of the plugin – which takes a different approach to parts of the posting process and needs a complete re-write of the comment handling process too, but until I’d got the 1.x code base to the point that it was stable enough to leave alone so I could concentrate on 2.0 I couldn’t do that. I’d just got ready to start recoding when Facebook announced they were changing the method of authenticating users against applications… that’s right. Just a couple of months after they changed it totally they are proposing changing it all again. It didn’t help that they accidentally turned on the new method and broke everything!

But things seem to have settled down and so I’ve started coding it, but I also wanted to watch “Travelling Man” which Nick had bought me on DVD for my birthday after we’d both read Andrew Denny’s blog entry about it. It’s been quite enjoyable watching it and recognising a lot of the locations, even if they have changed a lot since it was shot : for example the derelict warehouses near Preston Brook have been turned in to rather up market apartments – but it was good to see that Claymore Navigation’s boatyard hasn’t changed much in the intervening years.

So today I’m having a day off work, and I could be coding but instead I’m listening to Bob Geldof’s solo albums and trying to rustle up enough motivation to do much more than slouch on the sofa all day. I know that some would say that NOT listening to them would be enough motivation to get off the sofa, and others might say that listening to them just sucks motivation away from you, but hey… it’s my day off and I’m waiting for the Dishwasher to go through a cleaning cycle!

Revisiting “old” Code

Posted May 19th, 2010 by Steve

Nick commented once about some of the code in CanalPlan AC and how it was suffering from “bit rot”. Basically code that you shoved in, often as a quick dirty fix and then it starts to fail but with no good reason.

Well Wordbooker is suffering from bit rot, its just that luckily no-one has noticed it yet, well apart from me that is.

Wordbooker took code written by Robert Tsai for his plugin (Wordbook) and extended it. That is why Wordbooker is called Wordbooker – because it stands for WordbookE[xtended]R[elease]. Robert’s code used to support the WordPress PHP libraries for PHP4 and PHP5. PHP4 support was dropped but the wrappers were left inside the code, adding a level of abstraction around the calls to the Facebook PHP libraries.

When I added all the new features such as posting to walls and FB widgets and so on, into his code I sometimes used his wrappers and sometimes made the calls directly.

Facebook then depreciated some functionality and so calls to functions supporting that got commented out and eventually I stripped most of the code out.

I’d added functionality to handle comments really as a sort of proof of concept and then I added posting support to pages, but comments to pages didn’t get processed properly due to slight differences inside FB on how pages are handled.

So that was the next big project – re-write comment handling to make it a lot more robust (and at the same time simpler).

But then Facebook came along with the Graph API and the Oauth authentication process and said that all applications would be force migrated to the new Authentication method on June 1st. The new Graph API would make my job simpler as I only use a few calls (post to wall, post comment, get comment, get status, and a few FQL calls) and so obviously I should think about moving my code to use it.

That wouldn’t be bad if the Graph API was complete and not riddled with bugs (for example if you include a link in a post it thinks you are doing a “share” style post and goes and scrapes that URL – something which is not right and not how the old API works), but as it is I can’t use the new API for anything but authentication, so I’ve had to work out how to use the Oauth method for signing on, but then use the old API for the rest of my code, all under the looming date of the end of the month and with me working a day job as well.

Facebook also changed their policy on posting to walls and I asked them for clarification, and they asked for more information which I’ve given them, and now I’m waiting to hear back from them. It could mean that I have to change my code, but actually it will make the process easier to code and make it easier for the user to understand, so I am going to make the changes any way.

WordPress is also changing – with 3.0 coming out really soon now – and I wanted to make my install more multiblog friendly : so 4 tables per WP install rather than 4 tables per blog which means some quite jolly logic to work out if you are in WP2 (or WPMU2) or WP3 (running in single or multiple blog mode)

So I’m revisiting my old code and wondering if I should really throw 80% of it away and strip away the crud and spaghetti that seems to have collected during my rapid development of the project. I’ve now got a much clearer idea of how things should work and how the code should flow, and how to code round the countless “failures” of the FB back end which occur at depressingly frequently intervals, some of which I did last night when a couple of users were basically stuck because FB were playing round with code on the live servers again.

Using the new Facebook Graph API off-line

Posted May 5th, 2010 by Steve

One of the features of the old Facebook API was “off-line” access – basically where you could interact with Facebook in a “non-interactive” way : in other words a program or script could interact with Facebook on your behalf without you having to have a Facebook window open in your browser.

The new API also supports this but the documentation is not really totally clear on the “process” needed to do it.

So I sat down and worked it out. The code you are about to see is not neat, or tidy. It contains no proper error handling or checking apart from the bare minimum needed to make it work.

Pre-requisites

You will need:

First of all we need to make sure that we have a table to store the session data in. We are actually storing all the session data : this might be overkill but as a lot of this is still undocumented I felt it was safer to store everything.

So at the start of our example lets do the dirty work with the database. If you were doing this properly you’d have this in a function which you called once, for example with a WordPress plugin you’d call it on plugin activation. But we’re not doing that here so …. and don’t forget to change those db_  parameters to match your system.

$db_server = "localhost";
$db_username = "dbuser";
$db_password = "dbpassword";
$db_name = "dbname";

# Lets connect to the Database and set up the table
mysql_connect($db_server,$db_username,$db_password);
mysql_select_db($db_name);
$ct_res = mysql_query("CREATE TABLE IF NOT EXISTS `facebook_user` (
   `session_key` VARCHAR( 80 ) NOT NULL ,
   `uid` VARCHAR( 80 ) NOT NULL ,
   `expires` VARCHAR( 80 ) NOT NULL ,
   `secret` VARCHAR( 80 ) NOT NULL ,
   `access_token` VARCHAR( 120 ) NOT NULL ,
   `sig` VARCHAR( 80 ) NOT NULL
   );"
);

OK So that’s the DB work done and each time we run the script it will create the table if its not there. Now we can set up the Facebook side of things. Don’t forget to change the path for the facebook.php file (which you did download  didn’t you?). You’ll also need the information about the Facebook Application you set up because I’m not letting you share mine! You may also want to review the permissions that are being granted – the ones in this code are the ones my Wordbooker application uses

# Now lets load the FB GRAPH API
require '../src/facebook.php';

// Create our Application instance.
global $facebook;
$facebook = new Facebook(array(
 'appId'  => '101001010101010101',
 'secret' => 'faafaffdfasdffsafsfsddfasd',
 'cookie' => false,
));

# Lets set up the permissions we need and set the login url in case we need it.
$par['req_perms'] = "publish_stream,
                    offline_access,
                    user_status,
                    read_stream,
                    email,
                    user_groups";
$loginUrl = $facebook->getLoginUrl($par);

The “heart” of the code is the get_check_session function. This function checks to see if we have a session stored in the database and if we do it returns it. If we don’t have a session but a session is being passed in via the URL it gets it, stores it and then returns it. If neither of these cases are true it returns nothing.

function get_check_session(){
  global $facebook;
  # This function basically checks for a stored session and if we have one returns it,
  #If we have no stored session then it gets one and stores it
  # OK lets go to the database and see if we have a session stored
  $sid=mysql_query("Select access_token from facebook_user");
  $session_id=mysql_fetch_row($sid);
  if (is_array($session_id)) {
    # We have a session ID so lets not get a new one
    # Put some session checking in here to make sure its valid
   try {
     $attachment =  array('access_token' => $session_id[0],);
     $ret_code=$facebook->api('/me', 'GET', $attachment);
    }
     catch (Exception $e) {
       # We don't have a good session so
       echo "woops";
      $res = mysql_query('delete from facebook_user where expires=0');
      return;
    }
  return $session_id[0];
 } 

 {
  # Are we coming back from a login with a session set?
  $session = $facebook->getSession();
  if (is_array($session)) {
   # Yes! so lets store it!
   $sql="insert into facebook_user (
               session_key,
               uid,
               expires,
               secret,
               access_token,
               sig)
             VALUES ('".$session['session_key']."','".
                        $session['uid']."','".
                        $session['expires']."','".
                        $session['secret'] ."','".
                        $session['access_token']."','".
                        $session['sig']."');";
   $res = mysql_query($sql);
   return $session['access_token'];
  }
 }
}

OK, believe it or not we are just about there with only a few more lines of code to go. Are you ready?

$access_token=get_check_session();
# If we've not got an access_token we need to login.
if ( is_null($access_token) ) {
echo '<a href="'. $loginUrl.'"><
img src="http://static.ak.fbcdn.net/rsrc.php/zB6N8/hash/4li2k73z.gif" alt="" /> ';
}
else {

# This is where you put your code.
$target=1010101010100110;
$attachment =  array(
 'access_token' => $access_token,
 'message' => 'Did a Test Post :',
 'name' => "Offline posting using stored tokens",
   'link' => "http://blogs.canalplan.org.uk/steve/2010/05/05/using-the-new-facebook-graph-api-off-line/",
  'description' => "This post was made using a stored access token",
  'picture'=>http://blogs.canalplan.org.uk/steve/files/2010/05/Screenshot-5-300x194.png",
			);

$ret_code=$facebook->api('/'.$target.'/feed', 'POST', $attachment);

echo "Returns : ";
var_dump($ret_code);
echo ""; 

$attachment =  array(
'access_token' => $access_token,
 'message' => "and this is a comment I've just made on the post using that same stored token",);

$ret_code=$facebook->api('/'.$ret_code['id'].'/comments', 'POST', $attachment);

echo "Returns : ";
var_dump($ret_code);
echo ""; 

}

Basically any code in the ELSE {} block is executed if you have a Facebook access_token. In the example what we do is post a message to a “target” which is a FB user ID (you can use names rather than numbers), and then we immediately comment on it. Which produces something like:

image showing FB wall postings

A Wall post and an associated comment made by the php code.

So there you go. Why not download the code and give it a go.

Hitting a moving Target

Posted April 28th, 2010 by Steve

Things move fast in the IT world:  Oracle spit out a new version of their database every couple of years, Microsoft keep…. well actually the less said about Microsoft the better to be honest, and as for Apple…… :roll:

I’ve been coding away on my Wordbooker Plugin since the tail end of last year. I had great plans for version 1.8.  I was going to add internationalisation and completely rebuild comment handling from the ground up as its not really working properly.. Hey I coded it in a day and bolted it onto the existing code so what else would you expect…

So I’d got all these plans worked out in my head and then along came Facebook and their developer conference (F8) who shoved a huge great spanner into the works.

Now for those who have never tried programming against the Facebook API you wont know just how annoying it is. It is rather like trying to nail jelly to the ceiling : Facebook quite happily change the API on the live site without telling anyone which breaks things. Go on.. how many times have you seen the “Oops, something seems to have gone wrong” message? Well developers get that too – or rather they get calls that suddenly return no data, or incorrect and incomplete data, or error codes they’ve never seen before.

People file bug reports and Facebook go and change the documentation and then deny its an error. Or Facebook fix the bug and everything is fine for a few weeks then it re-occurs which suggests a lack of a proper test and release process. The worst one I’ve seen is a bug which apparently “fixed” itself with Facebook representatives saying they did not know what had caused the problem or why it was now working again. The PHP files they provide don’t even have version IDs in them so you can’t tell if you’ve got the latest version, or worse still : you can’t determine the version of the files that another WordPress plugin might have installed – so your code doesn’t work because the version of the Facebook files they have installed doesn’t have the function, or class, you need for your code to work.

So any way, along comes F8 and a whole new way of interfacing with Facebook : The Graph API, and along with that came a new data model and a new data permissions dialogue, and a new Data policy. Everything new and shiny and the statement that “On June 1, 2010, we’ll automatically transition all Facebook Platform applications and websites who have not yet migrated.”

Sounds good doesn’t it. Apart from the fact that no-one at Facebook has explained how you can use the new Data permissions dialogue with the “old” API, and everything I’ve tried simply comes back with meaningless errors, and from what I’ve read other developers have experienced the same problems.

So I guess I could just convert my application over to the new API couldn’t I, that would make things easier wouldn’t it? Ahhh…………..actually I can’t because Facebook haven’t actually written the PHP API libraries yet – well not to the point of supporting “offline” access, which is what my application relies on. Actually that last bit says a lot about Facebook : They announce a whole new API and a whole new data structure, but the only way to access it is hand crafting your own CURL statements and running a “live” Facebook session. Talk about the right hand not knowing what the left is doing….

Madness

WordPress and Facebook Integration

Posted January 2nd, 2010 by Steve

I’d been using the Wordbook app for quite a bit but I’d always found that it lacked some features that I liked. I’ve now added these functions and got it doing things how I’d like.

So rather than keep cluttering up the original wordbook application page I’ve forked by code off totally.

I created a new Facebook application called Wordbooker and then created a new plugin called Wordbooker in the WordPress Extensions site.

Upgrading from the Forked Version.

As this is basically a new application its a bit messy as doing a normal removal of the old forked version will remove any record of posts/comments made with the forked version.

If you wish to retain that history then you need to back up the existing wordbook_postcomments table BEFORE you remove the forked version of wordbook.

Go into the options page for Wordbook and reset the configuration for wordbook

From the plugins page de-activate the wordbook plugin.

Delete the wordbook directory from wp-content/plugins

Upload the wordbooker directory into the wp-content/plugins directory

Go into the Plugins page and enable Wordbooker.

Go to the options page for Wordbooker and  it will ask you to get a login key from Facebook and then ask you to grant two extra permissions needed by Wordbooker – these allow Wordbooker to publish to your wall and also to fetch comments from it.

Click on the Save Configuration button.

You can then set up the various options on the option screen:

Wordbooker Options page

Wordbooker Options page

** Multiple Facebook account / WordPress account support **

If you as the blog owner only want it so that WP posts go to your FB account then go into the Options screen and set the default account to be yours, and that should be it, any person using a different WP account to post to your blog will publish those stories to your FB account.

But what if you’ve got a Family WB where different people would like to post to WP and to their OWN FB accounts. Simply get each of them to login to WP as themselves and configure WB as if they were the only user. Then when all of them have done this go back in as yourself and set the Default account to be you.

On the Edit Post page there is a WordBook Options block which includes a drop down list of the blog you wish to post to, if you want to post to your default blog then you don’t need to touch this but if someone wants to post that post to their FB account all they need to do is pick their name from the drop down list before they post.

** Length of Extract **
This allows you to change the length of the extract posted to Facebook. The minimum value is 200 and the maximum is 400 (at the moment) with the default being 256 characters. The extract will be trimmed to the nearest full word BELOW this value.

** Default Publish Post to Facebook **

This allows you to choose if posts should automatically be posted to Facebook. This option can be overridden from the Edit Post page

** Post Attribute **

This allows you to change the attribute line when posts are sent to Facebook. By default this is set to “Posted a new post on their blog”. This option can be overridden from the Edit Post page.

** Republish Post if edited more than x days ago **

This allows you to control how long it should be before Wordbook considers an edited post to be a “new” post and re-publishes it to Facebook.

** Override Re-Publication window  **

This allows to to force all edits to be reposted to Facebook ignoring the republish window. This option can be overridden from the Edit Post page.

** Update Facebook Status **
If this option is checked then the title of your blog post and its permalink will be posted to your status, along with the text specified here. This can be overridden from the Edit Post page. NOTE: If this option is Selected then your status is ALWAYS updated, even if you choose NOT to publish your post to Facebook.

** Import Comments from Facebook for Wordbook Posts  **

This version of Wordbook supports the importing of comments made on Facebook back into your WordPress blog. This allows you to set the default behaviour. This option can be overridden from the Edit Post page

** Auto Approve imported comments **

If you trust your friends on Facebook then you’re probably quite happy for their comments to automatically get posted as comments on your WordPress blog. If this option is not set then any imported comments are held in the moderation queue.

Once you’ve got the options set how you want then save them.

If you exported the wordbook_postcomments table before upgrading then you can now import it back into the database.

There may be times when you you are posting a blog entry and you’d like to do something differently, like NOT publish a post, or change your choice on what you do with comment. So on the Add New and Edit posts page you should now find a Wordbooker Options Override block where you can override several defaults:

Wordbooker Post options

Wordbooker Post options

If you are the administrator of a Facebook Fan page then you’ll also be given the option of posting to that page instead of posting to your own wall. At the moment there is a bug in the API which means that posts made to Fan Pages are shown as YOU posting on the Fan Page wall – rather than it looking like the Fan Page has posted the post directly.

PROBLEMS

If you’ve got problems its probably best to post them on the Wordbooker Page on Facebook where people can create new threads for each bug/problem and people can easily see if any fixes have been made

WordPress and Facebook Part five

Posted November 10th, 2009 by Steve

Well I’ve been hard at work on my forked version of the Wordbook plugin which links your own hosted WordPress Blog with your Facebook account. Oh and it also works with WordPress MU too.

Its now really reached a point where I’m quite happy with it.

So what does it now support?

Multiple Facebook account / WordPress account support

If you have multiple users of your blog the old version wouldn’t post to YOUR Facebook account. It would post to THEIRS, if they had set it up. This version of the plugin now handles multiple WP Accounts. If you as the blog owner only want it so that WP posts go to your FB account then go into the Options screen and set the default account to be yours, and that should be it, any person using a different WP account to post to your blog will publish those stories to your FB account.

But what if you’ve got a Family WordPress where different people would like to post to WP and to their OWN FB accounts. Simply get each of them to login to WP as themselves and configure WB as if they were the only user. Then when all of them have done this go back in as yourself and set the Default account to be you.

On the Edit Post page there is a WordBook Options block which includes a drop down list of the blog you wish to post to, if you want to post to your default blog then you don’t need to touch this but if someone wants to post that post to their FB account all they need to do is pick their name from the drop down list before they post.

Length of Extract

This allows you to change the length of the extract posted to Facebook. The minimum value is 200 and the maximum is 400 (at the moment) with the default being 256 characters. The extract will be trimmed to the nearest full word BELOW this value.

Default Publish Post to Facebook

This allows you to choose if posts should automatically be posted to Facebook. This option can be overridden from the Edit Post page

Post Attribute

This allows you to change the attribute line when posts are sent to Facebook. By default this is set to “Posted a new post on their blog”. This option can be overridden from the Edit Post page.

Republish Post if edited more than x days ago

This allows you to control how long it should be before Wordbook considers an edited post to be a “new” post and re-publishes it to Facebook.

Override Re-Publication window

This allows to to force all edits to be reposted to Facebook ignoring the republish window. This option can be overridden from the Edit Post page.

Update Facebook Status

If this option is checked then the title of your blog post and its permalink will be posted to your status, along with the text specified here. This can be overridden from the Edit Post page. NOTE: If this option is Selected then your status is ALWAYS updated, even if you choose NOT to publish your post to Facebook.

Import Comments from Facebook for Wordbook Posts

This version of Wordbook supports the importing of comments made on Facebook back into your WordPress blog. This allows you to set the default behaviour. This option can be overridden from the Edit Post page.

Auto Approve imported comments

If you trust your friends on Facebook then you’re probably quite happy for their comments to automatically get posted as comments on your WordPress blog. If this option is not set then any imported comments are held in the moderation queue.

Posting using XMLRPC clients

Posts published to your WordPress account using XMLRPC clients will now also publish to Facebook – if the default option of posting to Facebook is set. Posts made via this method will also pick up the default target Facebook account, the default post attribute line, and the Update Status options.


Upgrading from the stock version obtained from the WordPress plugins repository:

* You need to de-activate the old plug in first.
* Then DELETE the wordbook folder from wp-content/plugins and then upload the new version. DON’T just copy the new files up.
* Re-activate the plugin
* Go to the Options page for the plugin and you can set all the new wizzy options. If you want to pull comments from your Facebook account you’ll need to grant the plugin permission to read from your stream. If you don’t grant this permission then you can’t pull comments, and I’ve no idea what my code will do if it tries to do that because I didn’t test it! So you have been warned!

Debugging

The only place I’ve put any real debugging in is in the cron job code because its very hard to actually work out if its working if there are no comments to pull. Debugging for that can be enabled by editing two lines in wordbook_cron.php:

define (’DEBUG’, false); which you change to true

and

$debug_file=’/tmp/wordbook_’.$table_prefix.’debug’; which you may need to change if you want to change the output directory.

So where is it I here you ask?

Right Here:

wordbook1.5

WordPress and Facebook – Part 4

Posted October 28th, 2009 by Steve

Back in August I wrote about the Wordbook plugin for WordPress which basically replicates posts from your own hosted WordPress (or WordPress MU) blog into your Facebook account where they appeared on your wall.

The plugin did something well but it lacked several things that I’d like it to do. So I started adding them. The sidebar widget was the easiest thing to do as that was pretty much self contained and as you can see from this blog its working quite well.

The plugin had a very annoying habit of re-posting a post if you edited after more than a few days and it seemed to publish posts to Facebook when you’d least expect it.

So I rehashed that code and got it all working.

But everything was hard coded. What if I wanted to force it to republish a post to Facebook when I edited it, what if I wanted to automatically republish if editing after 10 days, except that I didn’t want it to do it for a specific post.

That was all the easy stuff.

But what about comments? Wouldn’t it be cool if comments posted on your Facebook copy of the post could be pulled down into your blog as comments to that post. Sure it would be cool, and it wouldn’t be that difficult would it.

WRONG!

The plugin used the Feed.publishUserAction API call. Its a neat little function but it doesn’t return the Post ID for the post you just made into facebook, and you need the Post ID to pull comments back. The obvious answer was to use the stream.publish API call instead. That returns the Post ID and then you can simply get the comments by using Stream.getComments and passing it the post ID in question. To get all of that working I needed to grab the latest version of the API files and I had to recode the way the plugin posts as Stream.Publish uses a different structure for a post.

So once all that was working and I’d coded up a nice options page and put an option block on the Edit/Add Posts page so you can override some defaults (like saying you DON’T want to import comments for a post) all that was left was to code up a comment fetching job and work with WP-CRON to schedule it.

I finished all of that a couple of weeks ago, and I’ve been debugging it since but now I think its probably ready to escape into the wild and if anyone is mad enough to want to test it then Here it is

Some quick notes on Upgrading from the existing Wordbook plugin.

  • You need to de-activate the old plug in first.
  • Then DELETE the wordbook folder from wp-content/plugins and then upload the new version. DONT just copy the new files up.
  • Re-activate the plugin
  • Go to the Options page for the plugin and you can set all the new wizzy options. If you want to pull comments from your Facebook account you’ll need to grant the plugin permission to read from your stream. If you don’t grant this permission then you can’t pull comments, and I’ve no idea what my code will do if it tries to do that because I didn’t test it! So you have been warned!

Debugging.
The only place I’ve put any real debugging in is in the cron job code because its very hard to actually work out if its working if there are no comments to pull. Debugging for that can be enabled by editing two lines in wordbook_cron.php:

define (‘DEBUG’, false); which you change to true
and
$debug_file=’/tmp/wordbook_’.$table_prefix.’debug’; which you may need to change if you want to change the output directory.

Caveats

You knew there would be some didn’t you!

I developed this on WordPress MU which is the MultiUser version of WordPress. I developed it  using 2.8.4a which is the same as 2.8.4 in standard WordPress. I HAVE NOT tested it on older versions so I cannot guarantee things like the draggable box on the Edit/Add Page will work if you are not on V2.8.4

As I’ve now sort of released this plugin I’ve created a page where I’ll log any changes to it in future. So if you want to keep upto date then you’ll need to check my Wordbook Page

WordPress and Facebook – Part 3

Posted August 11th, 2009 by Steve

I posted previously about the Wordbook plugin for WordPress which links your WordPress blog to your Facebook account. I’d down loaded it and installed it and it worked quite well.

Then I wrote about how it reposted WordPress posts if you edited them. It only did this if they were more than a day old which seemed a bit odd. So I changed the code to stop it doing that.

Also I wanted to have a link back from my blog to my Facebook account so I wrote a very minimal sidebar widget to link the two together.

This morning I’ve been recoding the widget so that its more flexible

So my widget now supports:

  • Widget title can be changed by the user, it’s no longer fixed as Facebook Status
  • User can override the name displayed – so rather than using the name on Facebook you can display a different one. On Facebook my name is shown as Stephen, but if I want on my widget that could be replaced by “Steve” or Wombat, or anything!
  • Different Date Formats. You can now select from a choice of date formats including a Facebook style textual one.

I might add some more formatting options such as changing the style of the status (currently fixed as italic).

To make sure that the widget and the plugin don’t get separated I’d coded my widget into the end of the plugin code and some people on the Wordbook group on Facebook have cut and pasted in to their copies of the plugin and it all seems to work.

But now my widget code is up to 179 or so lines and its getting a bit much to ask people to cut and paste it into their code. So I guess once I’ve got it tidied up a bit I’ll need to contact the developers of the plugin and get my code merged into the code base over on the WordPress plugins site.

Or if you want to try it now then follow these easy steps:

  1. Download the widget code :wb_widget.php
  2. Save the file into the wordbook directory under your plugins folder. Ensure you save/rename the file as wb_widget.php
  3. Edit the main wordbook.php file and add the following line immediately preceding the closing ?> tag at the end of the file: include(“wb_widget.php”);

This also means that when I add features to the widget you just need to grab the latest version from here.

WordPress and FaceBook – Part 2

Posted August 8th, 2009 by Steve

I got a bit bored so I did some hacking around with the code for the WordBook plugin.

It seemed to post to Facebook every time you did anything with a WordPress post such as editing, which isn’t really what you want it to do, so I went in and recoded the logic so that it only publishes to FaceBook on certain activities.

So now all I really need to do is test to see if it works properly!

So if you see some rather odd posts appearing and disappearing then that’s just me!

Software update…

Posted August 8th, 2009 by Admin

It’s a never ending job!

The site has now been upgraded to WordPress MU 2.8.3 which fixes a few minor bugs.

I’ve also coded a sidebar widget for the WordBook plugin so if you link your blog to your Facebook account your current FB status is reported in the sidebar widget.

WordPress and Facebook

Posted August 6th, 2009 by Steve

Well I thought I’d see how it goes. So I downloaded Wordbook and dropped it into the plugins folder and went through the configuration steps which were very simple and easy to follow and it claims to be installed properly.

Certainly my WPMU back end now knows my Facebook status, so it will be interesting to see how well it works pushing data into facebook.

The only thing that seems to be missing is a sidebar widget for WP so it could display your FB status there.

Server uptime: 80 day(s), 22 hour(s) and 00 minute(s) | Server Load: 0.13, 0.10, 0.08