FeedWordPress 0.95 is loosed upon the world(posted on 22 April 2005)

Update 2007-11-21: FeedWordPress 0.95 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.95 is now available for download.

0.95 squashes a bug that I discovered, to my irritation, in the field at Feminist Blogs, and adds some significant features that may be of interest. Author aliases are now supported, and you can now decide whether or not FeedWordPress will create new authors or new categories when it encounters author names or category names that are not yet in the WordPress database. These features can even be used to provide some simple filtering functionality without having to write a PHP filter. For more information, see the change log and the online documentation.

We are slowly moving towards 1.0 (which, incidentally, I don’t intend to call 1.0 — because, roughly, once it reaches that point it will be mature software and will be unlikely to make any milestone changes of the sort that would make a major version number make sense; the version will most likely be named after the date that it was released).

Here’s a rough outline of what there is left for me to do between now and the 1.0 release:

  1. Bug fixes (investigating bugs that users are reporting to me now, and squashing any new ones that come up)

  2. Adding some more global options (e.g., allowing users to globally set the default post status, comment status, and ping status for syndicated posts)

  3. Support for RSS enclosures.

  4. Adding a proper interface for editing FeedWordPress-specific settings for Contributor links; this special editing interface would be reached through the “Edit” link under Links –> Syndicated.

Is there anything important that I’m missing? Let me know what you think.

Change Log: from 0.91 to 0.95

  • BUG FIX: Fixed an obscure bug in the handling of categories: categories with trailing whitespace could cause categories with duplicate names to be created. This no longer happens. While I was at it I tightened up the operation of FeedWordPress::lookup_categories() a bit in general.

  • FEATURE DEPRECATED: the feed setting hardcode categories is now deprecated in favor of unknown categories (see below), which allows you to strip off any syndication categories not already in your database using unknown categories: default or unknown categories: filter. If you have hardcode categories: yes set on a feed, this will be treated as unknown categories: default (i.e., no new categories will be added, but if a post doesn’t match any of the categories it will be added in the default category–usually “Uncategorized” or “General”).

  • FEATURE: You can now set global defaults as to whether or not FeedWordPress will update the Link Name and Link Description settings for feeds automatically from the feed title and feed tagline. (By default, it does, as it has in past versions.) Whether this behavior is turned on or off, you can still override the default behavior using feed settings of hardcode name: yes, hardcode name: no, hardcode description: yes, or hardcode description: no.

  • FEATURE: Users can now provide one or several “aliases” for an author, just as they can for a category. For example, to make FeedWordPress treat posts by “Joseph Cardinal Ratzinger” and “Pope Benedict XVI” as by the same author, edit the user profile for Pope Benedict XVI and add a line like this to the “User profile” field:

    a.k.a.: Joseph Cardinal Ratzinger
    

    You can add several aliases, each on a line by itself. You can also add any other text you like to the Profile without interfering with the aliases.

  • FEATURE: Users can now choose how to handle syndicated posts that are in unfamiliar categories or by unfamiliar authors (i.e., categories or authors whose names are not yet in the WordPress database). By default, FeedWordPress will (as before) create a new category (or new author) and use it for the current post and any future posts. This behavior can be changed, either for all feeds or for one or another particular feed.

    There are now three different options for an unfamiliar author: (1) FeedWordPress can create a new author account and attribute the syndicated post to the new account; (2) FeedWordPress can attribute the post to an author if the author’s name is familiar, and to a default author (currently, this means the Site Administrator account) if it is not; (3) FeedWordPress can drop posts by unfamiliar authors and syndicate only posts by authors who are already in the database.

    There are, similarly, two different options for an unfamiliar category: (1) FeedWordPress can create new categories and place the syndicated post in them; (2) FeedWordPress can drop the unfamiliar categories and place syndicated posts only in categories that it is already familiar with. In addition, FeedWordPress 0.95 lets you choose whether posts that are in no familiar categories should be syndicated (and placed in the default category for the blog) or simply dropped.

    You can set the default behavior for both authors and categories using the settings in Options –> Syndication. You can also set different behavior for specific feeds by adding the unfamiliar author and / or unfamiliar categories settings to the Link Notes section of a feed:

    unfamiliar author: (create|default|filter)
    unfamiliar categories: (create|default|filter)
    

    A setting of unfamiliar author: create will make FeedWordPress create new authors to match unfamiliar author names for this feed alone. A setting of unfamiliar author: default will make it assign posts from unfamiliar authors to the default user account. A setting of unfamiliar author: filter will cause all posts (from this feed alone) to be dropped unless they are by an author already listed in the database. Similiarly, unfamiliar categories: create will make FeedWordPress create new categories to match unfamiliar category names for this feed alone; unfamiliar categories: default will cause it to drop any unfamiliar category names; and unfamiliar categories: filter will cause it to both drop any unfamiliar category names and to only syndicate posts that are placed in one or more familiar categories.

    These two new features allow users to do some coarse-grained filtering without having to write a PHP filter. Specifically, they offer an easy way for you to filter feeds by category or by author. Suppose, for example, that you only wanted to syndicate posts that your contributors place in the “Llamas” category. You could do so by setting up your installation of WordPress so that the only category in the database is “Llamas,” and then use Options –> Syndication to set “Unfamiliar categories” to “don’t create new categories and don’t syndicate posts unless they match at least one familiar category”. Now, when you update, only posts in the “Llamas” category will be syndicated by FeedWordPress.

    Similarly, if you wanted to filter one particular feed so that only posts by (for example) the author “Earl J. Llama” were syndicated to your site, you could do so by creating a user account for Earl J. Llama, then adding the following line to the settings for the feed in Link Notes:

    unfamiliar author: filter
    

    This will cause any posts from this feed that are not authored by Earl J. Llama to be discarded, and only the posts by Earl J. Llama will be syndicated. (If the setting is used on one specific feed, it will not affect how posts from other feeds are syndicated.)

Replies to FeedWordPress 0.95 is loosed upon the world (16 so far…) Syndication feed

  1. pdx replied:

    I have discoved a weird bug with the latest version. Try to syndicate http://www.ag.ru/rss/ag-reviews.xml. It shows okay in the preview but when you use update-feeds.php to actually grap the news and import them into your blog - something goes wrong. The text lines brake at the most weird places making the whole think look rather ugly. I have no idea why it does that. The posts are imported fine and without any problems exept for those line brakes. Ah well, try to syndicate that feed on a test blog and you’ll see what i’m talking about.

  2. Denis de Bernardy replied:

    Did you try to preg_replace( "/(\n|\r)+/", "\n\n", $post_content )?

  3. absurdness.com replied:

    This is an AWESOME plugin - I can’t wait to fully implement it on some of my sites so that I can seperate my blogs into various niche areas, and then have a main blog that pulls all the info together chronologically.

    Two things I’m having trouble getting working

    1) Citations for syndicated posts — in the readme, you mention you use the following code in the post template for citations:

    from ';
        the_syndication_source();
        echo '</a>';
    endif; ?&gt;
    

    I want to slightly modify the code so that the URL used for thesydincationsource is for the permalink to the post. I’ve tried replacing thesyndicationsourcelink() with thesyndication_permalink(), but when I do that it actually returns the URL of the blog the plugin is installed on. Also, I don’t know much about php and was wondering how to remove the if logic so that when author name = syndication source, it still displays ‘by author @ syndicated site’ where clicking author shows all posts by author and clicking syndicated site takes you to permalink of original syndicated post.

    Thing 2 - I would really like to change the default behavior such that comments and pings are turned on by default for syndicated posts. I can’t find any way of doing this through the dashboard, and can’t seem to find the right place in the code for the plugin to change it (and I’m a little afraid to muck with the plugin code since, as mentioned, I don’t know much php)

    Any help that you can provide will be tremendously appreciated!

    I am flat broke right now, but when I get my income back up I look forward to making a donation to this project!

  4. absurdness.com replied:

    looks like the code I pasted in there got completely destroyed by the commenting system. but the code is exactly the sample you provided in the readme..

    thanks again!

  5. stefano replied:

    This is for sure the best plugin I ever seen :-)

    but… ;-)

    I would like to import/post my del.icio.us feed. I don’t want FeedWordPress create any new category: just post it to a default “quick links” category and outputs all the tags the links belongs to as a series of links within the post. For the second action (i.e. outputting the tags as a series of links) I think I’ll heve to write some sort of plugin, isn’t it? But for the first problem I think that an option for sydicate a whole feed to a default category in WP (a category not listed in the feed) would be very useful!

    Thanks again for your great job!

  6. ..:digital||divide:..:

    …e WordPress diventa un aggregatore

    FeedWordPress un plugin che trasforma il vostro WordPress in un potente aggregatore di feed. In poche parole vi consente di pubblicare sul blog, come se fossero normali post, gli elementi contenuti in feed di vostro interesse.

    In questo non f…

  7. Denis de Bernardy replied:

    Neat plugin. Lots of fun to play with, too.

    I’m experiencing a few tiny problems.

    /link-manager.php?page=feedwordpress.php

    is missing a strip_slashes somewhere in the title (e.g. try syndicating a feed where the title has a single quote)

    also, I’ve issues when the post_title is in UTF-8 rather than html encoded, e.g. if you syndicate a WP site with a post titled “Lorem’s ipsum”, WP transforms the ‘, and that becomes a ? in feedwordpress.

  8. Denis de Bernardy replied:

    By the way: what does the ‘Write update notices to PHP logs’ option do?

  9. Denis de Bernardy replied:

    bug fix @line 1014:

    elseif ( isset( $item['pubdate'] ) ):
    {
      if ( preg_match( “/([a-zA-Z]+ [a-zA-Z]+ [0-9]+) ([0-9]+:[0-9]+:[0-9]+) ([a-zA-Z]+) ([0-9]+)/”, $item['pubdate'] ) )
        $item['pubdate'] = preg_replace( “/([a-zA-Z]+ [a-zA-Z]+ [0-9]+) ([0-9]+:[0-9]+:[0-9]+) ([a-zA-Z]+) ([0-9]+)/”, “$1 $4 $3 $2″, $item['pubdate'] );
    
    $post['epoch']['issued'] = strtotime( $item['pubdate'] );
    

    }

  10. Ringo replied:

    Did I say you are da man?

  11. stefano replied:

    Danis, wich problem id solved by your bugfix?

    thanks Stefano

  12. stefano replied:

    Let’s say I have a feed that include posts that have a date in the future (is about seminars). It looks like feedwordpress doesn’t parse it or anyway it doesn’t post it to WP database…

    Is there a way to change this behaviour?

  13. Denis de Bernardy replied:

    @stefano: a date format I was retrieving was not converted properly. it was due to the php strtotime function. the bug fix solves it.

  14. » Nuova versione per FeedWordPress ..:digital||divide:..:

    [...] iminati, mi chiedo (e lo chiedo all’autore in un commento) se almeno il fix indicato in un commento alla precedente versione è stato incorporato&#823 [...]

  15. Anonymous replied:

    In Zeiten von massenhaft Websitenmüll im Internet eine sehr gut aufgebaute Website, nicht überdimensioniertes Design und sehr gut recher-schierte Hintergrundinformationen.

  16. Meier replied:

    I was palying around with feedwp - but i have SH-autolinks enabled, actuaaly tweaked to tag predefined words ..

    But the content aggregated byt feed wp - doesent get filtret some how - i tried to look into the source - but could not figure where i could add a line of code to the agrregated content … any hints ?

Sponsorship