PluginProbe
FeedWordPress / 0.96
FeedWordPress v0.96
trunk 0.8 0.9 0.91 0.95 0.96 0.97 0.98 0.981 0.99 0.991 0.992 0.993 2008.1030 2008.1101 2008.1105 2008.1214 2009.0612 2009.0613 2009.0618 2009.0707 2009.1111 2009.1112 2010.0127 2010.0528 All 65 releases
← All changes | ChangeLog.text +3 -858 2009.07070.96 View file →
@@ -1,876 +1,7 @@
1 -FeedWordPress Change Log
2 -========================
3 -Changes from 2009.0618 to 2009.0707
4 -* BUGFIX: WORDPRESS 2.8 AJAX COMPATIBILITY ISSUES RESOLVED (blank or
5 - truncated "Syndicated Sites" administration page): Due to changes in the
6 - AJAX interface elements between WordPress 2.7 and WordPress 2.8, several
7 - FeedWordPress users encountered an issue where the front "Syndication"
8 - page in the FeedWordPress administrative interface would come up blank,
9 - without the normal "Syndicated Sites" list and "Update" control, or
10 - sometimes wth the boxes visible but one or both of them truncated, with
11 - only the title bar. This issue should now be resolved: with the new
12 - version of FeedWordPress, the compatibility issue that caused the
13 - disappearance should be eliminated, and if boxes are shown with only
14 - their handle visible, you should once again be able to drop down the
15 - rest of the box by clicking once on its title bar.
1 +Change Log
2 +==========
16 3
17 -* BUGFIX: TAG SETTING WIDGET FIXED. Due to changes in interface elements
18 - between WordPress 2.7 and WordPress 2.8, people using FeedWordPress with
19 - WordPress 2.8 found that the widget for setting tags to be applied to
20 - all syndicated posts, or all syndicated posts from a particular feed,
21 - no longer displayed "Add" and "Remove" buttons for individual tags. This
22 - issue has now been fixed, and the tagging widget should once again work
23 - more or less exactly like the tagging widget for individual posts in the
24 - normal WordPress admin interface.
25 -
26 -Changes from 2009.0613 to 2009.0618
27 -* BUGFIX: MYSTERY ERRORS WITH WITH WP_Http_Fsockopen HTTP TRANSPORT
28 - ELIMINATED: Thanks to a combination of a subtle bug in FeedWordPress,
29 - and changes to the HTTP transport code in WordPress, a number of users
30 - encountered an error in which any time they attempted to add a new feed
31 - through the FeedFinder interface, FeedWordPress would fail and display
32 - an HTTP request failure diagnostic message. The subtle bug has been
33 - fixed, and with it, most of these errors should now be eliminated.
34 -
35 - Be sure to upgrade your MagpieRSS to the most recent MagpieRSS version
36 - after you have insalled FeedWordPress 2009.0618, or this bug fix will
37 - not take effect.
38 -
39 -
40 -Changes from 2009.0612 to 2009.0613
41 -* INTERFACE/BUGFIX: WORDPRESS 2.8 CATEGORY BOX FIX. Thanks to a subtle
42 - change in class names between the WordPress 2.7 and 2.8 stylesheets,
43 - category boxes in the FeedWordPress settings interface tended to overflow
44 - and have a lot of messy-looking overlapping text under WordPress 2.8.
45 - This has now been fixed.
46 -
47 -* FeedFinder FAILURE DIAGNOSTICS: When FWP's FeedFinder fails to find any
48 - feeds at a given URL (for example, when you are trying to add a
49 - subscription through the administrative interface and you run into an
50 - error message), FeedWordPress now provides more diagnostic information
51 - for the reasons behind the failure. If that helps you, great; if not,
52 - it should help me respond more intelligently to your support request..
53 -
54 -Changes from 2008.1214 to 2009.0612
55 -* WORDPRESS 2.8 COMPATIBILITY: FeedWordPress 2009.0612 has been tested for
56 - compatibility with the recent version 2.8 release of WordPress.
57 -
58 -* INTERFACE RESTRUCTURING: In order to avoid settings posts from becoming
59 - too crowded, and to modularize and better organize the user interface,
60 - new "Posts" and "Categories & Tags" subpages have been created under the
61 - "Syndication" menu. "Posts" controls settings for individal syndicated
62 - posts (such as publication status, comment and ping status, whether or
63 - not to use the original location of the post as the permalink, whether
64 - or not to expose posts to formatting filters, and so on). "Categories &
65 - Tags" controls settings for assigning new syndicated posts to categories
66 - and tags, such as categories or tags to apply to all syndicated posts,
67 - and how to handle categories that do not yet exist in the WordPress
68 - database. These subpages, like the Authors subpage, handle settings for
69 - the global default level and for individual syndicated feeds.
70 -
71 - Corresponding to these new subpages, the old Syndication Settings and
72 - Feed Settings subpages have been cleaned up and simplified, and now only
73 - link to the appropriate subpages for options that can be set in the
74 - Posts, Authors, or Categories & Tags subpages.
75 -
76 -* FEATURE: ADD CUSTOM SETTINGS TO EACH SYNDICATED POST: FeedWordPress has
77 - long had an interface for creating custom settings for each syndicated
78 - *feed* which could be retrieved in templates using the `get_feed_meta()`
79 - template function. But it had no feature for adding custom fields to
80 - each individual syndicated *post*. In response to requests from users, I
81 - have added the ability to apply custom fields to each individual
82 - syndicated post, using the new Syndication --> Posts subpage. You can
83 - set up custom fields to be applied to every syndicated post, or custom
84 - fields to be applied to syndicated posts from a particular feed.
85 -
86 -* FEATURE: MAGPIERSS VERSION CHECK AND UPGRADE: FeedWordPress will attempt
87 - to determine whether or not you are using the upgraded version of
88 - MagpieRSS that comes packaged with FeedWordPress. If not, it will throw
89 - an error on admin pages, and, if you are a site administrator, it will
90 - give you the option to ignore the error message, or to attempt an
91 - automatic upgrade (using a native file copy). If the file copy fails,
92 - FeedWordPress will offer some guidance on how to perform the upgrade
93 - manually.
94 -
95 -* BLANK POSTS PROBLEM NO LONGER OCCURS WITH OLD & BUSTED MAGPIERSS: Due
96 - to the fact that I relied on a content normalization that occurs in my
97 - upgraded version of MagpieRSS, but not in the old & busted version of
98 - MagpieRSS that ships with WordPress, until this version, if you tried to
99 - syndicate an Atom feed without having performed the (*strongly
100 - recommended*) MagpieRSS upgrade, all of the posts would come up with
101 - completely blank contents. That's not because MagpieRSS couldn't read
102 - the data, but rather because the new Magpie version puts that data in a
103 - location where the old version doesn't, and I was only looking in that
104 - newer location. Now it checks for both, meaning that posts will continue
105 - to display their contents even if you don't upgrade MagpieRSS. (But you
106 - **really should** upgrade it, anyway.)
107 -
108 -* BUGFIX: RELATIVE URI RESOLUTION FOR POST CONTENT RESTORED. Some time
109 - back, I added support for resolving relative URIs against xml:base on
110 - feeds that support it to the MagpieRSS upgrade in FeedWordPress. Then I
111 - took out code that did the same thing from the main FeedWordPress code.
112 - Of course, the problem is that some people, even though it is clearly
113 - stupid or evil to do so, still include relative URIs for images or links
114 - in posts on feed formats that do *not* adequately support xml:base
115 - (notably, RSS 2.0 feeds). In response to a user request, I have added
116 - this functionality back in, so that MagpieRSS will resolve any relative
117 - URIs that it knows how to resolve using xml:base, and then FeedWordPress
118 - will attempt to resolve any relative URIs that are left over afterwards.
119 -
120 -* BUGFIX: INTERFACE OPTION FOR SETTING SYNDICATED POST PUBLICATION STATUS
121 - ON A FEED-BY-FEED BASIS HAS BEEN RESTORED: Due to a version-checking
122 - bug, users of WordPress 2.7.x lost an option from the "Edit a syndicated
123 - feed" interface which allowed them to determine whether newly syndicated
124 - posts should be published immediately, held as "Pending Review," saved
125 - as drafts, or saved as private posts. (The option to change this
126 - setting globally remained in place, but users could no longer set it on
127 - a feed-by-feed basis.) The version-checking bug has been fixed, and the
128 - option has been restored.
129 -
130 -* BUGFIX: "ARE YOU SURE?" FATAL ERROR ELIMINATED AND SECURITY IMPROVED:
131 - Under certain circumstances (for example, when users have configured
132 - their browser or proxy not to send HTTP Referer headers, for privacy or
133 - other reasons), many features in the FeedWordPress administrative
134 - interface (such as adding new feeds or changing settings) would hit a
135 - fatal error, displaying only a cryptic message reading "Are you sure?"
136 - and a blank page following it. This problem has been eliminated by
137 - taking advantage of WordPress's nonce functions, which allow the
138 - security check which ran into this error to work properly even without
139 - receiving an HTTP Referer header. (N.B.: WordPress's nonce functions
140 - were first introduced in WordPress 2.0.3. If you're using FeedWordPress
141 - with an older version of WordPress, there's no fix for this problem:
142 - you'll just need to turn Referer headers back on. Sorry.)
143 -
144 -* BUGFIX: MANUALLY-ALTERED POST STATUS, COMMENT STATUS, AND PING STATUS NO
145 - LONGER REVERTED BY POST UPDATES: If you manually altered the post status,
146 - comment status, or ping status of a syndicated post from what it was set
147 - to when first syndicated -- for example, if you had a feed that was set
148 - to bring in new posts as "Pending Review," and you then marked some of
149 - the pending posts as "Published" and others as "Unpublished" -- then
150 - in previous versions of FeedWordPress, these manual changes to the
151 - status would be lost -- so that, for example, your Published or Unpublished
152 - articles would revert to Pending Review -- if the source feed made any
153 - upates to the item. This could make the Pending Review feature both
154 - unreliable and also extremely frustrating to work with. The good news is
155 - that this bug has since been fixed: if you manually update the status
156 - of a post, it will no longer be reverted if or when the post is updated.
157 -
158 -* BUGFIX: OCCASIONAL FATAL ERROR ON UPDATE ELIMINATED: Under certain
159 - limited conditions (specifically, when both the title and the content of
160 - a post to be updated are empty), an attempt to update the post would
161 - result in a fatal error. This has been fixed.
162 -
163 -* INTERFACE: "CONFIGURE SETTINGS" CONVENIENCE LINK ADDED TO CONFIRMATION
164 - MESSAGE WHEN A NEW FEED IS ADDED: When you add a new subscription to
165 - FeedWordPress, the message box that appears to confirm it now includes a
166 - handy link to the feed's settings subpage, so that you can quickly set
167 - up any special settings you may want to set up for the new feed, without
168 - having to hunt through the list of all your other subscriptions to pick
169 - out the new one.
170 -
171 -* INTERFACE: SIMPLIFYING AND CLARIFYING AUTOMATIC UPDATES SETTINGS. I have
172 - removed an interval setting for the cronless automatic updates which has
173 - confused many FeedWordPress users. In past versions of FWP, when you
174 - turned on automatic updates, you would be presented with a time interval
175 - setting which controlled how often FeedWordPress would check for feeds
176 - ready to be polled for updates. (That is, it DID NOT control how often
177 - feeds *would be polled*; it controlled how often FeedWordPress would
178 - *check* for feeds that *had become ready to poll*. The schedule on which
179 - feeds became ready for polling was still controlled either by requests
180 - encoded in elements within the feed itself, or else according to an
181 - internal calculation within FeedWordPress, averaging out to about 1 hour,
182 - if the feed did not include any scheduling request elements.) Since many
183 - users very often (and understandably) confused the purpose of this
184 - setting, and since the setting is for a feature that's actually very
185 - unlikely to require any manual control by the user, I have removed the
186 - setting; FeedWordPress now simply uses the default value of checking for
187 - feeds to poll every 10 minutes.
188 -
189 -* FEEDFINDER PERFORMANCE IMPROVEMENT: FeedWordPress's FeedFinder class
190 - now uses `array_unique()` to make sure that it doesn't waste time
191 - repeatedly iterating over and polling the same URI. Props to Camilo
192 - (<http://projects.radgeek.com/2008/12/14/feedwordpress-20081214/#comment-20090122160414>).
193 -
194 -Changes from 2008.1105 to 2008.1214
195 -
196 -* WORDPRESS 2.7 COMPATIBILITY: FeedWordPress has been tested for
197 - compatibility with the newly released WordPress 2.7. WordPress 2.7 has
198 - deprecated the Snoopy library for HTTP requests, which caused a fatal
199 - error for users who had not installed the MagpieRSS upgrade (or whose
200 - installation of the MagpieRSS upgrade was overwritten by a recent update
201 - of WordPress). FeedWordPress now handles things gracefully when Snoopy
202 - is not immediately available.
203 -
204 -* INTERFACE SPIFFED UP: Interface elements have been updated so that
205 - FeedWordPress's management interface fits in more naturally with the
206 - WordPress 2.7 interface (including a new logo and a number of small
207 - interface tweaks).
208 -
209 -* BUG WITH TAGS FOR SYNDICATED ARTICLES FIXED: Several users encountered a
210 - bug with the option to add tags to all syndicated posts under
211 - Syndication --> Settings -- if you told FeedWordPress to add more than
212 - one tag to all syndicated posts, instead of doing so correctly, it would
213 - add a *single* tag instead, whose name was composed of the names of all
214 - the tags you asked it to add. This bug was the result of nothing more
215 - dignified than a typographical error on my part. It has now been fixed.
216 -
217 -* MORE INFORMATION AVAILABLE WHEN FEEDWORDPRESS CAN'T FIND A FEED: When
218 - you enter a URL for a new syndication source, FeedWordPress uses a
219 - simple feed-finding algorithm (originally based on Mark Pilgrim's
220 - Universal Feed Finder) to try to determine whether the URL is the URL
221 - for a feed, or, if the URL points to an ordinary website rather than to
222 - a feed, whether there is a feed for that website. All well and good, but
223 - if FeedWordPress failed to find a feed, for whatever reason, it would
224 - typically return nothing more than a nasty little note to the effect of
225 - "no feed found," without any explanation of what went wrong.
226 - FeedWordPress now keeps track of error conditions from the HTTP
227 - requests that it uses in the course of looking for the feed, and so may
228 - be able to give you a bit more information about the nature of the
229 - problem if something goes wrong.
230 -
231 -
232 -Changes from 2008.1101 to 2008.1105
233 -
234 -* INTERFACE RESTRUCTURING AND SYNDICATION --> AUTHORS PAGE: As a first
235 - step towards modularizing and better organizing the user interface, a
236 - new "Authors" subpage has been created under the Syndication menu, which
237 - controls settings for syndicated authors, both at the global default
238 - level and at level of individual syndicated feeds.
239 -
240 -* BUG RELATED TO THE ATTRIBUTION OF POSTS TO THE WRONG AUTHOR FIXED: Some
241 - users encountered an issue in which posts by different authors on
242 - different blogs -- especially blogs generated by Blogger -- were
243 - mistakenly attributed to a single author. The problem was caused by the
244 - way in which FeedWordPress matches syndicated authors to user accounts
245 - in the WordPress database: normally, if two feeds each list an author
246 - with the same e-mail address, they are counted as being the same person.
247 - Normally this works well, but it creates an issue in cases where
248 - blogging software assigns a single anonymous e-mail address to users who
249 - do not want their real e-mail address published. This is, for example,
250 - what Blogger does (by giving all users a default e-mail address of
251 - <noreply@blogger.com> if they don't want their own e-mail address
252 - listed). FeedWordPress now allows the user to correct for this problem
253 - with a couple of new settings under **Syndication --> Authors**, which
254 - allow users to turn off e-mail based author matching for particular
255 - addresses, or, if desired, to turn it off entirely. By default, e-mail
256 - based author matching is still turned on, but disabled for a list of
257 - known generic e-mail addresses. Right now, the "list" consists entirely
258 - of <noreply@blogger.com>; if you know other addresses that should be
259 - added, please [contact me](http://radgeek.com/contact) to let me know.
260 -
261 - Please note that if you have already encountered this issue on your
262 - blog, upgrading FeedWordPress will prevent it from re-occurring in the
263 - future, but you still need to do two other things to fix the existing
264 - problem on your blog.
265 -
266 - First, for each feed where posts have been mis-attributed, you need to
267 - change the existing author mapping rules to re-map a a syndicated
268 - author's name to the proper target account. Go to **Syndication -->
269 - Authors**, select the feed you want to change from the drop-down list,
270 - and then change the settings under the "Syndicated Authors" section.
271 - (You will probably need to select "will be assigned to a new user..." to
272 - create a new user account with the appropriate name.)
273 -
274 - Second, for each feed where posts have been mis-attributed, you need to
275 - re-assign already-syndicated posts that were mis-attributed to the
276 - correct author. You can do that from **Syndication --> Authors** by
277 - using the author re-assignment feature, described below.
278 -
279 -* AUTHOR RE-ASSIGNMENT FOR A PARTICULAR FEED: The author settings page
280 - for each syndicated feed, under **Syndication --> Authors**, now
281 - includes an section titled "Fixing mis-matched authors," which provides
282 - an interface for re-assigning or deleting all posts attributed to a
283 - particular author on a particular feed.
284 -
285 -* SUPPORT FOR `<atom:source>` ELEMENT IN SYNDICATED FEEDS: Some feeds
286 - (for example, those produced by FeedWordPress) aggregate content from
287 - several different sources, and include information about the original
288 - source of the post in an `<atom:source>` element. A new setting under
289 - **Syndication --> Options** allows you to control what FeedWordPress
290 - will report as the source of posts syndicated from aggregator feeds in
291 - your templates and feeds: you can have FeedWordPress report that the
292 - source of a post is the aggregator feed itself, or you can have it
293 - report that the source of a post is the original source that the
294 - aggregator originally syndicated the post from.
295 -
296 - By default, FeedWordPress will report the aggregator, not the original
297 - source, as the source of a syndicated item.
298 -
299 -* LOAD BALANCING AND TIME LIMITING FEATURES FOR UPDATES: Some users have
300 - encountered issues due to running up against PHP execution time limits
301 - during the process of updating large syndicated feeds, or a very large
302 - set of syndicated feeds. FeedWordPress now has a feature that allows you
303 - to limit the total amount of time spent updating a feed, through the
304 - "Time limit on updates" setting under **Syndication --> Options**. By
305 - turning on this setting and adjusting the time limit to a low enough
306 - figure to avoid your PHP installation's time-out setting. (PHP execution
307 - time limits are usually in the vicinity of 30 seconds, so an update
308 - time limit of 25 seconds or so should provide plenty of time for updates
309 - while allowing a cushion of time for other, non-update-related functions
310 - to do their work.)
311 -
312 - If feed updates are interrupted by the time limit, FeedWordPress uses
313 - some simple load balancing features to make sure that updates to other
314 - feeds will not be blocked by the time-hogging feed, and will also make
315 - sure that when the interrupted update is resumed, FeedWordPress will
316 - skip ahead to resume processing items at the point at which it was
317 - interrupted last time, so that posts further down in the feed will
318 - eventually get processed, and not get blocked by the amount of time it
319 - takes to process the items higher up in the feed.
320 -
321 -* `guid` INDEX CREATION BUTTON: FeedWordPress frequently issues queries on
322 - the `guid` column of the WordPress posts database (since it uses post
323 - guid URIs to keep track of which posts it has syndicated). In very large
324 - FeedWordPress installations, you can often significantly improve
325 - performance by creating a database index on the `guid` column, but
326 - normally you would need to poke around with MySQL or a tool like
327 - phpMyAdmin to do this. FeedWordPress can now save you the trouble: to
328 - create an index on the `guid` column, just go to
329 - **Syndication --> Options**, and mash the button at the bottom of the
330 - "Back End" section.
331 -
332 -Changes from 2008.1030 to 2008.1101
333 -
334 -* INTERFACE BUG THAT PREVENTED ADDING NEW SITES FIXED: The UI reforms in
335 - FWP 2008.1030 unintentionally introduced a bug that prevents clean
336 - installations of FeedWordPress from providing an input box for adding
337 - new feeds to the list of syndicated feeds. This bug has been fixed.
338 -
339 -Changes from 0.993 to 2008.1030
340 -
341 -* WORDPRESS 2.6 COMPATIBILITY: FeedWordPress should now be compatible with
342 - WordPress 2.6, and should work more or less seamlessly with the new post
343 - revision system. A bug which caused multiple new revisions to be created
344 - for posts on certain feeds, regardless of whether or not the item had
345 - been updated, has been fixed.
346 -
347 -* INTERFACE IMPROVEMENTS: The user interface has been substantially
348 - restyled to fit in better with the visual style of WordPress 2.5 and
349 - 2.6.
350 -
351 -* YOUTUBE BUG FIXED: POSTS SYNDICATED THROUGH AN AUTOMATIC UPDATE ARE NO
352 - LONGER STRIPPED OF `<OBJECT>` TAGS AND CERTAIN OTHER HTML ELEMENTS: Due
353 - to the way that some versions of WordPress process posts that are
354 - inserted into the database when no user is logged in, many users
355 - experienced an issue where YouTube videos and other content using the
356 - HTML `<object>` tag would be stripped out of posts that were syndicated
357 - during an automatic update. (Posts that were syndicated through manual
358 - updates from within the WordPress Dashboard were not affected, because
359 - the issue does not arise when an update is executed under a logged-in
360 - administrator's credentials.) This bug has now been fixed; YouTube
361 - videos and other content using `<object>` tags should now appear
362 - properly in syndicated posts, regardless of the way in which the post
363 - was syndicated.
364 -
365 -* AJAX BUGS FIXED: Bugs which blocked the normal operation of WordPress
366 - 2.5's AJAX interface elements when FeedWordPress was activated have been
367 - fixed.
368 -
369 -* TAG SUPPORT: A couple of features have been introduced to take advantage
370 - of the tagging features in WordPress 2.3.x, 2.5.x, and 2.6.x. Now, when
371 - unfamiliar categories are encountered for posts on a feed, you can
372 - choose for FeedWordPress (1) to drop the category; (2) to drop the
373 - category and to filter out any post that does not match at least one
374 - familiar category; (3) to create a new category with that name, or,
375 - now, you can also have FeedWordPress (4) create a new *tag* with that
376 - name. This option can be set site-wide under Syndication --> Options,
377 - or it can be set on a feed-by-feed basis in a feed's Edit screen.
378 -
379 - In addition, you can now set particular tags to apply to all incoming
380 - syndicated posts, under Syndication --> Options, or you can set tags
381 - to apply to all incoming syndicated posts from a particular feed in that
382 - feed's Edit screen.
383 -
384 -* FORMATTING FILTERS: There is a new option available under Syndication ->
385 - Options which allows users to choose whether or not to expose syndicated
386 - posts to being altered by formatting filters. By default, FeedWordPress
387 - has always protected syndicated posts (which are already in display-ready
388 - HTML when they are syndicated) from being reformatted by formatting
389 - filters. However, this approach means that certain plugins which depend
390 - on formatting filters (for example, to add "Share This" bars or relevant
391 - links to the end of a post) are blocked from working on any syndicated
392 - posts. If you want to use one of these plugins together with
393 - FeedWordPress, you can now do so by changing the "Formatting Filters"
394 - setting from "Protect" to "Expose."
395 -
396 -* `<atom:source>` ELEMENTS NOW INCLUDED IN ATOM FEED: Atom 1.0 provides
397 - a standard method for aggregators to indicate information about the original source of
398 - a syndicated post, using the `<atom:source>` element. FeedWordPress now
399 - introduces standard `<atom:source>` elements including the title, homepage, and
400 - feed URI of the source from which a syndicated post was syndicated. Cf.
401 - <http://www.atomenabled.org/developers/syndication/atom-format-spec.php#element.source>
402 -
403 -* MODULARIZATION OF CODE: The code for different elements of FeedWordPress
404 - has been broken out into several modules for easier inspection,
405 - documentation, and maintenance of the code.
406 -
407 -* VERSIONING SCHEME CHANGED: FeedWordPress's feature set has proven stable
408 - enough that it can now be removed from beta status; a good thing, since
409 - I was very quickly running out of version numbers to use. New releases
410 - of FeedWordPress will have version numbers based on the date of their
411 - release.
412 -
413 -Changes from 0.992 to 0.993
414 -
415 -* WORDPRESS 2.5.1 COMPATIBILITY: FeedWordPress should now be compatible
416 - with WordPress 2.5.1.
417 -
418 -* WORDPRESS 2.5 INTERFACE IMPROVEMENTS: FeedWordPress's Dashboard
419 - interface has undergone several cosmetic changes that should help it
420 - integrate better with the WordPress Dashboard interface in WordPress
421 - version 2.5.x.
422 -
423 -* SYNDICATED POSTS CAN BE MARKED AS "PENDING REVIEW": WordPress 2.3 users
424 - can now take advantage of WordPress's new "Pending Review" features for
425 - incoming syndicated posts. Posts marked as "Pending Review" are not
426 - published immediately, but are marked as ready to be reviewed by an
427 - Administrator or Editor, who can then choose to publish the post or
428 - hold it back. If you want to review syndicated posts from a particular
429 - feed, or from all feeds, before they are posted, then use
430 - Syndication --> Syndicated Sites --> Edit or Syndication --> Options to
431 - change the settings for handling new posts.
432 -
433 -* AWARE OF NEW URI FOR del.icio.us FEEDS: Previous releases of
434 - FeedWordPress already automatically split del.icio.us tags up
435 - appropriately appropriately when generating categories. (del.icio.us
436 - feeds smoosh all the tags into a single `<dc:subject>` element,
437 - separated by spaces; FeedWordPress un-smooshes them into multiple
438 - categories by separating them at whitespace.) Unfortunately, del.icio.us
439 - recently broke the existing behavior by changing host names for their
440 - feeds from del.icio.us to feeds.delicious.com. Version 0.993 accounts
441 - for the new host name and un-breaks the tag splitting.
442 -
443 -Changes from 0.991 to 0.992
444 -* AUTHOR RE-MAPPING: FeedWordPress now offers considerable control over
445 - how author names on a feed are translated into usernames within the
446 - WordPress database. When a post by an unrecognized author comes in,
447 - Administrators can now specify any username as the default username to
448 - assign the post to by setting the option in Syndication --> Options
449 - (formerly FeedWordPress only allowed you to assign such posts to user
450 - #1, the site administrator). Administrators can also create re-mapping
451 - rules for particular feeds (under Syndication --> Syndicated Sites -->
452 - Edit), so that (for example) any posts attributed to "Administrator"
453 - on the feed <http://praxeology.net/blog/feed/> will be assigned to
454 - a user named "Roderick T. Long," rather than a user named
455 - "Administrator." These settings also allow administrators to filter out
456 - posts by particular users, and to control what will happen when
457 - FeedWordPress encounters a post by an unrecognized user on that
458 - particular feed.
459 -
460 -* BUG RELATED TO URIS CONTAINING AMPERSAND CHARACTERS FIXED: A bug in
461 - WordPress 2.x's handling of URIs in Blogroll links created problems for
462 - updating any feeds whose URIs included an ampersand character, such as
463 - Google News RSS feeds and other feeds that have multiple parameters
464 - passed through HTTP GET. If you experienced this bug, the most likely
465 - effect was that FeedWordPress simply would not import new posts from a
466 - feed when instructred to do so, returning a "0 new posts" response. In
467 - other cases, it might lead to unpredictable results from feed updates,
468 - such as importing posts which were not contained in the feed being
469 - syndicated, but which did appear elsewhere on the same website. This bug
470 - has, hopefully, been resolved, by correcting for the bug in WordPress.
471 -
472 -Changes from 0.99 to 0.991
473 -* WORDPRESS MU COMPATIBILITY: FeedWordPress should now be compatible with
474 - recent releases of WordPress MU. Once FeedWordPress is made available
475 - as a plugin, each individual blog can choose to activate FeedWordPress
476 - and syndicate content from its own set of contributors.
477 -
478 -* DISPLAY OF MAGPIE WARNINGS: A number of MagpieRSS warnings or error
479 - messages that were displayed when performing an automatic update are
480 - no longer displayed, unless debugging parameters have been explicitly
481 - enabled.
482 -
483 -* BUG RELATED TO INTERNATIONAL CHARACTERS IN AUTHOR NAMES FIXED: Due to a
484 - subtle incompatability between the way that FeedWordPress generated new
485 - user information, and the way that WordPress 2.0 and later added new
486 - authors to the database, FeedWordPress might end up creating duplicate
487 - authors, or throwing a critical error message, when it encountered
488 - authors whose names included international characters. This
489 - incompatability has now been fixed; hopefully, authors with
490 - international characters in their names should now be handled properly.
491 -
492 -* `<media:content>` BUG IN MAGPIERSS FIXED: A bug in MagpieRSS's handling
493 - of namespaced elements has been fixed. Among other things, this bug
494 - caused items containing a Yahoo MediaRSS `<media:content>` element (such
495 - as many of the feeds produced by wordpress.com) to be represented
496 - incorrectly, with only a capital "A" where the content of the post
497 - should have been. Feeds containing `<media:content>` elements should now
498 - be syndicated correctly.
499 -
500 -* update_feedwordpress PARAMETER: You can now use an HTTP GET parameter
501 - (`update_feedwordpress=1`) to request that FeedWordPress poll its feeds
502 - for updates. When used together with a crontab or other means of
503 - scheduling tasks, this means that you can keep your blog automatically
504 - updated on a regular schedule, even if you do not choose to use the
505 - cron-less automatic updates option.
506 -
507 -* Some minor interface-related bugs were also fixed.
508 -
509 -
510 -Changes from 0.981 to 0.99
511 -Version 0.99 adds several significant new features, fixes some bugs, and
512 -provides compatability with WordPress 2.2.x and 2.3.x.
513 -
514 -* WORDPRESS 2.2 AND 2.3 COMPATIBILITY: FeedWordPress should now be
515 - compatible with WordPress version 2.2 and the upcoming WordPress
516 - version 2.3. In particular, it has been tested extensively against
517 - WordPress 2.2.3 and WordPress 2.3 Release Candidate 1.
518 -
519 -* AUTOMATIC UPDATES WITHOUT CRON: FeedWordPress now allows you to
520 - automatically schedule checks for new posts without using external task
521 - scheduling tools such as cron. In order to enable automatic updates, go
522 - to **Syndication --> Options** and set "Check for new posts" to
523 - "automatically." For details, see "Automatic Feed Updates" in
524 - README.text.
525 -
526 - An important side-effect of the changes to the update system is that if
527 - you were previously using the cron job and the `update-feeds.php` script
528 - to schedule updates, you need to change your cron set-up. The old
529 - `update-feeds.php` script no longer exists. Instead, if you wish to use
530 - a cron job to guarantee updates on a particular schedule, you should
531 - have the cron job fetch the front page of your blog (for example, by
532 - using `curl http://www.zyx.com/blog/ > /dev/null`) instead of activating
533 - the `update-feeds.php` script. If automatic updates have been enabled,
534 - fetching the front page will automatically trigger the update process.
535 -
536 -* INTERFACE REORGANIZATION: All FeedWordPress functions are now located
537 - under a top-level "Syndication" menu in the WordPress Dashboard. To
538 - manage the list of syndicated sites, manually check for new posts on
539 - one or more feeds, or syndicate a new site, you should use the main page
540 - under **Syndication**. To change global settings for FeedWordPress,
541 - you should use **Syndication --> Options**.
542 -
543 -* FILE STRUCTURE REORGANIZATION: Due to a combination of changing styles
544 - for FeedWordPress plugins and lingering bugs in the FeedWordPress admin
545 - menu code, the code for FeedWordPress is now contained in two different
546 - PHP files, which should be installed together in a subdirectory of your
547 - plugins directory named `feedwordpress`. (See README.text for
548 - installation and upgrade instructions relating to the change.)
549 -
550 -* MULTIPLE CATEGORIES SETTING: Some feeds use non-standard methods to
551 - indicate multiple categories within a single category element. (The most
552 - popular site to do this is del.icio.us, which separates tags with a
553 - space.) FeedWordPress now allows you to set an optional setting, for any
554 - feed which does this, indicating the character or characters used to
555 - divide multiple categories, using a Perl-compatible regular expression.
556 - (In the case of del.icio.us feeds, FeedWordPress will automatically use
557 - \s for the pattern without your having to do any further configuration.)
558 - To turn this setting on, simply use the "Edit" link for the feed that
559 - you want to turn it on for.
560 -
561 -* REGULAR EXPRESSION BUG FIXED: Eliminated a minor bug in the regular
562 - expressions for e-mail addresses (used in parsing RSS `author`
563 - elements), which could produce unsightly error messages for some users
564 - parsing RSS 2.0 feeds.
565 -
566 -* DATE / UPDATE BUG FIXED: A bug in date handling was eliminated that may
567 - have caused problems if any of (1) WordPress, or (2) PHP, or (3) your
568 - web server, or (4) your MySQL server, has been set to use a different
569 - time zone from the one that any of the others is set to use. If
570 - FeedWordPress has not been properly updating updated posts, or has been
571 - updating posts when there shouldn't be any changes for the update, this
572 - release may solve that problem.
573 -
574 -* GOOGLE READER BUGS FIXED: A couple of bugs that made it difficult for
575 - FeedWordPress to interact with Google Reader public feeds have been
576 - fixed. Firstly, if you encountered an error message reading "There was a
577 - problem adding the newsfeed. [SQL: ]" when you tried to add the feed,
578 - the cause of this error has been fixed. Secondly, if you succeeded in
579 - getting FeedWordPress to check a Google Reader feed, only to find that
580 - the title of posts had junk squashed on to the end of them, that bug
581 - has been fixed too. To fix this bug, you must install the newest version
582 - of the optional MagpieRSS upgrade.
583 -
584 -* FILTER PARAMETERS: Due to an old, old bug in WordPress 1.5.0 (which was
585 - what was available back when I first wrote the filter interface),
586 - FeedWordPress has traditionally only passed one parameter to
587 - syndicated_item and syndicated_post filters functions -- an array
588 - containing either the Magpie representation of a syndicated item from
589 - the feed, or the database representation of a post about to be inserted
590 - into the WordPress database. If you needed information about the feed
591 - that the item came from, this was accessible only through a pair of
592 - global variables, $fwp_channel and $fwp_feedmeta.
593 -
594 - Since it's been a pretty long time since WordPress 1.5.0 was in
595 - widespread usage, I have gone ahead and added an optional second
596 - parameter to the invocation of the syndicated_item and syndicated_post
597 - filters. If you have written a filter for FeedWordPress that uses either
598 - of these hooks, you can now register that filter to accept 2 parameters.
599 - If you do so, the second parameter will be a SyndicatedPost object,
600 - which, among other things, allows you to access information about the
601 - feed from which an item is syndicated using the $post->feed and the
602 - $post->feedmeta elements (where $post is the name of the second
603 - parameter).
604 -
605 - NOTE THAT THE OLD GLOBAL VARIABLES ARE STILL AVAILABLE, for the time
606 - being at least, so existing filters will not break with the upgrade.
607 - They should be considered deprecated, however, and may be eliminated in
608 - the future.
609 -
610 -* FILTER CHANGE / BUGFIX: the array that is passed as the first argument
611 - syndicated_post filters no longer is no longer backslash-escaped for
612 - MySQL when filters are called. This was originally a bug, or an
613 - oversight; the contents of the array should only be escaped for the
614 - database *after* they have gone through all filters. IF YOU HAVE WRITTEN
615 - ANY syndicated_post FILTERS THAT PRESUME THE OLD BEHAVIOR OF PASSING IN
616 - STRINGS THAT ARE ALREADY BACKSLASH-ESCAPED, UPDATE YOUR FILTERS
617 - ACCORDINGLY.
618 -
619 -* OTHER MINOR BUGFIXES AND INTERNAL CHANGES: The internal architecture of
620 - FeedWordPress has been significantly changed to make the code more
621 - modular and clean; hopefully this should help reduce the number of
622 - compatibility updates that are needed, and make them easier and quicker
623 - when they are needed.
624 -
625 -Changes from 0.98 to 0.981
626 -Version 0.981 is a narrowly targeted bugfix and compatibility release, whose
627 -main purpose is to resolve a major outstanding problem: the incompatibility
628 -between version 0.98 of WordPress and the recently released WordPress 2.1.
629 -
630 -* WORDPRESS 2.1 COMPATIBILITY: FeedWordPress is now compatible with
631 - WordPress 2.1, as well as retaining its existing support for WordPress
632 - 2.0 and 1.5. Incompatibilities that resulted in database warnings, fatal
633 - errors, and which prevented FeedWordPress from syndicating new posts,
634 - have been eliminated.
635 -
636 -* RSS-FUNCTIONS.PHP RENAMED TO RSS.PHP: if you use the upgraded MagpieRSS
637 - replacement that's included with FeedWordPress, be sure to note that
638 - there are now *two* files to upload from the `OPTIONAL/wp-includes`
639 - subdirectory in order to carry out the upgrade: rss-functions.php and
640 - rss.php. **It is necessary to upload both files**, due to a change in
641 - the file naming scheme in WordPress 2.1, and it is necessary to do so
642 - whether you are using WordPress 2.1 or not. If you only upload the
643 - `rss-functions.php` file as in previous installations you will not have
644 - a working copy of MagpieRSS; the rss.php file contains the actual code.
645 -
646 -* DATE BUG AFFECTING SOME PHP INSTALLATIONS RESOLVED: due to a subtle bug
647 - in parse_w3cdtf(), some installations of PHP encountered problems with
648 - FeedWordPress's attempt to date posts, which would cause some new posts
649 - on Atom feeds to be dated as if they had apppeared in 1969 or 1970
650 - (thus, effectively, never appearing on front page at all). This bug in
651 - the date handling should now be fixed.
652 -
653 -* PHP <?=...?> SHORT FORM ELIMINATED: some installations of PHP do not
654 - allow the <?=...?> short form for printing PHP values, which was used
655 - extensively in the FeedWordPress interface code. Since this could cause
656 - fatal errors for users with the wrong installation of PHP, the short
657 - form has been replaced with full PHP echo statements, and is no longer
658 - used in FeedWordPress.
659 -
660 -* BETTER USER INTERFACE INTEGRATION WITH WORDPRESS 2.x: Some minor changes
661 - have been made to help the FeedWordPress interface pages blend in better
662 - with the user interface when running under WordPress 2.x.
663 -
664 -* GLOBAL CATEGORIES BUG RESOLVED: a bug that prevented some users from
665 - setting one or more categories to apply to syndicated posts from all
666 - feeds (using the checkbox interface under Options --> Syndication) has
667 - been resolved.
668 -
669 -Changes from 0.97 to 0.98
670 -
671 -* WORDPRESS 2.0 COMPATIBILITY: This is a narrowly-targeted release to
672 - solve a major outstanding problem. FeedWordPress is now compatible with
673 - both WordPress 1.5 and WordPress 2.0. Incompatibilities that caused
674 - fatal SQL errors, and a more subtle bug with off-kilter counts of posts
675 - under a given category, have been resolved. FeedWordPress tests for
676 - database schema using the global $wp_db_version variable (if null, then
677 - we presume that we're dealing with WordPress 1.5).
678 -
679 - NOTE: I have **not** fully tested FeedWordPress with WordPress 2.0.
680 - Further testing may reveal more bugs. However, you should now be able
681 - to get at least basic FeedWordPress functionality up and running.
682 -
683 -* AUTHOR MATCHING: FeedWordPress tests several fields to see if it can
684 - identify the author of the post as a user already in the WordPress user
685 - database. In previous versions, it tested the user login, the nickname,
686 - and tested for "aliases" listed in the Profile (see documentation). FWP
687 - now also matches authors on the basis of e-mail address (*if* an e-mail
688 - address is present). This is particularly helpful for formats such as
689 - RSS 2.0, in which authors are primarily identified by e-mail addresses.
690 -
691 -Changes from 0.96 to 0.97
692 -
693 -* INSTALLATION PROCEDURE: Some of the changes between 0.96 and 0.97
694 - require upgrades to the meta-data stored by FeedWordPress to work
695 - properly. Thus, if you are upgrading from 0.96 or earlier to 0.97, most
696 - FeedWordPress operations (including updates and template functions)
697 - WILL BE DISABLED until you run the upgrade procedure. Fortunately,
698 - running the upgrade procedure is easy: just go to either Options -->
699 - Syndication or Links --> Syndicated in the WordPress Dashboard and press
700 - the button.
701 -
702 -* FEED FORMAT SUPPORT: Support has been added for the Atom 1.0 IETF
703 - standard. Several other elements are also newly supported
704 - (dcterms:created, dcterms:issued, dcterms:modified, dc:identifier,
705 - proper support for the RSS 2.0 guid element, the RSS 2.0 author element,
706 - the use of Atom author or Dublin Core dc:creator constructs at the feed
707 - level to identify the author of individual items, etc.)
708 -
709 - N.B.: full support of several Atom 1.0 features, such as categories
710 - and enclosures, requires you to install the optional rss-functions.php
711 - upgrade in your wp-includes directory.
712 -
713 -* BUG FIX: Running `update-feeds.php` from command line or crontab
714 - returned "I don't syndicate..." errors. It turns out that WordPress
715 - sometimes tramples on the internal PHP superglobals that I depended on
716 - to determine whether or not the script was being invoked from the
717 - command line. This has been fixed (the variables are now checked
718 - *before* WordPress can trample them). Note that `update-feeds.php` has
719 - been thoroughly overhauled anyway; see below for details.
720 -
721 -* BUG FIX: Duplicate categories or author names. Fixed two bugs that could
722 - create duplicate author and/or category names when the name contained
723 - either (a) certain international characters (causing a mismatch between
724 - MySQL and PHP's handling of lowercasing text), or (b) characters that
725 - have a special meaning in regular expressions (causing MySQL errors when
726 - looking for the author or category due to regexp syntax errors). These
727 - should now be fixed thanks to careful escaping of names that go into
728 - regular expressions and careful matching of lowercasing functions
729 - (comparing results from PHP only to other results from PHP, and results
730 - from MySQL only to other results from MySQL).
731 -
732 -* BUG FIX: Items dated December 31, 1969 should appear less often. The
733 - function for parsing W3C date-time format dates that ships with
734 - MagpieRSS can only correctly parse fully-specified dates with a
735 - fully-specified time, but valid W3C date-time format dates may omit the
736 - time, the day of the month, or even the month. Some feeds in the wild
737 - date their items with coarse-grained dates, so the optional
738 - `rss-functions.php` upgrade now includes a more flexible parse_w3cdtf()
739 - function that will work with both coarse-grained and fully-specified
740 - dates. (If parts of the date or the time are omitted, they are filled in
741 - with values based on the current time, so '2005-09-10' will be dated to
742 - the current time on that day; '2004' will be dated to this day and time
743 - one year ago.
744 -
745 - N.B.: This fix is only available in the optional `rss-functions.php`
746 - upgrade.
747 -
748 -* BUG FIX: Evil use of HTTP GET has been undone. The WordPress interface
749 - is riddled with inappropriate (non-idempotent) uses of HTTP GET queries
750 - (ordinary links that make the server do something with significant
751 - side-effects, such as deleting a post or a link from the database).
752 - FeedWordPress did some of this too, especially in places where it aped
753 - the WordPress interface (e.g. the "Delete" links in Links -->
754 - Syndicated). That's bad business, though. I've changed the interface so
755 - that all the examples of improper side-effects that I can find now
756 - require an HTTP POST to take effect. I think I got pretty much
757 - everything; if there's anything that I missed, let me know.
758 -
759 - Further reading: [Sam Ruby 2005-05-06: This Stuff Matters](http://www.intertwingly.net/blog/2005/05/06/This-Stuff-Matters)
760 -
761 -* BUG FIX: Categories applied by `cats` setting should no longer prevent
762 - category-based filtering from working. In FeedWordPress, you can (1)
763 - apply certain categories to all syndicated posts, or all posts from
764 - a particular feed; and (2) filter out all posts that don't match one
765 - of the categories that are already in the WordPress database (allowing
766 - for simple category-based filtering; just load up WordPress with the
767 - categories you want to accept, and then tell FeedWordPress not to create
768 - new ones). However, the way that (1) and (2) were implemented meant that
769 - you couldn't effectively use them together; once you applied a known
770 - category to all syndicated posts from a particular feed, it meant that
771 - they'd have at least one familiar category (the category or categories
772 - you were applying), and that would get all posts past the filter no
773 - matter what categories they were originally from.
774 -
775 - Well, no longer. You can still apply categories to all syndicated posts
776 - (using either Syndication --> Options, or the feed-level settings under
777 - Links --> Syndicated). But these categories are not applied to the post
778 - until *after* it has already passed by the "familiar categories" filter.
779 - So now, if you want, you can do category filtering and *then* apply as
780 - many categories as you please to all and only posts that pass the filter.
781 -
782 -* BUG FIX: Other minor typos and HTML gaffes were fixed along the way.
783 -
784 -* PERFORMANCE: get_feed_meta() no longer hits the database for information
785 - on every call; it now caches link data in memory, so FeedWordPress only
786 - goes to the database once for each syndicated link. This may
787 - substantially improve performance if your database server resources
788 - are tight and your templates make a lot of use of custom settings from
789 - get_feed_meta().
790 -
791 -* API CHANGE: Link ID numbers, rather than RSS URIs, are now used to
792 - identify the feed from which a post is syndicated when you use template
793 - functions such as get_feed_meta(). The practical upshot of this is you
794 - can switch feeds, or change the feed address for a particular syndicated
795 - site, without breaking your templates for all the posts that were
796 - syndicated from the earlier URI.
797 -
798 -* API CHANGE: if you have plugins or templates that make use of the
799 - get_feed_meta() function or the $fwp_feedmeta global, note that the
800 - data formerly located under the `uri` and `name` fields is now located
801 - under the `link/uri` field and the `link/name` field, respectively. Note
802 - also that you can access the link ID number for any given feed under the
803 - global $fwp_feedmeta['link/id'] (in plugins) or
804 - get_feed_meta('link/id') (in a template in post contexts).
805 -
806 -* FEATURE: the settings for individual feeds can now be edited using a
807 - humane interface (where formerly you had to tweak key-value pairs in the
808 - Link Notes section). To edit settings for a feed, pick the feed that you
809 - want under Links --> Syndicated and click the Edit link.
810 -
811 -* FEATURE: The "Unsubscribe" button (formerly "Delete") in Links -->
812 - Syndicated now offers three options for unsubscribing from a feed: (1)
813 - turning off the subscription without deleting the feed data or affecting
814 - posts that were syndicated from the feed (this works by setting the Link
815 - for the feed as "invisible"); (2) deleting the feed data and all of the
816 - posts that were syndicated from the feed; or (3) deleting the feed data
817 - and *keeping* the posts that were syndicated from the feed
818 - setting the Link to "Invisible" (meaning that it will not be displayed
819 - in lists of the site links on the front page, and it won't be checked
820 - for updates; (2) deleting the Link and all of the posts that were
821 - syndicated from its feed; or (3) deleting the feed data but keeping the
822 - posts that were syndicated (which will henceforward be treated as if
823 - they were local rather than syndicated posts). (Note that (1) is usually
824 - the best option for aggregator sites, unless you want to clean up the
825 - results of an error or a test.)
826 -
827 -* FEATURE / BUG FIX: If you have been receiving mysterious "I don't
828 - syndicate...", or "(local) HTTP status code was not 200", or "(local)
829 - transport error - could not open socket", or "parse error - not well
830 - formed" errors, then this update may solve your problems, and if it does
831 - *not* solve them, it will at least make the reasons for the problems
832 - easier to understand. That's because I've overhauled the way that
833 - FeedWordPress goes about updating feeds.
834 -
835 - If you use the command-line PHP scripting method to run scheduled
836 - updates, then not much should change for you, except for fewer
837 - mysterious errors. If you have done updates by sending periodic HTTP
838 - requests to <http://your-blog.com/path/wp-content/update-feeds.php>,
839 - then the details have changed somewhat; mostly in such a way as to make
840 - things easier on you. See the README file or online documentation on
841 - Staying Current for the details.
842 -
843 -* FEATURE: FeedWordPress now features a more sophisticated system for
844 - timed updates. Instead of polling *every* subscribed feed for updates
845 - *each* time `update-feeds.php` is run, FeedWordPress now keeps track of
846 - the last time it polled each feed, and only polls them again after a
847 - certain period of time has passed. The amount of time is normally set
848 - randomly for each feed, in a period between 30 minutes and 2 hours (so
849 - as to stagger updates over time rather than polling all of the feeds at once. However, the length of time between updates can also be set
850 - directly by the feed, which brings us to ...
851 -
852 -* FEATURE: FeedWordPress now respects the settings in the `ttl` and
853 - Syndication Module RSS elements. Feeds with these elements set will not
854 - be polled any more frequently than they indicate with these feeds unless
855 - the user manually forces FeedWordPress to poll the feed (see Links -->
856 - Syndicated --> Edit settings).
857 -
858 4 Changes from 0.95 to 0.96
859 5 -------------------------
860 6
861 7 * FEATURE: support has been added for enclosures in RSS 2.0 and Atom
@@ -880,10 +11,9 @@
880 11 into the WordPress database so that (among other things) that post
881 12 will have its enclosure listed in your blog's RSS 2 newsfeed.
882 13
883 14 Note that enclosure support requires using the optional MagpieRSS
884 - upgrade (i.e., replacing your `wp-includes/rss-functions.php` with
885 - `OPTIONAL/wp-includes/rss-functions.php` from the FWP archive)
15 + upgrade (i.e., replacing your `wp-includes/rss-functions.php` with `OPTIONAL/wp-includes/rss-functions.php` from the FWP archive)
886 16
887 17 * FEATURE: for completeness's sake, there is now a feed setting,
888 18 `hardcode url`, that allows you to set the URI for the front page
889 19 of a contributor's website manually (that is, prevent it from being