Build a Personal Social Aggregator with Pubwich

Dmitri Popov

Productivity Sauce

Sep 08, 2009 GMT
Dmitri Popov

Facebook, Twitter, Delicious, Flickr -- with new social services popping up almost every day, how do you make all your social activities easily accessible to your friends and followers?

Enter Pubwich, a simple PHP script that aggregates data from several popular social services into a single HTML page. To run Publish on your server, you need the Apache server, PHP 5 with the SimpleXML and cURL extensions, and the crontab tool. To install Pubwich, download the latest version of the software, unpack the downloaded archive, and move the resulting folder to the document root of your server. Rename the cfg/config.sample.php file to cfg/config.php and open t for editing. Specify the parameters in the Localization and General site information sections. Next, you have to configure the settings for the services you want to use with Pubwich. To do this, you need to understand the structure of the config.php file. Each supported service is stored as an array containing the required settings. For example the Flickr array is as follows:

array( 'Flickr', 'photos', array(

    'key' => 'FLICKR_KEY_HERE',

    'userid' => 'FLICKER_USERID_HERE',

    'username' => 'FLICKR_USERNAME_HERE',

    'total' => 12,

    'title' => 'Flickr',

    'description' => 'latest photos',

    'row' => 4,

Each service array is rendered as a box on Pubwich's main page. To configure access to Flickr, you replace placeholders with the actual values. If you want to remove a specific service from your Pubwich page, simply delete the appropriate array from the config.php file. All service arrays are grouped in arrays that represent columns on Pubwich's main page. So if you want the Flickr box to appear in a different column, move it from one column array to another.
In addition to the third-party social services, Pubwich can handle RSS feeds, so you can use it to publish feeds from your favorite Web sites. To add an RSS feed to Pubwich, you have to add an array containing the RSS feed's settings. Here is what the array that displays the latest five headlines from the Productivity Sauce RSS feed looks like:

array( 'RSS', 'Productivity Sauce', array(
    'url' => '',
    'link' => '',
    'total' => 5,
    'title' => 'Productivity',
    'description' => 'Dmitri's open source blend of productive computing'

You can also tweak the default theme, and the supplied README file explains how to do that.


  • Posting to social media

    I'm looking to post to multiple social media sites. Any suggestion on where I cold find a script to post from a form to multiple social media sites using the connecting APIs?
  • PubwichFork

    Hi guys,

    you may check out PubwichFork, it adds some flavour:

    * individual cache invalidation times for each service possible
    * intelligent output caching and post-output processings for faster response times
    * filtering service data streams before output
    * using SimplePie as stable Atom/RSS feed API including basic media feed support

    A release candidate for version 2.0 is ready to get tested happy
comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More