Versions

ReadFeed.fwactionb.zip (2012-05-08) (Downloaded 39 times)

Contains:

  • ReadFeed (item-action) - v. 0.4.3

Compatible: Pro 4, Pro 5, and Pro 5.5

ReadFeed.fwactionb.zip (2012-05-05) (Downloaded 1 time)

Contains:

  • ReadFeed (item-action) - v. 0.4.2

Compatible: Pro 4, Pro 5, and Pro 5.5

ReadFeed.fwactionb.zip (2011-07-13) (Downloaded 0 times)

Contains:

  • ReadFeed (item-action) - v. 0.4.1

Compatible: Pro 4 and Pro 5

ReadFeed.fwactionb.zip (2011-05-16) (Downloaded 0 times)

Contains:

  • ReadFeed (item-action) - v. 0.4

Compatible: Pro 4 and Pro 5

ReadFeed.fwactionb.zip (2008-10-10) (Downloaded 0 times)

Contains:

  • ReadFeed (item-action) - v. 0.3

Compatible: Pro 4 and Pro 5

Author: Walter Davis

javascript php rss

ReadFeed allows you to republish RSS feeds as HTML linked lists. You have complete control over the output format, and can style the resulting list using CSS styles.

To begin, decide on the feed you wish to publish. (As noted elsewhere, clear up any legal obligations first, make sure what you are re-publishing is either your own or licensed to you in such a way that you don’t run afoul of laws. Due to the international nature of the Web, you may be required to follow laws you’ve never heard of.) Get the http:// address for this feed – not the feed:// URL that Safari might show you.

This feed should be in some flavor of RSS. If it is in ATOM, then this Action will fail, silently.

Make sure your page file-name ends in .php, then draw an HTML box on the page where you would like the feed to appear. This box can be a layer or a table-based layout item. Please don’t apply any graphic effects to it, however, as they will not work properly. If you would like to add shadows or borders, then create that styled object first, and place an inline HTML box within that styled box and use that as the base for your list.

Apply the ReadFeed Action to the HTML box you created. In the Actions palette, set the following options:

  1. URL – this should be the http:// url to the feed.
  2. Template – leave this at defaults until you are familiar with how it works.
  3. Elements – leave at default (more later about these).
  4. Cache time – set to 0 for initial testing
  5. Number of items – if your feed has a lot of content, then this allows you to grab the N most recent items.

Upload your page to the server (you won’t be able to test this locally unless you are also running a full PHP/Apache server on your Mac, or are using MAMP).

Use an FTP application to access your server. In the same folder as the page you just made, create a new folder called _cache. The leading underscore is important here. Select this folder, and change its permissions to allow the server to write to it. For basic testing, setting it to allow the “world” to write to it will work fine. For a production setting, you will want to change this folder to be owned by the Web server, and only allow the owner to write to it. You will need to use an advanced FTP application like Transmit, or a command-line (shell) access to the server. You will need to ask your server administrator exactly what name your Web server runs as. (In this example, the server is called ‘www’.)

cd /path/to/web/files
chmod 740 _cache
chown www _cache

You may or may not have permission to do any of that, depending on how your server is configured. Your hosting provider will be able to make the changes if you are not.

Now visit your page, and you should see a list of links and descriptions from the RSS feed.

You can change the display of these items using CSS (for the style) or by modifying the Template and Elements variables in the Actions palette.

The template follows the Unix-standard printf format. Everywhere you see %s, that’s an indication that a string (list of text characters) is to be replaced. There should be exactly as many instances of %s in the template as there are items in the Elements. They should also be listed in the same order. If you wanted to only show a list of links, with no descriptions, then you could modify the Template to read:

<a href="%s" rel="new_window">%s</a>

And then change the Elements to link, title.

If your page is not using XHTML, then you could drop the rel=“new_window” bit and add target=“_blank” to force a new window for any followed links.

To force a new window in XHTML strict, you have to use a JavaScript hack. Simplest way to do this is to use Protaculous and add the following snippet to the page:

$$('a[rel~="new_window"]').each(function(elm){elm.target = '_blank';});

To style the list with CSS, you may use the classname ‘feedlist’ to target your styles. Make a new style with the Tag ul.feedlist, and use this to style the list itself. Make another style with the Tag ul.feedlist li and use that to style the list items. Finally, you can get very granular by styling the A (link) tag inside using ul.feedlist li a. By making these styles using the Tag field in the Styles palette (and clearing out the Name field in each style) you will force Freeway to publish them without any need to apply them to another object on the page.

1 Comment

Hi and good day Walter,

Permissions are correct, but the feed.php page cannot be loaded :

Parse error: syntax error, unexpected T_STRING in /home/livingis/public_html/livfd.php on line 1

(I do have MAMP for error checking is it's of use?)

My feed file looks like this (how to visualise php code here ? I use …):

<……?php require_once('Resources/Feed.php'); ?>

<?xml version="1.0" encoding="utf-8"?>

<rss version="2.0">

&lt;channel xmlns:atom=&quot;http://www.w3.org/2005/Atom&quot;&gt;

    &lt;generator&gt;Freeway Pro 7.1&lt;/generator&gt;

&lt;title&gt;Liv... ... &lt;/title&gt;

—————————————..————————————-

The feed.php in Resources starts like this:

class Feed{

var $xml_parser;
var $rss_content;

… —————————————..————————————-

Sign In or Sign Up to comment.