{"id":55307,"date":"2008-03-24T13:55:24","date_gmt":"2008-03-24T13:55:24","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/feedlist\/"},"modified":"2013-02-06T21:15:29","modified_gmt":"2013-02-06T21:15:29","slug":"feedlist","status":"closed","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/feedlist\/","author":17035,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.70.00","stable_tag":"trunk","tested":"","requires":"1.5","requires_php":"","requires_plugins":"","header_name":"FeedList","header_author":"Bill Rawlinson","header_description":"","assets_banners_color":"","last_updated":"2013-02-06 21:15:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"http:\/\/rawlinson.us\/blog\/articles\/feedlist-plugin\/","header_author_uri":"http:\/\/blog.rawlinson.us\/","rating":0,"author_block_rating":0,"active_installs":100,"downloads":58938,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","screenshots","changelog","other_notes"],"tags":[],"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[],"plugin_category":[],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-55307","plugin","type-plugin","status-closed","hentry","plugin_committers-finalcut"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/feedlist.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>This plugin fetches RSS or ATOM feeds from the url you provide and displays them on your blog. It can be used to manage \"hot links\" sections or anything else you can grab via an RSS or ATOM feed.<\/p>\n\n<pre><code>The plugin also supports wordpress filters by letting you embed a feed into your post.\n\n\nThe initial idea for this plugin came from the del.icio.us plugin that can be found at http:\/\/chrismetcalf.net. -\n\nSecondary inspiration for the ATOM integration comes from James Lewis at http:\/\/jameslewis.com - I had been thinking about doing it and he did it which pushed me to make the integration.\n\nFinally: A bit more info on the license: I'll say that you can use the source code in this plugin however you want.  If you change it I won't help you fix things.  If you sell it - great; I wish I had made some money off of it.\nYou can use it for any purpose you imagine just don't blame me if it doesn't work as well as you'd hoped while imagining.\n<\/code><\/pre>\n\n<!--section=installation-->\n<p>INSTALLATION:<\/p>\n\n<pre><code>1.) Place the plugin (feedlist.php) in your wp-content\/plugins\/feedlist directory. (create the feedlist directory if necessary)\n\n2.) Edit feedlist.php and fill out the values in the CONFIGURATION section.\n\n3.) Enable the feedList plugin in the \"Plugins\" section of your WordPress administration panel.\n\n4.) OPTIONAL BUT HIGHLY RECOMMENDED - Replace the class-snoopy.php file in your wp-includes directory with the one provided in this distribution.  The standard class-snoopy.php is broken\nwhen trying to load pages that are compressed by their server (gzip compression).  This file fixes that problem.\n\n\nUPGRADING:\n\n1.) jot down your configuration information in feedList.php\n\n2.) Overwrite your feedlist.php file\n\n3.) Update your feedlist configuration information with that data you wrote down in step 1\n\n4.) enjoy\n<\/code><\/pre>\n\n<!--section=faq-->\n<p>Nobody really asks me any questions that aren't already covered in this document.  But you might be the first to get a question in here.<\/p>\n\n<!--section=screenshots-->\n<p>Sorry, I don't have shots for this.  It just displays text in an ordered or unordered list - so I'm not sure a screen shot is really necessary.<\/p>\n\n<!--section=changelog-->\n<p>DATE                    MODIFICATION<\/p>\n\n        AUTHOR\n\n<p>12 October 2005         Initial Version\n        Bill Rawlinson - released version 2.0B\n                            rewrite of rssLinkedList  NOTE a\nmajor change - the caching is handled\nby Wordpress now so you don't need a\ncache directory.<\/p>\n\n<pre><code>06 Nov 2005         Simplified Interface and Rewrite Docs\n\n15 Nov 2005         Fixed some bugs\n\n01 Dec 2005         Fixed a bug where the description wasn't being shown for atom feeds\n                    and cleaned up the description display code\n24 Jan 2006         Added new parameter to suppress the inclusion of links with an item title\n\n09 Feb 2006         Removed erronneous line that was preventing feed caching.  Thanks to user Ted.\n                also added better internationalization thanks to user Sebastian\n\n08 Mar 2006         Added new parameter to display the date the feed was updated \"show_date\" which is false\n                by default.\n\n10 Mar 2006         Added \"random feed\" capability (see bottom of file for usage).\n\n12 May 2006         Added new parameter \"additional_fields\" which really extends what you can show within the output of the feed.\n\n16 Jun 2006         Added new parameters max_characters and max_char_wordbreak Plus the ability to add translations for some key words that might get inserted in the feed items.\n\n21 Nov 2006         minor bug fix that caused generated content to not be xhtml compliant - thanks to the owner of \"The Swamp\" at http:\/\/www.guzzlingcakes.com\/ for pointing out the problems.\n                Am also including the class-snoopy.php fix for wordpress so that sites that gzip compress their feeds can be consumed by feedlist (this is a bug in snoopy that has been fixed)\n                this will allow you to pull in feeds from sites that previously didn't work such as ma.gnolia and reddit.com\n\n14 Apr 2007         Complete rewrite\n\n22 Jan 2008         Minor Bug fixes (handle show_date, show_date_per_item)\n\n24 Mar 2008         Added new parameter \"show_description_only\" which forces the output to only show each items description (will be linked if a link exists in the feed).\n\n08 Apr 2009         The Read More link now acts according to the behavior of the \"new_window\" argument\n\n07 Jul 2009         Added \"feedListExtensions.php\" with first extension point, \"transformURL\" see bottom of this document for help on extensions.\n\n23 Sep 2009         fixed a variety of issues identified at http:\/\/code.google.com\/p\/wp-feedlist\/issues\/list (issues: 15, 17, 22, 30, 31, 32, 37)\n\n25 Nov 2009         Added filter for posts to use the random feed file\n\n19 Jan 2010         Added new option of to display rel=\"nofollow\" on the links.  Option is called \"no_follow_on\" and by default is set to false.\n\n08 Apr 2010         Added support for SimplePIE feed parsing as an alternative to the default magpie choice.\n\n29 Oct 2010         Made the language option request specific while keeping the global setting as the default choice\n\n09 Jan 2012         Fixed mistake that was causing eof error when php demands &lt;?php instead of just a &lt;? on line 37\n\n10 Jan 2012         prior tag was broken.. need to fix directory structure.\n<\/code><\/pre>\n\n    06 Feb 2013         Fix security vulnerability that allowed potential cross site scripting attack http:\/\/secunia.com\/advisories\/42197\/\n\n<!--section=other_notes-->\n<h3 id='LICENSE'>LICENSE<\/h3>\n<p>This program is free software; you can redistribute it and\/or\nmodify it under the terms of the GNU General Public License\n(GPL) as published by the Free Software Foundation; either\nversion 2 of the License, or (at your option) any later\nversion.<\/p>\n<h3 id='POTENTIAL-ISSUES'>POTENTIAL ISSUES<\/h3>\n<p>May not handle internationalization very well.  Has seen very\nlimited testing with non UTF-8 encoding.<\/p>\n<h3 id='KNOWN-BUG'>KNOWN BUG<\/h3>\n<p>using the rssFile filter results in a duplication of the feedList display<\/p>\n<h3 id='USAGE'>USAGE<\/h3>\n<p>From anywhere in your WordPress template, call the function\n\"feedList(...)\", which takes the following parameters (all\nparameters have default values) you can pass in either a named array of parameters or\npass the parameters in order as follows:<\/p>\n\n<pre><code>* rss_feed_url (default: \"http:\/\/del.icio.us\/rss\") - The URL of the Del.icio.us RSS or ATOM Feed.  Still named rss_feed_url for backwards compatability but will work with ATOM feeds\n* num_items (default: 15) - The number of items to display\n* show_description (default: true) - Whether or not to display the \"description\" field\n* random (default: false) - Whether or not to randomize the items\n* before (default: \"&lt;li&gt;\") - Tag placed before the item\n* after (default: \"&lt;\/li&gt;\") - Tag placed after the item\n* description_separator (default: \" - \") - Between the link and the item\n* encoding (default: false) - Change to true if you are reading in a ISO-8859-1 formatted file.  Basically, if you see a bunch of question marks (?) in your titles set this to true and see if it fixes the problem.\n* sort (default: \"none\") - takes one of three values; none, asc, desc\n        none - doesn't sort and leaves your existing code as is\n        asc  - sorts the results in alphabetic order (by title)\n        desc - sorts in reverse alphabetic order (by title)\n* new_window (default: false) - Whether to open the links in a new window or not.\n        true - opens links in new window using javascript to attach the \"target\" attribute to each link in the list and is thus xhtml strict compliant\n        false - opens the links in the current window  (DEFAULT)\n        simple - opens links in new window and hardcodes the target=\"_blank\" into the link. NOT xhtml strict compliant this option exists so that you can use it without javascript.  If you also don't want to include the javascript  in your header file update the global setting in rssLinkList.php $showRSSLinkListJS and set it to false.\n* ignore_cache  (default: false) use only under special circumstances such as testing a feed.  Setting to true will get you banned from\n        some feed providers if you fetch too often!  If you provide a number (instead of true or false) it will\n        use that value (in seconds) as the cache timeout setting..\n        true - gets a fresh copy if possible: not reccommended as some sites will ban you if you get their feed to frequently\n        false - uses the default caching mechanism\n        numeric value - a way to overide the cache timeout on a feed-by-feed basis\n* suppress_link (default: false) - Whether to wrap the item title in a link to the item's link url\n        true - suppresses the link and wraps the title in a &lt;span&gt;\n        false - the default behaviour that is what feedList has always done - if a link exists in the feed item then the title is wrapped in the anchor tag &lt;a href=\"\"&gt;.\n* show_date (default: false) - wheter to show the last date the feed was updated.  If true it shows the date wrapped in a div with the class of \"feedDate\".\n        true - shows the update date like so: \"updated: 02 Mar 2006 01:59pm EST\" without the quotes wrapped in a DIV with class \"feedDate\".  If you use this and have your\n            feed items shown in a list (&lt;ul&gt;,&lt;ol&gt;) your html page may not validate with a &lt;div&gt; nested in the list.\n        false - the default behaviour and is what feedList has always done.  No update date is displayed.\n* additional_fields - lets you enter a list of fields you want to display.  The list of fields needs to be delimited by a tilde (~).  If you want to show a nested field then it needs to be defined as a period\/dot delimited item.\n        example using del.icio.us and you want to show the tags associated with the item and the summary of the item -\n        feedList(array(\"rss_feed_url\"=&gt;\"http:\/\/del.icio.us\/rss\/finalcut\",\n                       \"additional_fields\"=&gt;'summary~dc.subject'\n                       )\n\n        In this example the list of fields is summary and dc.subject - dc.subject drills down into the rss structure to reach the node &lt;item&gt;&lt;dc&gt;&lt;subject&gt;&lt;\/subject&gt;&lt;\/dc&gt;&lt;\/title&gt; - del.icio.us currently exports the list of tags\n        in the dc.subject field.\n* max_characters - The maximum number of characters to return. If you want to show everything, set to 0 (default).\n        NOTE: if this is set (non 0 number) then any HTML entities will not be converted back to HTML to make sure your sites HTML doesn't get broken.\n\n* max_char_wordbreak - Used only if max_characters is NOT 0.  Prevent breaking up words.\n        true - we cut on the last space before max_characters.\n        false - cuts right at the max_characters point\n\n* show_description_only - provides a mechanism for turning off the item titles\n        true - suppresses the title and the description separator; forces \"show_description\" to be true\n        false - won't change the behavior of the plugin at all.  (DEFAULT)\n* no_follow_on - flag for turning on, or off, the rel=\"nofollow\" attribute on links\n        true - include rel=\"nofollow\" with each link in the feed\n        false - don't include rel=\"nofollow\"  (DEFAULT)\n* language -    what language to show the \"Read More...\" link in when the description field is longer than max_characters.  By default it uses the language setting that is in\n        the plugin around line 181 which, by default, is en_US.  As of this date the languages supported are:\n            fr_FR - French [shows, Lisez davantage]\n            nl_NL - Dutch [shows, lees verder]\n            en_US - US English [shows, Read more...]\n\nFILTER USAGE\n\n    * basic:\n        &lt;!--rss:[URL]--&gt;\n\n        NOTE if you aren't using named parameters with the fitler then ONLY provide the url after the rss: or else it won't work.  Left as rss: for backwards compatability but will work with ATOM feeds as well.\n\n    * NAMED PARAMETERS\n        &lt;!--rss:rss_feed_url:=http:\/\/del.icio.us\/rss\/finalcut\/wishlist,num_items:=5,random:=true--&gt;\n\n        NOTE when using the filter and named parameters ALL parameters including the URL must be named. Also note that if you are providing different HTML for the before or after parameter you must escape it.  For instance if you want before='&lt;li&gt;' then you must pass before='&amp;lt;li&amp;gt;'\n\n        Finally note the whole thing must be on ONE line.  No line breaks or else it won't work.\n\n\n    * random file:\n        &lt;!--rssFile:[FilePath]--&gt;\n\n        NOTE: if you aren't using named parameters with the filter only provide the full path to the file or else it won't work.\n        NOTE: if you don't provide a filepath the default one set in the file, feedlist.php near line 187 will be used (typically siteroot\\wp-content\\plugins\\feeds.txt)\n\n        * Named Parameters\n        &lt;!--rssFile:feedsToShow:=1,num_items:=3,file:=c:\\dev\\websites\\wordpress\\wp-content\\plugins\\feeds2.txt--&gt;\n\n        NOTE: this example will pull one feed from the file, and then show 3 items fro the feed\n<\/code><\/pre>\n\n<p>EXAMPLES:<\/p>\n\n<pre><code>NAMED PARAMETER EXAMPLE -- PREFERRED METHOD\n    &lt;ol&gt;\n    &lt;?php\n        feedList(array(\"rss_feed_url\"=&gt;\"http:\/\/www.auf-der-hoehe.de\/index.php?id=23&amp;type=333&amp;feed_id=71&amp;no_cache=1\",\n                        \"num_items\"=&gt;10,\n                        \"show_description\"=&gt;false,\n                        \"random\"=&gt;true,\n                        \"sort\"=&gt;\"asc\",\n                        \"new_window\"=&gt;true,\n                        \"show_date\"=&gt;true\n                )\n        );\n    ?&gt;\n    &lt;\/ol&gt;\n\nBASIC\n    &lt;ol&gt;\n     &lt;?php\n        feedList(\"http:\/\/del.icio.us\/rss\/finalcut\");\n     ?&gt;\n    &lt;\/ol&gt;\n\n    due to the fact that rssLinkList wraps each item with an &lt;li&gt; tag pair by default you need to provide the &lt;ol&gt; or &lt;ul&gt; wrappers around the function call.\n\n\nCOMBINING LISTS:\n\n    You can also combine rss calls into one html list simply by wrapping multiple rssLinkList function calls in one set of html list tags.  Notice I only specify the first parameter here.  All parameters have defaults so the only one you really need to provide is the URL.\n\n    &lt;ol&gt;\n     &lt;?php\n        feedList(\"http:\/\/del.icio.us\/rss\/finalcut\");\n        feedList(\"http:\/\/www.43things.com\/rss\/uber\/author?username=FinalCut\");\n     ?&gt;\n    &lt;\/ol&gt;\n\n    since the function, feedList, by default wraps each rss item in &lt;li&gt; tags you will end up with one long list of items to display.\n\nENCODING EXAMPLE:\n\n    &lt;ol&gt;\n    &lt;?php feedList(\"http:\/\/www.auf-der-hoehe.de\/index.php?id=23&amp;type=333&amp;feed_id=71&amp;no_cache=1\",10,false,true,\"&lt;li&gt;\",\"&lt;\/li&gt;\",\"-\",true); ?&gt;\n    &lt;\/ol&gt;\n<\/code><\/pre>\n\n<p>NOTE:\n    Remember, if you don't want your items to be displayed as an html list - you need to override the default parameters of \"before\" and \"after\" in the function call.<\/p>\n\n<pre><code>-------------------\nSIMPLE PIE\n-------------------\nIf your feeds don't show up properly OR you just want to use a more modern feed parsing engine go into feedList.php and change $useMagPie = false; instead of true.\nEventually this will be the only way I pull back feeds but to insure backward compatability at the moment magpie is remaining the default parser.\n\n\n-------------------\nRANDOM FEEDS\n-------------------\nThis is a feature that lets you prepopulate a text file in a easy to read format that feedList will use to display your feeds randomly.\nIt supports pretty much every option the normal feedList functionality supports but with the added ability of displaying items from multiple feeds\nat one time.\n\nThere are some potential areas where you might have problems using this.\n1. You don't format your feed file properly.\n2. You don't tell feedList the correct location of your feed file.  99% of the time this will be the problem.\n\nFor an example of a feedFile check out the feedFile_example.txt that comes with the plugin. For the absolutely easiest\nmeans of using this feature just create a copy of feedFil_example.txt and renamte it as feeds.txt and put it in your wp-content\/plugins\ndirectory.\n\nUSAGE:\n\nSIMPLE: assuming you put your feeds.txt file in the wp-content\/plugins directory\n    &lt;?php randomFeedList() ?&gt;\n\n\nADVANCED:\n    &lt;?php randomFeedList(\"feedsToShow=2&amp;num_items=3\") ?&gt;\n\n    there are ALOT of parameters you can pass into randomFeedList.  I am taking a different approach to it here than I do elsewhere in the feedList plugin.\n    If you want to pass parameters they must be passed in as shown separating each additional name\/value pair with an ampersand &amp;.\n\n\nPARAMETERS\nfile - the path to your feedfile (default: '.wp-content\/plugins\/feeds.txt')\nfeedsToShow - the number of feeds to poll from your feedfile (default: 5)\nnum_items - the number of items to show from each feed polled (default: 1)\nshow_description - show the description of each item or not (default: false)\nrandomItemsPerFeed - not only can you show random feeds from the feed file but you can also show random items from each feed (default: true)\nbeforeItems - what to show before an item  (default: '&lt;li&gt;')\nafterItems - what to show after an item (default: '&lt;\/li&gt;')\ndescription_separator - what to show, if the description is displayed, between the item title and the description (default: '-')\nencoding - a weak effort at internationalization support.  If your feeds show up with weird characters try setting this to true (default: false)\nsort - how to sort the feed items by title: asc (ascending order), desc (descending), or none - leave feed in its natural order, typically date of posting (default: none)\nnew_window - wheter to open the links in a new window (default: false)\nignore_cache - wheter to ignore the cached copy of the feed - recommended to leave as false (default: false)\nsuppress_link - wheter to remove the link from the title (default: false)\nshow_date - wheter to show the date each feed was last updated (default false);\nadditional_fields - any additional fields to display with the item.  (default: an empty string)\n\n\n\nCRAZY ADVANCED CALLING:\n\n    if you want to specify all of those parameters in one call\n\n\n    &lt;?php randomFeedList(\"file=.\/wp-content\/feeds2.txt&amp;feedsToShow=2&amp;itemsPerFeed=3&amp;show_description=true&amp;randomItemsPerFeed=false&amp;beforeItems=&amp;afterItems=&amp;description_separator=::&amp;encoding=false&amp;sort=asc&amp;new_window=true&amp;ignore_cache=200&amp;suppress_link=false&amp;show_date=true&amp;additional_fields=x~y~z.a.b\") ?&gt;\n<\/code><\/pre>\n<h3 id='Troubleshooting'>Troubleshooting<\/h3>\n<ol>\n<li>if your feed isn't being loaded properly then try to replace the following two files in your wp-includes directory of your wordpress install:\n    class-snoopy.php and rss.php\n with the copies found at http:\/\/code.google.com\/p\/wp-feedlist\/downloads\/list<\/li>\n<\/ol>\n<h3 id='Extensions'>Extensions<\/h3>\n<p>I have added a rudimentary extension mechanism that will let you add custom behavior to how feedList process the feeds.  This way you can edit the feedListExtensions.php file and\n    not have to worry about breaking compatiability with feedList (thus you will get updates without a problem.  Upgrades may become more difficult in the future so we shall see how this\n    goes.<\/p>\n\n<pre><code>-- transformLinkURL --\n    This extension point is used to make changes to the URLs associated with all the links before they are used within feedList.  For example if you wanted to add a tracking code\n    to the end of the url you could just update the default function to return as follows:\n        return $url . \"&amp;trackingCode=mytrackingCode\";\n\n    Obviously you'd want to add a little bit of logic to make sure you needed the &amp; and not the ? before appending your new url argument (I leave that to you).  Likewise\n    this is a pretty weak example but hopefully it illustrates the extension point well enough.  One user is using this extension point to reroute all URls to a different location\n    before they go off to their actual destination (not sure why).\n<\/code><\/pre>","raw_excerpt":"Allows you to display lists of links from an rss or atom feed on your blog.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/55307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=55307"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/finalcut"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=55307"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=55307"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=55307"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=55307"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=55307"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=55307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}