FeedWordPress 0.9(posted on 30 March 2005)

Update 2007-11-21: FeedWordPress 0.9 is now out of date. You can download the latest release — 0.991 at the time of this writing — from the project homepage.

FeedWordPress 0.9 is now available for download.

The current update does a couple of things.

First, it definitively slays the text config file: there are no options at all involved in normal operation that require editing either a configuration file or the PHP source to change. This was a guiding principle in 0.8, but I left a couple of the more technical items (such as whether or not to log updates into the PHP log) as define() statements in the PHP source. No longer: anything that can be set, can be set through the WordPress Dashboard at Options –> Syndication, or on individual feeds in Links –> Syndicated.

Second, it provides five hooks through the WordPress plugin architecture that you can use to supplement FeedWordPress’s behavior on updates, and–somewhat more likely to be immediately useful to you–filter incoming items, and (if you so desire) either modify their contents or filter the post out entirely. Documentation of these hooks is a bit sketchy as of 2005-03-29, but I hope to flesh it out in the near future. For now, here’s a quick example that you might be able to turn to your own purposes: say that you want to filter out any posts entitled “Friday Cat Blogging”. You could define a filter like this:

<?php
/*
Plugin Name: Feed Filters
Description: Filters incoming posts
Author: Charles Johnson
Version: 2005.03.30
Author URI: http://www.radgeek.com/
*/

add_filter('syndicated_item', 'filter_out_catblogging');

function filter_out_catblogging ($item) {
    if (strpos( 'friday cat blogging',
    strtolower( trim( $item['author_name'] ) ) ) !== false) :  
      $item = NULL;
    endif;
  endif;
  return $item;
}
?>

Once this filter is Activated from the WordPress Dashboard, any incoming posts with ‘Friday Cat Blogging’ in the title will be filtered out of the feed.

I’m planning on adding some filtering features to upcoming updates of FeedWordPress that don’t require any PHP coding, but they will be pretty simple and inflexible in nature–I’m not about to invent any convoluted new filtering syntax to do complicated things without PHP scripting. If your filtering needs are complicated enough that you need a syntax with a lot of expressive power, then PHP’s syntax is a pretty good bet. If they’re less complicated, then there’s no reason why the filtering features accessible to you need to be able to do things like match arbitrary fields against regular expressions. But I think there are good, simple ways to provide some basic features such as category-filtering and author-filtering from within the Dashboard.

I think this leaves just a few items on the to-do list prior to releasing a package I’d be willing to call “1.0″:

  1. Simple filtering by author or by category without any scripting

  2. An interface for editing the properties of syndicated Links, rather than simply dumping the user off at the normal “Edit Link” page. (This should, for example, provide a nice way to edit feed settings without having to dig around in the big textarea for the Link Notes.

  3. … is there anything else that is definitely needed? These are the main items I want to tackle, but if there’s something that would be helpful to you, let me know…

Replies to FeedWordPress 0.9 (11 so far…) Syndication feed

  1. pdx replied:

    installed your plugin, and have 2 problems with it. first of all, when i try opening Options > Syndication, i get an empty page. well, not entirely empty, the menus (Dashboard Write Manage, etc and the Options menus (General Writing Reading, etc)) are there, and the wordpress copyright. the rest is empty.

    and second, there is a problem with the oprional rss-functions.php file. try syndicating a website that uses a cyrillic charset, for example. when i go to Links > Syndicated and put in ‘http://www.hl2.ru/rss.xml’ in ‘Syndicate a new site’, i get an assortment of weird characters which are far from being cyrillic. then i replace rss-functions.php with the default one and everything is displayed fine. i know the new rss-functions.php is better, but not at the cost of it displaying wrong characters when it’s actually supposed to “improve the handling of categories and alternate character sets”. so is there a way to fix this?

    thanks in advance

  2. Rad Geek replied:

    Thanks for reporting this problem.

    I’ll do my level best to track down the origin of this problem, but I’m not tremendously optimistic. The problem is that dealing with character encoding in PHP is something of a mess unless you are using PHP5, and it’s very hard to predict whether a given user’s platform will correctly handle a particular alternate character set if that character set is anything other than UTF-8, ISO-8859-1, or US-ASCII. (The example feed that you give is encoded in windows-1251.) If your set-up does not have iconv, or has a broken version of it (like the one that ships with PHP 4.2.2), then this will cause problems like the ones you are seeing whenever you try to use a feed in an encoding other than one of these three.

    In the meantime, what I will probably do for the next bugfix release is to create an option that will bypass all attempts to convert the character set. There are some reasons why this is less than ideal, but it may do as a kludge to solve the problems that you are having.

    Hope this helps.

  3. pdx replied:

    Thanks for your reply, I hope this gets fixed somehome/sometime whatsoever ;)

    Just so you know my server config, i am using: >> Apache/1.3.27 (Unix) PHP/4.3.10 rus/PL30.17

    >> iconv support: enabled
    >> iconv implementation: libiconv >> iconv library version: 1.9

    Also, what about the problem when I get an empty Options > Syndication page? I was not able to fix this.

  4. Andrew replied:

    Very cool plugin idea - adding feeds to the links is much more cleaner than my current solution! I’m getting the same blank Options page problem as the previous commenter atm, but it works great otherwise :-)

  5. Daniel replied:

    Grat plugin!

    I’ve a problem. Inthe window of standard WordPress Link record I don´t see the Link Notes: key1: value1 key2: value2 key3: value3 feed/key1: value1 feed/key2: value2

    I wokr with WordPress 1.5 in Spanish. Tanks in advance!

  6. junap replied:

    hi there,

    I’m running into a problem when running FWP. If I call up the update-feed.php file (with or without the secret word), I get this error message:

    update-feeds: instruct FeedWordPress to look for new syndicated content

    Sending ping to …

    The XML-RPC ping failed (local): transport error - HTTP status code was not 200

    I have only 1 feed set up (BBC Music at http://news.bbc.co.uk/rss/newsonlineukedition/entertainment/music/rss.xml ), but it’s not kicking in (shows up fine in my links though)

  7. junap replied:

    oops, that comment stripped the address to xmlrpc.php after “Sending ping to”, but it’s there in the error message.

  8. Rad Geek's Projects:

    FeedWordPress 0.91

    [FeedWordPress 0.91][1] is now available for download.

    0.91 is a release that squashes a few bugs and adds a few useful features. Really, it adds enough useful features that it’s worth an increment of 0.1 rather than 0.01, but it’s not where I wan…

  9. M Bostick replied:

    I keep getting the following error when trying to syndicate my content. I have quite a few blogs that I am pulling from, but this just started about a day ago. It looks as if some of the content is coming across, but not all of it.

    Error:

    Sending ping to …

    The XML-RPC ping failed (remote): Sorry. I don’t syndicate .

  10. Nick replied:

    Hi,

    This looks to be an amazing plugin and does exactly what I am after. However I am having the exact same issue as pdx - I get an empty Options > Syndication page?

    I am on PHP5 here and I was wondering if that was the reason?

  11. Ken replied:

    Hi, I really love this plugin! However, I am having an issue with the user workflow. I like the idea of having all posts dropped in as DRAFTS so they can be reviewed. The only problem is if you have 200+ articles at once coming in from feeds, then the Draft area isn’t the place to work with these syndicated posts. I have greatly modified FeedWordPress to include a “Manage > Syndicated Posts” area. This area is for managing the Unpublished Syndicated Posts (Drafts). I am rather happy with the results.

    I have another problem that I haven’t tackled yet and it involves the lack of checking for duplicated posts.

    If a user updates feeds and then deletes what they don’t want the next update brings them ALL back…very annoying.

    I figured the permalinks from the meta table would at least be compared against so this didn’t happen. It looks like the plugin just cleans the meta table instead of doing a compare. The plugin doesn’t correctly look for duplicates. Or it doesn’t store the data necessary for this type of compare. Any suggestions??

    I would love to send you the modified plugin and see if you want to incorporate the changes. If not I would love to release it as a “FeedWordPress Pro”.

    Your thoughts on all of this…

    Thanks Ken Villines

Sponsorship