FeedWordPress

Description

FeedWordPress is an Atom/RSS aggregator for WordPress. It syndicates content from feeds that you choose into your WordPress weblog, and then the content it syndicates appears as a series of special posts in your WordPress posts database. If you syndicate several feeds then you can use WordPress’s posts database and templating engine as the back-end of an aggregation (“planet”) website. It was developed, originally, as a utility/hobby project, because I needed a more flexible replacement for Planet for aggregator sites that I administered.

FeedWordPress is designed with flexibility, ease of use, and ease of configuration in mind. You’ll need a working installation of WordPress (version 4.5 or later), and it helps to have SFTP or FTP access to your web host. The ability to create cron jobs on your web host is helpful but not required.

Using and Customizing FeedWordPress

FeedWordPress has many options which can be accessed through the WordPress Dashboard, and a lot of functionality accessible programmatically through WordPress templates or plugins. For further documentation of the ins and outs, see the documentation at the FeedWordPress project homepage.

License

The FeedWordPress plugin is copyright © 2005-2021 by Charles Johnson. It uses code derived or translated from:

according to the terms of the GNU General Public License.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Installation

To use FeedWordPress, you will need:

  • an installed and configured copy of WordPress (version 4.5 or later).

  • the ability to install new plugins on your site using either WordPress’s Plugins Repository, SFTP, FTP or shell access to your web host

New Installations

  1. Download the FeedWordPress installation package and extract the files on your computer.

  2. Create a new directory named feedwordpress in the wp-content/plugins directory of your WordPress installation. Use an FTP or SFTP client to upload the contents of your FeedWordPress archive to the new directory that you just created on your web host.

  3. Log in to the WordPress Dashboard and activate the FeedWordPress plugin.

  4. Once the plugin is activated, a new Syndication section should appear in your WordPress admin menu. Click here to add new syndicated feeds, set up configuration options, and determine how FeedWordPress will check for updates. For help, see the FeedWordPress Quick Start page.

Upgrades

To upgrade an existing installation of FeedWordPress to the most recent release:

  1. Download the FeedWordPress installation package and extract the files on your computer.

  2. Upload the new PHP files to wp-content/plugins/feedwordpress, overwriting any existing FeedWordPress files that are there.

  3. Log in to your WordPress administrative interface immediately in order to see whether there are any further tasks that you need to perform to complete the upgrade.

  4. Enjoy your newer and hotter installation of FeedWordPress!

Reviews

December 12, 2023
This is way overdue, but since 2011 I have used FeedWordPress on numerous education sites where students participate in their own blog space and the course site aggregates collectively their works, tags and categories provide powerful means to organize. One of the longest running ones has aggregated over 90,000 posts. A ton of flexible features and the developer has always been (and still does) respond quickly to issues. I’ve not done much lately, but looking at it in 2023 for a project. RSS is the secret sauce of the web.
February 20, 2022
Have used FeedWP for multiple projects over the decades, for monitoring news on specific topics. Works flawlessly, and offers many valuable options. A well-designed workhorse.
July 15, 2020
1. when you would add any site to subscribe for posts, this stupid plug-in would create new Categories against posts’tags from the feed site.(according to its default settings) 2. Posts in your feed would be shown without photos – just a plain text… in 21th century.You should ask yourself before plug-in activation – do you really need a text without photos? 3. Plug-in would copy text by text articles/posts without bringing canonical urls, so it would hurt SEO for both sites. Do you really need that? 4. After you would disable subscription for donor’s site with removing all posts and data from your local site – new added categories would remain on your local site and you would need delete them manually. Do you really need that mess?
July 8, 2020
I struggled with multiple RSS aggregation plugins, all of which were paid subscription plugins. I had already paid for one and after hours, I could not make it import enclosures to PowerPress. FeedWordpress took about 5 minutes to set up and worked perfectly. It also had the feature to all for reimportation of items which the paid plugin lacked. This free plugin is in every way better than the commercial alternatives.
April 22, 2020
I had been using the more popular plugin for a while and never really liked it. Then I found this one and it is so much more better for my needs. Thanks!
February 8, 2020
This plug-in is the best, highly recommended. Just one thing, pictures from RSS feeds are not showing up in blog, any ideas, or updates?
Read all 58 reviews

Contributors & Developers

“FeedWordPress” is open source software. The following people have contributed to this plugin.

Contributors

Translate “FeedWordPress” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2024.0511

  • COMPATIBILITY FIX FOR “Uncaught TypeError: in_array()” ERROR: This version includes a fix to a fatal error that some users encountered with some versions of PHP 8. If after upgrading to a recent version of FeedWordPress, you encountered a message about a “critical error” or error messages indicating something like “Uncaught TypeError: in_array() Argument #2”, then a couple of code changes in this version should hopefully resolve that error for you.

2024.0428

  • IMPORTANT SECURITY FIX: This version includes an important fix for a security vulnerability reported to me through Wordfence and WordPress support channels.

    Vulnerability CVE-2024-0839 allowed for an insecure Direct Object Reference which could allow contents of Private, Pending, or otherwise non-Published post objects to be accessed by an attacker possessing or generating the internal guid URI of the post object. This vulnerability has been eliminated in the current version; to protect your site’s security PLEASE BE SURE TO UPGRADE AS SOON AS POSSIBLE to version 2024.0428 or later, via the WordPress Plugin Repository or via Github.

  • ADDITIONAL COMPATIBILITY FIXES AND CODE CLEANUP: This version includes numerous fixes to improve compatibility fixes for ongoing new releases of PHP, and does some additional code clean-up to remove some obsolete methods of generating output, and to do a better job of sanitizing input and escaping output in the FeedWordPress administrative dashboard. It features numerous fixes and improvements contributed by user @GwynethLlewelyn and several new hooks allowing for translation of interface elements.

2022.0222

  • ADDITIONAL CODE CLEANUP: This version does some additional code clean-up to remove some obsolete methods of generating output, and to do a better job of sanitizing input and escaping output in the FeedWordPress administrative dashboard.

2022.0204

  • ADDITIONAL CODE CLEANUP: This version does some additional code clean-up to remove some obsolete methods of generating output, and to do a better job of sanitizing input and escaping output in the FeedWordPress administrative dashboard.

2022.0123

  • IMPORTANT SECURITY FIX: This version includes an important fix for a security vulnerability reported to me through WPScan and WordPress support channels.

    Vulnerability CVE-2021-25055 allowed for an XSS (Cross-Site Scripting) attack using a specially crafted URL for a page within the FeedWordPress admin interface. (To be exploited, an existing user with login credentials that allow them to access the FeedWordPress dashboard would have to follow the malicious URL and log in.) This vulnerability has been corrected in the current version; to protect your site’s security PLEASE BE SURE TO UPGRADE AS SOON AS POSSIBLE to version 2022.0123 or later, via the WordPress Plugin Repository or via Github.

  • BUG FIXES: Fixes a number of small possible bugs when creating new syndicated posts under unusual conditions — a sanity check is built in to avoid infinite loops in case of certain unexpected error outcomes when creating new users; some more possible sources of PHP 8 “Countable” warnings are eliminated, etc.

2021.0713

  • WORDPRESS 5.6, 5.7.x COMPATIBILITY FIXES. This release introduces fixes to annoying or worse warnings resulting from
    the deprecation of WordPress’s built-in WP_Feed_Cache class. This should resolve the problem if you are encountering
    annoying, worrying, or breaking problems related to the PHP warnings: “Deprecated: class-wp-feed-cache.php is
    deprecated since version 5.6.0″, and/or “Message: ./cache is not writable. Make sure you’ve set the
    correct relative or absolute path, and that the location is server-writable.”

  • Fixes PHP warning for “count(): Parameter must be an array or an object that implements Countable in
    …/wp-content/plugins/feedwordpress/feedwordpress.php on line 1566”

  • Miscellaneous fixes for other missing variable and global warnings.

  • Code cleanup and reorganization to allow better modularization of error messages, warning dialogs, and extended text.

2020.0818

  • WORDPRESS 5.5 COMPATIBILITY FIXES, RESOLVES WARNING NOTICES OR WP-ADMIN LOCKOUT. WordPress 5.5 incorporated a newer release of SimplePie, version 1.5.5, which is pretty rad, but FeedWordPress classes that relied on SimplePie 1.3.1’s method signatures would then produce PHP warning notices. That should be pretty innocuous, but depending on web server configurations, some users could get locked out of their own wp-admin interface by the display of error notices in the browser at inopportune times. In any case, I have added code to switch between backward-compatible modules for SimplePie 1.3.1 or updated modules compatible with SimplePie 1.5.5, based on the version available in your WordPress installation; so these notices and their untoward effects should be eliminated.

  • PHP 7.4 COMPATIBILITY FIX: Magic quotes were deprecated and then removed back in PHP 5.x, and in PHP 7.4 the vestigial get_magic_quotes_gpc() function has been deprecated. We don’t need to worry about it anymore for versions of PHP still supported by WordPress. The reference to the function in the MyPHP utility class caused PHP warnings in more recent versions of PHP; so it has now been removed.

  • DIVERS BUG FIXES AND PHP WARNING NOTICES RESOLVED, thanks to @oppiansteve’s fixes and pull requests. (Thanks!)

  • JQUERY COMPATIBILITY FIXES, RESOLVES MYSTERIOUS VANISHING FEED SELECTOR IN WP-ADMIN. An upgrade to WordPress’s packaged jQuery caused the drop-down box for feed settings (in Syndication > Feeds & Updates, Syndication > Posts & Links, etc.) to vanish shortly after pageload. That was awkward, so I disabled the now-incompatible interface chrome that was causing it to vanish.

2020.0118

  • WORDPRESS COMPATIBILITY TESTING. It’s been some time since a public release of FeedWordPress; so I have tested the plugin functionality with recent versions of WordPress and incorporated a number of PHP 7-compatibility related tweaks.

  • FEED PARSING FAULT TOLERANCE. If FeedWordPress fails to parse a feed using normal XML functions, it will attempt to convert any named entities that may be causing a problem, and then try to parse again. Props to @inanimatt for utility functions that help make the code go.

  • PAUSING UPDATES. In Syndication > Feeds & Updates, you can now instruct FeedWordPress to temporarily pause or resume updating feeds — whatever update method you are using, you can put new updates on hold for a while so that you can fiddle with setings, run tests, or do whatever you need to do before allowing updates to resume.

  • CODE MODERNIZATION, PHP 7.x COMPATIBILITY AND CLEANUP AND REORGANIZATION. I have been dusting out nooks and crannies in the code and hiving more functionality off into discrete modules. A number of FeedWordPress users have also offered pull requests to eliminate bothersome PHP notices and warnings related to PHP 7.x compatibility — in particular removing uses of deprecated each() functions, and avoiding use of count() on null values — which I have rolled into the main branch release. Props to @manzoorwanijk, @tristanleboss, @martinburchell and @oppiansteve

2017.1020

  • ADD BOILERPLATE / CREDITS FEATURE AVAILABLE IN POSTS & LINKS SETTINGS PANEL. I have added a new settings panel to the off-the-shelf features of FeedWordPress, under Syndication > Posts & Links (or under the Posts settings page for any individual feed), which allows you to define boilerplate text that should appear in connection with every syndicated post, or with every post syndicated from a particular feed. So, for example, if you want each syndicated post to include a byline reading “This is a syndicated post, reprinted from (LINK TO ORIGINAL SOURCE WEBSITE).”, you could set up this byline from within the FeedWordPress settings interface, by going to the Boilerplate / Credits panel, and adding a line to appear BEFORE the CONTENT of each syndicated post, using the text and shortcode “This is a syndicated post, reprinted from [source].” For those of you who have corresponded with me about this feature before, you may be familiar with it from the long-standing “experimental” add-on, FWP+: Add Attribution; I’ve decided that it’s been enough years, and I’ve had enough requests, that the Add Attribution feature may as well be included in the main FeedWordPress code.

    Back when FeedWordPress was first created, the assumption was that a well-behaved aggregator would include boilerplate text to indicate the source of syndicated posts, but that the best way to do this was to provide a set of syndication-specific template tags so that the administrator setting up the site could edit their Theme template files with constructs like:

    <?php if (is_syndicated()) : ?>
    <p class="byline">This post by <?php the_author(); ?> originally
    appeared at <a href="<?php the_syndication_source_link(); ?>"><?php
    the_syndication_source(); ?></a>.</p>
    <?php else : ?>
    <p class="byline">By <?php the_author(); ?>.</p>
    <?php endif; ?>
    

    You can still do this, of course, and for maximum expressive power and flexibility, it is certainly the best way to do it. Template Tags are documented here: http://feedwordpress.radgeek.com/wiki/templates/ However, (1) it requires writing PHP code, which not everyone is comfortable doing; and (2) it requires altering template files within your Theme, which is not always possible, especially given the increasing role that prepackaged commercial themes have come to play in the WordPress ecosystem. So, now, you can get some basic features for adding boilerplate text and attribution credits even without touching your template files, and without having to add custom add-ons for FeedWordPress. Enjoy!

  • MINOR CODE MODERNIZATION, PHP 7.1 COMPATIBILITY AND BUG FIXES. This project is now 12+ years old (good lord), and there are still some places where code was written at a time when PHP was a very different language from what it is now. Props to @david-robinson-practiceweb for pointing out and sending a pull request to fix some instances where obsolete PHP reference notation (&$q on parameters and so on) created a compatibility problem for PHP 7.1. Props to an email correspondent for pointing out a place in SyndicatedPost where excerpts should be generated from post content using encoding-aware mb_substr(), instead of naively running them through substr(). I’ve begun making some efforts throughout to begin auditing some of the creakiest old code in the project, to update what needs updating and improve documentation throughout.

2017.0913

  • PARTIAL FIX FOR 2X DUPLICATE POSTS APPEARING ON DUAL HTTP/HTTPS SITES: Some users reported an issue in which their FeedWordPress sites, which are over both insecure HTTP and over HTTPS, would pick up exactly 2 copies of every post or almost every post from certain feeds, and where the guids for each of the pair of duplicate posts would look exactly alike, except for a difference in the protocol, for example:

    http://www.example.com/?guid=c1cd28da39e8d7babcf6499983aca545
    https://www.example.com/?guid=c1cd28da39e8d7babcf6499983aca545
    

    … where www.example.com is the server that your own copy of FeedWordPress is installed. This release of FeedWordPress normalizes post guid prefixes so as to avoid or limit the scope of this problem.

  • PHP 7 Compatibility: eliminate remaining sources of PHP 7 compatibility-check failures — remove the use of depreciated mysql_error() function, and make sure all classes make use of __construct() convention for constructors.

  • AVOID “PHP Warning: shell_exec() has been disabled for security reasons in […]/feedwordpress/feeds-page.php on line 197”: FeedWordPress uses the PHP shell_exec() function in a very narrowly limited way for information gathering, trying to find the real path to curl or wget on your system, so that it can give as realistic as possible a recommendation for the sample crontab line displayed in Syndication > Feeds & Updates. Some web hosting environments disable shell_exec for security reasons (since it could in theory be used to do a lot more stuff than the very limited information gathering FWP uses it for); in which case, this part of the code in FeedWordPress could spit out a nasty-looking and potentially worrisome-looking error message. So, now this code is fenced with checks to make sure that shell_exec is available, before FWP attempts to make use of it.

2016.1213

  • WORDPRESS BACKWARD COMPATIBILITY FOR VERSIONS [4.5, 4.7]: This change fixes a fatal PHP error (on some web server configurations you’d see the message “Fatal error: require_once(): Failed opening required ‘[…]/wp-includes/class-wp-feed-cache.php’” on others, you might just see an HTTP 500 Internal Server Error or a blank page) when using FeedWordPress with versions of WordPress before 4.7. A change that I introduced to avoid a code module that had been deprecated in version 4.7 ended up relying on code modules that were only introduced as of version 4.7; so now, instead, FeedWordPress attempts to detect which modules the current version of the WordPress core makes available, and load the right modules depending on your WordPress version.

    In theory, up to this point, FeedWordPress supported any version of WordPress from version 3.0 onward. In practice, version 3.0 was released over 6 years ago, and I can realistically commit only to testing out new releases of FeedWordPress with a few prior versions of WordPress; so I’ve updated the “Requires at least” field to version 4.5, the first major release issued in 2016. If you’ve really got to use FeedWordPress with older versions of WordPress, it will probably still work with any moderately modern release of WordPress, but I won’t promise to keep it working with releases of WordPress that are more than about a year old.

2016.1211

  • WORDPRESS COMPATIBILITY: Tested with new versions of WordPress up to 4.7.

  • PHP WARNINGS UNDER WP 4.7: Eliminated cause of a PHP warning under WP 4.7 “Parameter 1 to FeedWordPressHTTPAuthenticator::set_auth_options expected to be reference” Warnings were due to a change in how http_api_curl hook is sometimes called in WP 4.7; so I changed the signature of the event handling method to avoid the notice. Props to @cogdog, @froomkin, @gwynethllewelyn et al. for flagging the issue and @garymarkfuller for suggesting a preliminary fix to the issue that was fairly similar to the solution I ended up adopting.

  • PHP 7 and PHP Strict Standards compatibility changes: @alexiskulash @daidais and @zoul0813 all sent pull requests through Github to fix some issues from a very old code base that has made its way from PHP 3.x through 5.x to the roll-out of PHP 7. Class methods should now fare better under modern versions of PHP and generate fewer “Deprecated” notices.

  • IMPROVEMENTS TO SCHEDULED AND AUTOMATIC UPDATES: use wp_loaded hook to check for magic URL parameters and to execute updates, to do pageload-based automatic updates, etc. Ensures that anything plugins or themes need to do in init to set up custom post types, taxonomies, etc. will be done before the update_feedwordpress updates are attempted. If you saw posts not getting put into the correct custom post type or custom taxonomies or similar problems when performing scheduled updates, but the problem seemed to go away when you manually performed updates through the wp-admin interface, then you might be able to solve those problems with this update.

2016.0420

  • WORDPRESS COMPATIBILITY: Tested with new versions of WordPress up to 4.5.

  • FILTERS AND ADD-ONS: Allow filters and add-ons to filter terms and taxonomy (categories, tags, custom taxonomies, etc.) more thoroughly and more fine-grainedly using syndicated_post_terms_match, syndicated_post_terms_match_{taxonomy}, syndicated_post_terms_unfamiliar, syndicated_post_terms_mapping, syndicated_item_feed_terms, and syndicated_item_preset_terms filters.

  • FILTERS AND ADD-ONS: Globals $fwp_channel and $fwp_feedmeta REMOVED. These global variables, originally introduced to allow filters access to information about the source feed in syndicated_item filters were deprecated 6+ years ago. If you have any filters or add-ons which still depend on these global variables, you’ve been using obsolete techniques and you should see about fixing them to access data about the source feed using the SyndicatedPost::link element instead. For documentation, see the FeedWordPress documentation wiki at http://feedwordpress.radgeek.com/wiki/syndicatedpost and http://feedwordpress.radgeek.com/wiki/syndicatedlink.

  • BUGFIX: Syndication > Diagnostics HTTP diagnostic test widget was broken due to a dumb error on my part. Now fixed.

  • SMALL CODING CHANGES: Lots of small changes to code organization, incorporation of some PHP 5.x coding conventions, etc.

2015.0514

  • IMPORTANT SECURITY UPDATE: This version includes two important fixes for potential security vulnerabilities reported to me through support channels.

    The first is a common problem across several plugins due to an ambiguity in the WordPress documentation and a change in the behavior of WordPress’s built-in add_query_arg() and remove_query_arg() functions which could, under certain low-probability conditions, allow for potential XSS attack vectors. This fixes issue # 39 reported at https://github.com/radgeek/feedwordpress/issues/39 Thanks to github.com/quassy

    The second fixes a security vulnerability that was reported to me privately (thanks to Adrián M. F.) which, under other low-probability conditions, could allow for SQL insertion attacks by a malicious user with access to login credentials, which would compromise data security.

    It is IMPORTANT and worth your while to upgrade FeedWordPress as soon as possible in order to eliminate these vulnerabilities. If you have any questions or if there is something blocking you from making the upgrade which you need my help with, don’t hesitate to get in touch.

  • ADMIN UI BUGFIX: “Update Now” button in feeds setting pages should now work once again instead of causing a PHP fatal error. See https://github.com/radgeek/feedwordpress/issues/46

  • SEVERAL OTHER SMALL BUG FIXES. See https://github.com/radgeek/feedwordpress/issues/32 https://github.com/radgeek/feedwordpress/issues/30 https://github.com/radgeek/feedwordpress/issues/29 etc.

2014.0805

  • FILTERS AND ADD-ONS: A number of new hooks for filters and add-ons to further customize the behavior of FWP have been added.

  • COMPATIBILITY/BUGFIX: Many users saw odd characters, especially “n,” appearing in posts in versions of WordPress from 3.6 on, due to a change in when the API expects HTML data for posts to be slashed and when it does not. This has been fixed, so that the junk characters should no longer appear, regardless of your version of WordPress.

  • BUGFIX: A bug preventing FWP from saving categories assigned under Syndication > Categories & Tags has been fixed.

  • BUGFIX: Post-editing related metaboxes should now show up when you edit items of any post type, including custom types, not only normal WordPress posts.

  • BUGFIX: A bug in the admin UI that caused the “Alternative Feeds” / “Find Feeds” box to throw a permissions error has been fixed.

  • BUGFIX: A bug preventing proper mapping of categories and other terms in 2013.0504 has been fixed.

  • BUGFIX: A number of small fixes contributed through Github by Flynsarmy should eliminate PHP warnings for many users on several methods that are called as static methods within FeedWordPress.

2013.0504

  • BUGFIX: PHP 5.4 compatibility — includes some more extensive fixes to compatibility issues with PHP 5.4’s handling of global variables

  • DIAGNOSTICS: New diagnostics settings added to help track behavior of terms (categories, post tags, etc.) for syndicated posts.

2012.0504

  • MODULE REORGANIZATION: Should ensure that all needed submodules will be properly included regardless of whether you are installing from github, from SVN, or from the WordPress plugins page. If you’ve been getting fatal errors about required modules not being found, this release should hopefully resolve the issue.

2012.0503

  • BUGFIX: Works properly again with WordPress installations that use a MySQL table name prefix other than the default wp_ prefix.

  • BUGFIX: Includes a couple of significant PHP 5.4 compatibility fixes. Now that PHP 5.4 is more widely deployed, Diagnostics will now also show PHP version and some other potentially useful troubleshooting information.

  • ADMIN UI: Better indicates your options when deleting a syndicated post so as to let you know whether it will be Trashed (and thus not resyndicated) or Erased (and thus potentially resyndicated)

  • ADMIN UI: Adds an AJAXy Test Expression button to allow live testing of sample results from expressions in Custom Post Settings.

2012.1218

  • WORDPRESS VISUAL EDITOR FIXED. There was an unlisted change in the 2012.1212 release which had the effect of disabling the WordPress Visual Editor for all posts syndicated by FeedWordPress. Many users reported this as a bug. It was actually a deliberate decision — a crappy way to try to deal with a crappy situation. (Many users had previously reported a “bug” in which all the paragraph or line breaks seemed to be stripped out of their syndicated posts; the issue turned out to be that the Visual Editor was stripping out <p> and <br/> tags on the assumption that the resulting post would be sent through standard WordPress formatting filters. But under default settings, posts syndicated by FWP deliberately bypass WordPress formatting filters.) In any case, this version adopts a more flexible compromise. If FeedWordPress is set up to bypass WordPress formatting filters (as it is by default), then the Visual Editor will be disabled for syndicated posts (since using it would produce incorrect results). If on the other hand FeedWordPress is set up to expose syndicated posts to WordPress formatting filters (as it usually is for those using the Visual Editor to manually edit posts), then the Visual Editor tab will be re-enabled for syndicated posts.

  • BUG FIX: PERMALINKS REWRITTEN FOR CUSTOM POST TYPES AS WELL AS NORMAL
    WORDPRESS POSTS. If you had WordPress set up to syndicate incoming posts
    to a custom post type (under Syndication > Posts & Links), and asked
    FeedWordPress to make “permalinks point to the original site”, then
    previous versions of FeedWordPress would fail to do the rewriting —
    permalinks would only be rewritten to point to the original source for
    normal WordPress posts, not for custom post types. In 2012.1218 this bug
    has been fixed: all post types will now have permalinks rewritten unless
    you request for permalinks to point to the local copy on your aggregator
    site.

  • BUG FIX: ELIMINATES “PHP Fatal error: Call to a member function
    setting() on a non-object….” Some changes to the in-memory caching of
    information about feed subscriptions could result in a fatal PHP error
    in cases where you have de-activated one of your subscriptions, but
    posts from that subscription were still in the archive. This would
    normally show up through half-completed feeds or half-completed pages
    that suddenly broke off in the middle, and displayed or logged an error
    message like: “PHP Fatal error: Call to a member function setting() on a
    non-object in {…}/wp-content/plugins/feedwordpress/feedwordpress.php
    on line 615”. This bug has been eliminated, so affected feeds and pages
    should now render correctly, and the error message should no longer
    appear.

  • BUG FIX: CATEGORY BOXES IN SYNDICATION > CATEGORIES & TAGS. Some minor
    bugs in the appearance and animation of category checkboxes (for
    example, the checkbox used to select categories for syndicated posts on
    the Syndication > Categories & Tags settings page) have been fixed.

2012.1212

  • WORDPRESS 3.5 COMPATIBILITY: This release has been tested for compatibility
    with new releases of WordPress, up to version 3.5, and any documented
    compatibility issues have been cleared — in particular, if you were seeing
    error pages stating that you don’t have permission to access the
    FeedWordPress Syndication page within the WordPress admin interface, then
    upgrading to this release should fix the problem.

    As always, if you encounter any compatibility problems after upgrading your
    version of WordPress and your version of FeedWordPress to the most recent
    versions, please contact me with as detailed a description as possible of
    the issue you are encountering, the circumstances you’re encountering it
    under, what you expect to see happening, and what is happening instead.

  • PHP 5.4 COMPATIBILITY: This release has been audited to fix potential
    problems with deprecation notices or fatal errors under recent versions
    of PHP. In particular, all uses of run-time pass-by-reference have been
    eliminated from the code; if you were seeing a fatal error reading
    “Call-time pass-by-reference has been removed …” then upgrading to
    this release should fix the problem.

  • CUSTOMIZATION FRAMEWORK: A great deal of work has been done to make the
    underlying framework more flexible, so that PHP add-ons can be written
    to adapt FeedWordPress to handle custom XML vocabularies, expiration of
    posts under specified conditions, and other custom behavior.

  • BUGFIX: MANUALLY EDITED POST SLUGS NOT OVERWRITTEN. Thanks to a report
    by Chris Fritz, I’ve identified some code that causes post slugs for the
    posts generated by FWP to be rewritten with every update, even if the
    user has manually updated the slug from within the WordPress editing
    interface. This has been fixed: FWP will continue to generate new slugs
    for syndicated posts, but when syndicated posts are updated, they will
    retain the slug that they had at the time of the update; any manual
    changes to the post slug should be preserved.

  • USER-AGENT STRING: FeedWordPress now sends a distinctive User-Agent
    string identifying itself, and noting that it is a feed aggregator.

  • MISCELLANEOUS PERFORMANCE IMPROVEMENTS: A number of changes have been
    made to try to reduce the intensity and expense in terms of both
    database performance and web server memory consumption.

  • DIAGNOSTICS IMPROVEMENTS: A number of new and improved diagnostics have
    been added which should aid in understanding and troubleshooting issues
    that may arise.

2011.1019

  • BUGFIX: “THERE ARE NO HTTP TRANSPORTS AVAILABLE” ERROR FIXED: The initial
    support for HTTP Basic and Digest authentication in version 2011.1018
    contained a bug that could cause HTTP requests for feeds or for other
    WordPress resources to break down if you do not have the PHP curl module
    installed. This bug has been fixed, and these errors should no longer
    appear.

  • IMPROVED HTTP AUTHENTICATION SUPPORT: In addition, the HTTP Authentication
    support in FeedWordPress has been extended, to ensure that Basic
    authentication is available in many web host configurations, and to allow
    you to add a username and password for a feed immediately when you
    subscribe to it.

2011.1018

  • HTTP BASIC AND DIGEST AUTHENTICATION SUPPORT: FeedWordPress now offers
    improved support for syndicating feeds that make use of HTTP Basic or HTTP
    Digest authentication methods. In order to set up authentication on one of
    your feeds, just go to its Settings > Feed page, and click on the “Uses
    Username/Password” link underneath the Feed URL. Enter the username and
    password for accessing the feed, then select the authentication method. (If
    you’re not sure which method your feed provider uses, try Basic first.)
    Save Changes, and syndicate away.

    NOTE: HTTP Digest support requires the curl module for PHP. If you are not
    sure whether this module has been installed, contact your web hosting
    provider to check.

  • WP 3.3 (BETA) COMPATIBILITY: This version fixes an init-sequence bug that
    could cause intrusive warning messages or fatal errors in WP 3.3 beta
    versions.

  • BUGFIX: FIXES LONG DELAYS IN UPDATES SCHEDULES IN LARGE INSTALLATIONS. A
    performance feature introduced in version 2011.0721 had some flaws in its
    implementation, which tended to create serious delays (on the order of
    several hours) in FeedWordPress’s attempts to schedule updates for feeds,
    when users had a very large number of feeds (several dozen or more) in their
    FeedWordPress installation. This feature has been reconfigured to adjust
    dynamically to the number of feeds in Syndicated Sources and the frequency
    with which they are updated. If you’ve seen a lot of ready-to-update feeds
    piling up, several hours after they were supposed to get updated, then this
    upgrade should better ensure that your feeds get updated in a timely fashion.

  • BUGFIX: syndicated_item_guid FILTERS FIXED. Previous versions of
    FeedWordPress theoretically allowed for filters on the syndicated_item_guid
    hook, which was intended to filter the globally-unique identifier element
    (rss:guid or atom:id) — useful if you need to convince FeedWordPress to use
    different guids, or to recognize two or more incoming posts as versions of
    the same post rather than as distinct items. However, while the hook
    affected the guid stored in the WordPress database, it did not affect the
    guid used to check whether an incoming feed item had already been syndicated
    or was a new item — which greatly limited the practical usefulness of the
    filter. This bug has been fixed: syndicated_item_guid filters should now
    properly control not only the final database record, but also the initial
    uniqueness test applied to posts.

2011.0721

  • BUGFIX: SERIOUS BUG CAUSING RARE UNEXPECTED DELETION OF PAGES AND OTHER
    CONTENT. A bug in the guid-checking code for some rare kinds of guids could
    cause content in the wp_posts table to seemingly disappear at random after
    FeedWordPress updates.This most frequently but not exclusively affected
    static pages. What actually happened is that in these rare cases the
    existing static page was mistaken for an older version of the new incoming
    syndicated post, which was then stored as a new revision of the original
    page. The bug that caused these mistaken identities has been fixed.

  • BUGFIX: UNWANTED AUTOMATIC PAGE-LOAD-BASED UPDATES NO LONGER A NUISANCE.
    Some users encountered a bug in which FeedWordPress would adopt an automatic
    page-load-based update method, even if they had requested that it not do
    so, and that it use a manual or cron job update method instead. The bug
    causing this has been fixed, and page-load-based updates should no longer
    trigger unless explicitly turned on.

  • WP 3.2 USER INTERFACE COMPATIBILITY: POST TAGS BOX NOW WORKS AGAIN. The
    release of WordPress 3.2 caused a breakage in the tags box which prevented
    you from adding or removing tags under Syndication –> Categories & Tags.
    (The breakage was the result of an incompatibility introduced by the new
    release of jQuery.) This breakage has now been fixed, and the tags box
    should work correctly again.

  • FEED UPDATE SCHEDULING IMPROVEMENTS: UI. The Syndicated Sources table now
    provides considerably more data to understand update scheduling, when
    specific scheduling decisions are made because of, e.g., requests from the
    feed producer.

  • FEED UPDATE SCHEDULING IMPROVEMENTS: ENFORCEABLE “MINIMUM INTERVAL” SETTING
    TO SPACE OUT UPDATES. Some feeds request specific update schedules, using
    standard elements such as sy:updateFrequency and rss:ttl. Normally,
    FeedWordPress respects any scheduling requests that a feed makes — if it
    requests a longer gap between polls than what FWP would normally adopt, then
    FWP slows down to meet the request. If it indicates a shorter gap than what
    FWP would normally adopt, FWP speeds up and checks that feed for updates
    more often than it normally would. Now, there should not be any way for user
    settings to override an explicit slow-down request from the feed producer —
    if producers indicate a particular update schedule, then polling the feed
    more frequently than they request is considered abusive behavior. But
    there’s no reason why users should not be able — if they so desire — to
    override speed-up requests, and poll a feed less frequently than the
    indicated update schedule, if the FWP user wants to space update checkins
    over a longer …