This is an old revision of the document!
Table of Contents
filterrss Plugin
Compatible with DokuWiki
Weatherwax, Angua, Adora Belle
This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.
Attention! I'm trying my best to make this plugin elastic and robust. So when you will find any bug or have an idea how to make the plugin better, do not hasitate and contact me using my e-mail address or create a new issue in the bugtracker.
Goals of the project
This project aims to create elastic and highly customisable rss feed reader plugin which will also be easy to use. The main advantage of this plugin is possibility of filtering rss results and changing the way how they are they displayed.
Donate
I'm a young student working on this plugin in my free time. So if you like this plugin you can Flattr it on its github page or send me money via PayPal. There is a lot to do in this plugin and a small donation would convince me that you need my work and motivate me to keep developing this plugin. Thank you in advance.
Installation
Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin. Refer to Plugins on how to install plugins manually.
Examples/Usage
See all below examples in action here.
Basic usage is quite simple. In order to just display all the feed's entries, just type:
[filterrss http://slashdot.org/index.rss]
Now let's use rss filters. For example display only the entries younger than 2012-12-12:
[filterrss http://slashdot.org/index.rss pubDate>2012-12-12]
Now more complexed example. Let's display entries younger than 2012-12-12 and additionaly that contains Linux in their title:
[filterrss http://slashdot.org/index.rss pubDate>2012-12-12 && title="%Linux%"]
Plugin also support sorting. If you want to sort rss feeds by it's titles:
[filterrss http://slashdot.org/index.rss ORDER BY title]
Decresing sorting is also supported:
[filterrss http://slashdot.org/index.rss ORDER BY date DESC]
You can of couse connect filtering and sorting to get only rss entries that you want to:
[filterrss http://slashdot.org/index.rss pubDate>2012-12-12 && title="%Linux%" ORDER BY title]
Plugin also support LIMIT parameter which allows you to limit rss feed to given number of entries:
[filterrss http://slashdot.org/index.rss LIMIT 5]
The above example will display 5 entries. The LIMIT should always be at the end of options string. So when you using ORDER BY the syntax would look like this:
[filterrss http://slashdot.org/index.rss ORDER BY date DESC LIMIT 10]
Syntax
[filterrss url condition1 && condition2 && condition3 ORDER BY filed DESC/ASC]
- url - the url to rss feed. Ex. http://slashdot.org/index.rss
- contition - filter to be used over the feed. Currently there are 4 rss feed attributes suported in the contitions:
- pubDate - the publication date of the entry. Date to compare should be given in an format recognized by PHP's strtotime function. Ex. pubDate>=2012-05-02 (when I was writing this doc I've realized that it should be also possible to use relative date in here such as 1 month, 1 year etc. I will add it soon.)
- title - the title of the entry. Of course you can use only equal operation here(ex. title=“My project”). The comparsion string can be quoded by “ or ' or nothing if it doesn't contain any spaces. You can use percent sign here(%) which represents 0 or more chars. You can use it in order to find rss entries that contains something it the title. For ex. this condition is finding all rss etries that contains Linux in their titles: title=”%Linux%“
- description - description of the entry. The rules are the same as for the title.
- link - link of rss entry. The rules are the same as for the title.
- ORDER BY filed_name - it's optional and allows you to sort feeds in the diffirent order that they appear in XML. filed must be one of condition fileds. After the filed you can put DESC to show the entries in reverse order.(If you want you can also use ASC in place of desc but it does nothing)
- LIMIT entries_nubmer - this allows you to determine how many entries should be displayed.
Configuration and Settings
- bbcode - if you turn on this option, the description of each entry whould be processed by bbcode parser rather than html.
Development
Change Log
Known Bugs and Issues
Please report bug and issus on the project's github page.
ToDo/Wish List
- Give a possibility to use use own html elements positioning. Add feed's classes.
- Better cache managment
- Use advanced reg exp in feed's conditions.
- Create more description syntax parsers(there is only bbcode parser avalible now)
- Allow joinig several feeds.
Add sortingachieved(23-04-2013)
If you have any other wishes write it down here.
FAQ
Discussion
Really good plugin. That's what i want to find. Thanks for creator!
A suggestion, make a friendly show for those invalid rss address.
Bad. Doesn't work on Weatherwax. I got the error: “Cannot load rss feed.” Code: [filterrss http://slashdot.org/index.rss]
Are you sure that server you are using are able to load remote data. Does normal dokuwiki rss syntax works for you? Can you check if PHP's simplexml_load_file can load any other xml file?
Question: How hard would it be to add the ability to provide authentication information to an RSS server (presumably via an encrypted, otherwise inaccessible file from the filesystem)?
It shouldn't be so hard. If you still interested in it, contact with me by email. — Szymon Olewniczak 2013/12/21 16:28
Bug. This plugin is not compatible in Release 2013-12-08 “Binky”. Don't work rss filter pubDate and bbcode parser.
I'm running 'Binky' and it's working just fine for me. BC 22-Mar-2014