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