in english (en)
 DEALs   RSS DREAMFEEDER 
 RSS REPLAY 
 SOCIALINK 
 ARTICLEs 
 RONs BLOG 
 SUPPORT 
 PR & MEDIA 
 CORPORATE 

 

RSS DreamFeeder Help

For RSS DreamFeeder version 2.5
Last Updated on Fri, January 19, 2007

Download the PDF - 3.5 MB - 104 pages


Contents

  1. Dreamweaver Version Notes
  2. RSS Format Notes
  3. Installing RSS DreamFeeder
  4. Opening RSS DreamFeeder
  5. Controlling RSS DreamFeeder
  6. List of RSS Feeds
  7. Manual and Automated Feeds
  8. Creating, Editing, Processing, Deleting Feeds
  9. Linking, Uploading and Pinging
  10. Preferences and Help
  11. Special Command Options
  12. Controlling Feed Dates
  13. Selecting and Managing Sites
  14. Registering RSS DreamFeeder
  15. Setting Preferences
  16. Preferences: Content Sampler
  17. Preferences: Link Toolkit
  18. Preferences: Uploads & Downloads
  19. Preferences: Ping Toolkit
  20. Editing a Feed
  21. Edit: Basic or Advanced
  22. Edit: Manual or Automated
  23. Edit: Types of Feeds
  24. Edit: Feed Descriptives
  25. Edit: Feed Settings
  26. Edit: Site Settings
  27. Edit: Summarizing Sources
  28. Edit: Feed Content
  29. Edit: Feed Elements
  30. Edit: Custom Elements
  31. Edit: Content Extraction
  32. Testing Your Extraction Settings
  33. The Content Sampler
  34. Importing Content
  35. Editing Stories
  36. Processing Feeds
  37. How To: A Basic Manual RSS Text Feed
  38. How To: A Basic Manual iTunes Podcast
  39. How To: An Advanced Automated RSS Text Feed From Multiple Pages
  40. How To: An Advanced Automated RSS Text Feed From a Single Page
  41. Tutorials
  42. Regular Expression Reference

Dreamweaver Version Notes

RSS DreamFeeder works with all versions of Dreamweaver as far back as version 6.0 (MX). However, users of Dreamweaver version 7.0 (MX 2004) should update to v 7.0.1 for best results. Sorry. Macromedia broke multiple list selection in MX -- it was fixed with the update. No multiple list selections are allowed for that version. The product is still quite usable, but it works better with the update.


RSS Format Notes

RSS DreamFeeder supports both of the primary formats for content syndication: RSS and Atom. We currently support the following versions of the formats and will continue to add more formats as newer versions of these tools become available. Please note: the "RDF" format is technically RSS 1.0. Please use that setting if you are want an "RDF" file.

RSS Versions: 0.92, 1.0, 2.0

Atom Versions: 0.3, 1.0

RSS DreamFeeder also supports extensions to the basic RSS and Atom formats to allow for special feed uses like podcasting and photocasting. These extensions add extra tags to the RSS feed's basic set to accomplish these tasks. RSS DreamFeeder supports the following extensions:

Dublin Core (http://purl.org/dc/elements/1.1/)
Content (http://purl.org/rss/1.0/modules/content/)
Media (http://search.yahoo.com/mrss/)
RSS 0.9 & 1.0 Enclosures (http://purl.oclc.org/net/rss_2.0/enc)
iTunes (http://www.itunes.com/dtds/podcast-1.0.dtd)
iPhoto/Apple Wallpaper (http://www.apple.com/ilife/wallpapers)


Installing RSS DreamFeeder

Use the Extension Manager to install the RSS DreamFeeder Extension.

RSS DreamFeeder installs into the Floaters directory in the Configuration directory for Dreamweaver. On multiuser systems each user has their own Configuration folder, and each user will have to install RSS DreamFeeder separately.

Extension Manager Issues

Several people have had problems with installing RSS DreamFeeder because of problems with Extension Manager. The problem stems from the fact that Extension Manager doesn't always recognize all the other programs that are installed, even though it is supposed to manage their extensions. If you are having this problem you will notice that the application selection popup in Extension Manager does not list your version of Dreamweaver. Because it doesn't know that it is supposed to manage Dreamweaver files it will not install the RSS DreamFeeder extension.

The solution for this problem requires following a few simple steps:

  1. Quit Extension Manager
  2. Launch Dreamweaver and leave it running
  3. Launch Extension Manager. It should now list your copy of Dreamweaver in its applications popup.
  4. Quit Dreamweaver
  5. Now you can install RSS DreamFeeder

Opening RSS DreamFeeder

RSS DreamFeeder is a floating panel window, like many of the other options in the Window menu. It can be found after the Components item in the menu.

Selecting RSS DreamFeeder from the Window menu will open the RSS DreamFeeder panel. After a few moments it will begin a scan of your website to search for existing RSS files (*.rss or *.xml files) that were created by RSS DreamFeeder. Any files found will be added to the list of files in the RSS DreamFeeder panel. If you don't want to wait for RSS DreamFeeder to update the list press the refresh button, it will begin the scan immediately.


Controlling RSS DreamFeeder

RSS DreamFeeder presents a window panel with a few interface elements to allow you to control the process of creating and updating your website's RSS feeds.

  1. Sites List
    The list of websites you have defined in Dreamweaver. This allows you to easily work on multiple websites and projects.
  2. Toolbar: Preferences & Help
    This toolbar allows you to launch RSS DreamFeeder's preferences dialog or it's help file (opens in a web browser). The tools are:
    Preferences
    Help
  3. About & Register
    The about button displays content about your version of RSS DreamFeeder, including license, version number, and other information. The register button displays a dialog where you can enter and validate your registration number for RSS DreamFeeder. For more on registering see the section on Registering RSS DreamFeeder.
    About RSS DreamFeeder
    Register
  4. Toolbar: Feed Actions
    This toolbar allows you to take actions on a feed. The tools are:
    New Feed
    Edit a Feed
    Process a Feed
    Delete a Feed
  5. Toolbar: Services
    This toolbar allows you to do things with the feeds you have. The tools are:
    Link to a Feed
    Upload a Feed
    Ping a Caching Server (about your feed)
    Refresh the Feeds List
  6. Feeds List
    The feeds list presents the list of RSS feeds found on your website, along with the last time the feed was updated and the number of new stories (html pages modified since that date) that have to be checked and added to the feed. Manual entry feeds display the text "manual" instead of a number of files to check.
  7. Status Area
    The status area displays information about the status of RSS DreamFeeder to provide you with additional information about your options and settings, processing state, etc.



List of RSS Feeds

The feeds list presents the list of RSS feeds found on your website. The list displays the last time the feed was updated and for automated feeds, the number of new stories (html pages modified since that date) that have to be checked and added to the feed.

Columns:

  1. RSS Feeds
    The title of the RSS feed
  2. Last Updated
    The date the feed was last updated
  3. Files to Check
    The number of files to check for new stories to be added to automated feeds
    The text "manual" for feeds where content is manually entered
  4. Path
    The location of the RSS feed on your hard drive

To perform actions on a feed simply select it from the list and click the button in the toolbar. Most buttons can act on multiple feeds at the same time (but not Edit or Link). The list is configured to allow multiple selections.

Note: Dreamweaver MX 2004 (v 7.0) users should update to v 7.0.1 to allow multiple selection to work properly. Sorry. Macromedia broke list selection in MX -- it was fixed with the update. You can, however, still select items singly.


Manual and Automated Feeds

RSS DreamFeeder takes two different approaches to creating feed content. Feed content can be manually entered (you can type in content yourself) or it can be extracted from files and added to your feed programmatically (when you click the process button).

Manual feeds are best for uses like podcasts, photocasts, or where your content is not highly consistent from page to page or only updated occasionally.

Automated feeds are best for collecting content from pages that are formatted the same, from template-based pages, and from websites where there are many pages to manage and many entries to add to the feed on a regular basis.

In the feeds list, the only distinction between the two different types of feeds is that manual feeds do not display a number of files to check for new content. They are not subject to processing (though if you do click the process button you will succeed in changing the last updated date). For more on editing feed content see the section on Editing a Feed.


Creating, Editing, Processing, Deleting Feeds

To create a new feed press the new button. This will take you through a multi-step process to create the settings for your new feed. For information on configuring your feed see the section on Editing a Feed.

To edit an existing feed press the edit button. This will take you through a multi-step process to create the settings for your new feed. For information on configuring your feed see the section on Editing a Feed.

To process an existing feed press the process button. For information on configuring your feed see the section on Processing a Feed.

To delete a new feed press the delete button.


Linking, Uploading and Pinging

Linking places an HTML link to the feed within the current layout. Linking can also place text or graphics. You may choose from included graphics or add your own graphics. Linking can be used with special protocols or queries for adding this feed to other programs or other websites. These methods make it easier for your readers to use the feeds you are building. RSS DreamFeeder comes preconfigured with some methods but you can also add your own linking methods too -- see the section on Preferences: Link Toolkit.

Uploading puts the RSS feed onto your server. It serves the same function as the put button in the Site/Files panel. It was just convenient to have it handy in this toolbar too .

Remote caching servers like those at Google or iTunes keep copies or your feed for their readers. They only check for new information every 4 to 24 hours. If you want to inform those servers that you have updated your feed you can do so by pinging them. A ping is simply a request for the remote caching server to update its copy of your feed now rather than later. It may not be essential to ping those servers because they'll check automatically on their own. Be sure to upload your feed to the web server before pinging (otherwise there isn't new content for the caching server). RSS DreamFeeder comes preconfigured with some ping servers but you can also add your own too -- see the section on Preferences: Ping Toolkit.



Preferences and Help

To activate the preferences dialog press the preferences button. There you will be able to configure preferences for linking, uploading and downloading, pinging, managing sites and registering RSS DreamFeeder. For more on preferences see the section on Setting Preferences.

To activate the help files press the help button (or the many help buttons in most of the dialog boxes). Help buttons will take you either to the table of contents or to a relevant section within the help document (this file).


Special Command Options

Many buttons in the interface have optional commands defined for special uses if you click those buttons while holding down the Option (mac) or Alt (win) keys. This is called a power click and is particularly useful for accomplishing tasks related to but different from the normal command associated with the button.

 

Hold down the Option (mac) or Alt (win) keys while clicking:

The Process button will change the last processed date on the feed to the current date without adding new content.

The Process button with the Shift key will change the last processed date on the feed to the date of the oldest entry in the feed without adding new content.

The Delete button will delete all feed entries while keeping the feed's settings intact.

The Link button will link to the set of links specified in your preferences.

The Upload button will download the feed from your webserver if your preferences allow.

The Ping button will ping the set of servers specified in your preferences.

 

Hold down the Option (mac) or Alt (win) keys while clicking in the Edit dialog box:

The Save button will prompt for a new location for a file -- behaving like a "Save As" command.

The Calendar button will default to today's date rather than the date of the entry being edited -- a shortcut for updating an entry's date.

 

Hold down the Option (mac) or Alt (win) keys while clicking in the Ping dialog box:

The OK button will ping the servers as it does normally, but will log all responses in an HTML file that will then be opened in your browser so you can see what the servers sent back.


Controlling Feed Dates

Whenever any feed is processed or saved the last updated date is changed to be the current date. Your feed's last updated date is an important element of automated feeds because only files newer than that date are examined for content to add to the feed. Controlling the dates on a feed allows you to control what files will be examined. There are two simple things that you might want to do to modify the date beyond what happens automatically: change the date to today and change the date to the last time it was processed (the date on the last entry in the feed).

Hold down the Option (mac) or Alt (win) keys while clicking:

The Process button will change the last processed date on the feed to the current date without adding new content. Doing this allows you to skip any file changes between the last processed time and the current time. Any files changed during that period will not be examined for content and will not have an impact on the feed. This is particularly useful if you have made major changes to your website (like changing templates) that update lots of files without actually changing the substance of the pages.

The Process button with the Shift key will change the last processed date on the feed to the date of the oldest entry in the feed without adding new content. This is useful if you have modified the content of the feed manually (because that will change the last updated date) and want to slide the date back to capture file changes.


Selecting and Managing Sites

RSS DreamFeeder is designed to allow you to easily work on multiple website projects at the same time. The site menu allows you to work on one website in Dreamweaver while working with feeds from a different site in DreamFeeder. Simply select which site you want to work in from the sites popup menu.

Different editions of RSS DreamFeeder support different numbers of websites. When RSS DreamFeeder is unregistered you will be restricted to only one website. Feed actions (create a new feed, edit a feed, etc.) will be restricted to just those sites that you have configured DreamFeeder to work with in DreamFeeder's preferences. The Unlimited Edition of RSS DreamFeeder avoids these limitations. If you select a site and you see the text "Site Not Allowed" in the status area this means that you have exceeded the number of allowed sites for your license.

To manage the websites you are allowed to use DreamFeeder with select Manage Sites from the site popup menu in the RSS DreamFeeder floating panel.

Select the sites you want to use from the left column and click the right arrow button to move that site into the Allowed Sites list. Use the minus button to remove a site from the list. Registration code upgrades can be purchased from the rnsoft website at http://www.rnsoft.com.


Registering RSS DreamFeeder

It is very important to register your version of RSS DreamFeeder, not just because you should pay for the software if you want to use it, but because it directly effects the content of your feeds. All feeds generated from an unregistered version of RSS DreamFeeder will have "RSS Replay is Unregistered" as the headline of each story. To remove this content you must enter your registration number in the text field in the register panel and click the Check Code button.

Access the register panel by clicking on the Register button at the top right of the RSS DreamFeeder panel or by opening RSS DreamFeeder's preferences and selecting Register from the Category list on the left. Enter the code and press the Check Code button. The text under the code field will display either Valid or Invalid to let you know that your registration code is working.

Get your registration code from the RNSoft website at http://www.rnsoft.com.

Unregistered versions will have a red Register button in the RSS DreamFeeder panel. This button turns white with a green key when a valid registration code is entered.

  


Setting Preferences

RSS DreamFeeder has its own set of preferences apart from the normal preferences you have set in Dreamweaver. You can access the preferences dialog by pressing the Preferences button in the RSS DreamFeeder floating panel.

Preferences are grouped by category and you can modify each grouping by selected the appropriate category from the Category list on the left side of the dialog.

Categories are

  1. Content Sampler
  2. Link
  3. Upload
  4. Ping
  5. Manage Sites
  6. Register
  7. About RSS DreamFeeder

Preferences: Content Sampler

The Content Sampler allows identification of content for extraction by selecting or highlighting that content on the page. Once sampled, the identifying information is checked for uniqueness. Only samples of uniquely identified content should be used, but you may override this check by turning off the setting in this preference panel.
Option or alt while clicking the sample button always forces the selection to be sampled.

 


Preferences: Link Toolkit

Links can be created to allow readers to subscribe to the feed. However, different RSS readers and aggregation websites use different methods of subscription. Some use special query strings, other use custom protocols, all intended to make the reader's aggregation experience as smooth as possible. These link methods are listed in the left column of the Link preference panel.

Link methods can be collected together into sets for more efficient construction of pages. For example, you might wish to have links for all the major aggregators (Google, MyMSN, MyYahoo, NewsGator). You can build a set to contain these as a group so that you can quickly insert that group of links into your layout. Sets are managed in the set popup menu on the right side of the dialog. Build your own sets by creating them (Add a Set) and then moving Link Methods into that set by selecting a method from the left and clicking the right arrow button. Use the up and down arrows to arrange the set entries in the order you like. Set entries can be removed by clicking the minus button above the set entries list.

Link Methods can be added or deleted by using the plus and minus buttons at the top of the Link Methods list. When adding new Link Methods you will be prompted to enter data that identifies the way links will be built. A name for your method, default text, default graphic and the URL for your link is assembled in this dialog.

The URL and its parameters are entered here so they can be assembled when you use the link button. Special tags can be entered in the URL or the parameters list which will be replaced by data or content from the feed itself. Tags use two less than signs and two greater than signs to identify themselves as different from plain HTML.

Link Tags:

  • <<url>>
    The full URL of the feed, including the webserver address and http protocol
    http://www.rnsoft.com/dir1/dir2/feed.rss
  • <<urlnoproto>>
    The full URL of the feed, including the webserver address but without the protocol
    www.rnsoft.com/dir1/dir2/feed.rss
  • <<link>>
    A relative link from the current document to the feed
    ../dir2/feed.rss
  • <<alternatelink>>
    A tag that triggers placement of a relative link within the head section of the document for aggregators to discover the feed as an alternative to the current web page. You probably will not use this tag. It is included here for documentation purposes.
  • <<alternatelinktype>>
    A tag that contains the MIME Type of the feed based on the feed's format used when building an alternative content link. You probably will not use this tag. It is included here for documentation purposes.
  • <<alternatelinktitle>>
    A tag that contains the a string based on the feed's format used in the title attribute when building an alternative content link. You probably will not use this tag. It is included here for documentation purposes.
  • <<?>>
    ? is any string that is a setting within the feed. If the string is not one of those listed above the settings of the feed are examined and if the string matches the name of the setting it is replaced with the content of that setting. For example: <<itunesid>> would be replaced with the iTunes ID setting from the feed.

    Including but not limited to:
    author; authoremail; authormatchtype; authoruse; baseurl; basicfeedtype; capture; category; contentsource; datematchtype; dateuse; description; enclosurematchtype; enclosureuse; encoding; explicit; feedformat; feedtype; filetypes; formatversion; headmatchtype; headuse; imagepath; itunesid; keywords; keywordsmatchtype; keywordsuse; language; lifetime; linkmatchtype; linkuse; matchfilemethod; maxstories; mmtemps; path; rights; scope; servermodel; sitename; siteroot; storyimagealignment; storyimagematchtype; storyimageplacement; storyimageuse; storymatchtype; storyuse; subcategory; subtitle; testingbaseurl; thumbnailmatchtype; thumbnailuse; title; updatemethod; ver; webmasteremail
    Not all settings are available on all feeds. Settings that are empty are not stored.

Preferences: Uploads & Downloads

The only value of the Upload preference is to enable the Option+click setting so that you can download feeds from remote servers as well as upload them.



Preferences: Ping Toolkit

Remote caching servers like those at Google or iTunes keep copies or your feed for their readers. They only check for new information every 4 to 24 hours. If you want to inform those servers that you have updated your feed you can do so by pinging them. A ping is simply a request for the remote caching server to update its copy of your feed now rather than later. Of course, identifying information like the URL of the feed, its title, or other content may need to be passed to the server that is pinged.

Ping Servers can be collected together into sets to keep your workflow efficient. For example, you might wish to build a set with all the major aggregators (Google, MyMSN, MyYahoo, NewsGator). You can build a set to contain these as a group so that you can quickly ping them at the same time, with a single click on the ping button. Sets are managed in the set popup menu on the right side of the dialog. Build your own sets by creating them (Add a Set) and then moving Ping Servers into that set by selecting a server from the left and clicking the right arrow button. Use the up and down arrows to arrange the set entries in the order you like. Set entries can be removed by clicking the minus button above the set entries list.

Ping Servers can be added or deleted by using the plus and minus buttons at the top of the Ping Servers list. When adding new Ping Servers you will be prompted to enter data that identifies the URLs to be used when pinging. A name for your Server and the URL and parameters to use when pinging are assembled in this dialog.

Special tags can be entered in the URL or the parameters list which will be replaced by data or content from the feed itself. Tags use two less than signs and two greater than signs to identify themselves as different from plain HTML.

Ping Tags:

  • <<url>>
    The full URL of the feed, including the webserver address and http protocol
    http://www.rnsoft.com/dir1/dir2/feed.rss
  • <<urlnoproto>>
    The full URL of the feed, including the webserver address but without the protocol
    www.rnsoft.com/dir1/dir2/feed.rss
  • <<link>>
    The full URL of the feed, including the webserver address and http protocol -- this is different from link tags because these are remote servers and a relative link wouldn't make any sense to them
    http://www.rnsoft.com/dir1/dir2/feed.rss
  • <<?>>
    ? is any string that is a setting within the feed. If the string is not one of those listed above the settings of the feed are examined and if the string matches the name of the setting it is replaced with the content of that setting. For example: <<itunesid>> would be replaced with the iTunes ID setting from the feed.

    Including but not limited to:
    author; authoremail; authormatchtype; authoruse; baseurl; basicfeedtype; capture; category; contentsource; datematchtype; dateuse; description; enclosurematchtype; enclosureuse; encoding; explicit; feedformat; feedtype; filetypes; formatversion; headmatchtype; headuse; imagepath; itunesid; keywords; keywordsmatchtype; keywordsuse; language; lifetime; linkmatchtype; linkuse; matchfilemethod; maxstories; mmtemps; path; rights; scope; servermodel; sitename; siteroot; storyimagealignment; storyimagematchtype; storyimageplacement; storyimageuse; storymatchtype; storyuse; subcategory; subtitle; testingbaseurl; thumbnailmatchtype; thumbnailuse; title; updatemethod; ver; webmasteremail
    Not all settings are available on all feeds. Settings that are empty are not stored.

Editing a Feed

When you are creating or editing a feed you have a lot of choices to make. Questions from how to edit the feed, to how to update the feed, to what the feed is to be called are some of the spectrum of options you have. You have control over how to proceed and what to build, but RSS DreamFeeder tries to guide you along the way. For example, if you select iTunes Podcast as the type of feed you would like to create basic setting about which elements are needed, which format to use for the feed, and extra fields like iTunes ID are populated or added to the feed.

We have collected together the most important choices you will make in hopes of guiding you through those choices:

We also have a few scenarios outlined here as well to walk you through a few examples


Edit: Basic or Advanced

Across the topof the edit dialog box is a tab bar with both Basic and Advanced tabs. Basic is intended to walk you through the decisions you have to make with next and previous buttons, while Advanced has a list of Categories that you may navigate to provide the relevant information. The choice is one of your preference and comfort. In the beginning you may choose to do one and then migrate to the other later. The settings are transparent between the two interfaces, though Basic doesn't have as many options as Advanced or some settings may appear in the Basic interface but are more extensive in the Advanced interface. For example: iTunes ID is only in the Advanced interface.



Edit: Manual or Automated

Another important decision to make is how your feed will be updated. Do you want to manage the feed by hand or do you want to have the content automatically generated from your files? The setting for this comes later (in Content Settings in Basic or Feed Settings in Advanced), but it is an important configuration issue and should be carefully considered.

Manual feeds have the advantage of being updated with only the content you are looking to include. Manual feeds are best for uses like podcasts, photocasts, or where your content is not highly consistent from page to page or only updated occasionally.

Automated feeds are best for collecting content from pages that are formatted the same, from template-based pages, and from websites where there are many pages to manage and many entries to add to the feed on a regular basis. Automate feeds can also be a handy way to convert a single HTML page with multiple entries (like a "What's New" page) into an RSS feed. The key thing to managing an effective automated feed is building on consistency because you'll be configuring the feed to identify content based on where it is or what it looks like (style sheet).

Once configured, all you should have to do for an automated feed is periodically process the feed. Processing the feed collects content from new files and puts that content into the feed. Usually the best method is to updating your website and then once the site files are completed process the feed. More details about Processing Feeds is in the section on Processing Feeds.

Of course RSS DreamFeeder is designed to be flexible -- so when entering content manually there is a button for importing from a file that leverages all of the advantages of the file processing engine. And if you're building automated feeds you can still edit any entries by hand after they have been included in the feed.


Edit: Types of Feeds

When building a feed using the Basic interface the first decision you have to make is what kind of a feed you want to create. There are actually three decisions you have to make to decide what type of a feed you want (and three menus in Advanced under Feed Settings): what kind of content do you want to include in your feed; RSS or Atom format; and what version of those formats to use. In the Basic interface these decisions control the content you are presented to edit.

Basic Types of Feeds

  1. RSS Text Feed
    RSS 2.0 Text Feed
  2. Atom Text Feed
    Atom 1.0 Text Feed
  3. iTunes Podcast
    iTunes 1.0 Podcast
  4. iTunes Videocast
    iTunes 1.0 Videocast
  5. iPhoto Photocast
    iPhoto 1.0 Photocast

Advanced Types of Feeds

  1. Text Feed
  2. Podcast
  3. Photocast
  4. Videocast
  5. Documentcast

Advanced Feed Formats

  1. RSS
  2. Atom
  3. iTunes
  4. iPhoto

Advanced Version

  1. RSS: v 0.9; v 1.0; v 2.0
  2. Atom: v 0.3; v 1.0
  3. iTunes v 1.0
  4. iPhoto v 1.0

All types of feeds can be created using either Manual or Automated methods outlined in the previous section.


Edit: Feed Descriptives

RSS DreamFeeder provides many fields for describing your feed. These fields are optional except for Title and Description, which are required elements of any RSS feed. The more descriptive information you provide, the easier it is for search engines and aggregators to find, organize, and present your content to readers. In the Basic interface these fields are spread across the first two screens (Name and Type, Optional Info). In the Advanced interface they are collected together in the Description panel.

Fields:
Please note: all fields are included as content in all feeds if at all possible --often through extensions to the basic RSS format. Some fields have special uses in particular formats and those uses are noted here.

  1. Title (Required)
    The title of the RSS feed
  2. Subtitle (Advanced Only)
    The subtitle of the RSS feed -- special use in iTunes feeds because they have room for both a subtitle and a description
  3. Description (Required)
    The description of the RSS feed -- special use in Atom feeds as a subtitle (subtitles are used as additional content)
  4. Image
    The image used when displaying the rss feed
  5. Keywords
    The keywords used for searching for this feed in iTunes and other aggregators. Note: iTunes specs specifically state that you should only include words that are not in your description.
  6. Category & Subcategory
    The category and subcategory used to identify the content -- particularly important to iTunes feeds -- included as keyword content elsewhere.
  7. Rights
    The copyright message you would like to include with your feed
  8. Author
    The name of the author of the feed (your name)
  9. Author Email
    The email address of the author of the feed (your email address)
  10. Webmaster Email
    The email address for the technical contact for this feed



Edit: Feed Settings

Feed settings control the format of the feed and how the feed is processed along with additional information about the feed that is used for identification (iTunes ID or Explicit). Because the first screen in the Basic interface (Name and Type) already determined the format for the feed there are many fewer interface elements than the Advanced interface (Feed Settings). The primary settings of interest here are Content Source and Update Method. These fields are how you define where the content for your feeds will be pulled from. Manual means that content must be entered by hand in the Content tab (now visible at the top of that dialog). Files will pull content from files, and those feeds will be locally processed (other processing methods may be added in the future). For more on the decision between manual and file/local processing see the section on Manual or Automated feeds.

Fields:

  1. Content Source
    The place where the content come from. Choices are Manual or Files.
  2. Update Method
    The way the feeds are updated. Choices are Manual or Locally Processed.

Additional Fields in the Advanced interface

The advanced interface provides more specific control over formats and versions as well as controlling the maximum number of entries, lifetime, etc.

  1. Type
    What kind of a feed this is
  2. Format
    What format to use
  3. Version
    What version of that format to use
  4. Language
    What language your feed will be identified as -- defaults to the current language encoding for Dreamweaver
  5. Max Entries
    The maximum number of entries/stories allowed in your feed -- no maximum is required but it keeps the file form getting too large
  6. Lifetime
    The amount of time a caching server should wait before checking for new content, measured in minutes
  7. iTunes ID
    The ID string that Apple gives you after you have submitted your feed for inclusion in the iTunes podcast directory -- optionally used when building links to your feed and so Apple can track how popular your feed is
  8. Explicit Content
    The flag that identifies your content as explicit in iTunes -- required by Apple



Edit: Site Settings

Site settings are important to RSS feeds because all links have to be converted from relative links to full URLs throughout the entire RSS feed. RSS Dreamfeeder will begin all new feeds by copying whatever settings you already have defined in Dreamweaver, so you may not have much to enter here. The Basic interface only asks for domain name of your website and can figure out the rest. At a minimum the domain name is required.

Additional Fields in the Advanced interface

The advanced interface provides two uneditable fields (Site and Site Root) that are matched to the settings you have defined for the current website and two additional editable fields (Testing Base and Alternate Root) that are used for building links in special use scenarios

  1. Site (uneditable)
    The name of your website -- matches Dreamweaver site config
  2. Site Root (uneditable)
    The local path to the root of your website -- matches Dreamweaver site config
  3. Base URL
    The url of your website -- used as the base for all the links
  4. Testing Base
    The url of the testing server
  5. Alternate Root
    This is a rare exception, but some people have websites where one of the directories within the site is actually the root of the site externally -- for example a directory called "http" contains all the websites files and maps to "http://www.site.com". Select the directory as the alternate root so that links will be built properly.

 



Edit: Summarizing Sources

Specify what parts of the website the processing engine will examine to collect content for your feed. You may choose to examine the entire website, a particular directory within the website, or just one file within the website (good for blog-style content). If you specified a specific directory or file you must provide the path to it. Click the folder icon to the right and select the directory or file that you would like to summarize. If you specified a specific directory you may choose to include or exclude its subdirectories by checking the Subdirs checkbox. Finally you may choose when to capture file changes -- only when a file is created or whenever it is modified.

Fields:

  • Summarize
    What to summarize -- the Whole site, a specific Directory or a single File
  • Path
    The local path to what you want to summarize (leave it blank for the whole site)
  • Include Subdirs
    If you have chosen a directory or the whole site, do you want to include the subdirectories in your search
  • Capture on
    When to capture file changes -- file creation or file modifications

Additional Fields and Features in the Advanced interface

The advanced interface provides an array of extra fields for more precise control over what files to examine for including in the RSS feed. The more information you provide here the smaller the set of files that must be checked and the faster processing will be. Except when specifying that the pages must be a certain template, which adds extra processing time because the files must be opened and read to see if they belong to a particular template.

  1. Directories
    The key difference between specifying files and directories in the basic interface and in the advanced interface is the ability to specify multiple files or directories to search for content. You can create an entire list of places you'd like to search while still avoiding areas of your website that are not relevant to the feed you are building.
    Caution: If you are switching between basic and advanced interfaces be aware that the basic interface does not support multiple directories or files. If you click "Next" in basic you are accepting the settings as they are displayed and your list of multiple directories will be trimmed to just the first one.
  2. Retain Entries
    When generating content for the feed older entries remain in the feed until enough new content is collected to push the old content beyond the maximum length of the feed. This old content is retained even if the source of the content is deleted. If you choose to turn off this setting all entries within the feed are checked against their original sources and if the source is missing/deleted the entry associated with that source is also deleted.
    For summaries of single pages the entries are compared with the content on the page itself. When the content is removed from the source page it will be removed from the feed when it is processed next.
    For summaries of directories or sites, the link is what is looked at. If the link points to a file within the website and that file is missing/deleted the entry will be removed from the feed.
    Caution: This setting must be used with care because it is the only setting that will automatically remove content from your feed.
    Retained content is useful for pages that are like blogs, where the content that was on the page yesterday is still important today, but is simply not on the page because there is no room for it. Also, for sets of files that may not be available at the time of processing (especially when processing at a later date) retaining the content means avoiding accidental deletion of feed entries. You'll be better off using a reasonable Max Length for the feed and let time and content do the maintenance work. You can always get an entry back by going to the Content tab and importing the source page. Also, if you ever want to delete an entry from your feed you can simply go to the Content tab, select the entry to delete and press the delete/minus button at the top of the Entries list.
  3. Ignore MMTemps
    Ignore Macromedia temporary files. If you choose to ignore Macromedia Temp files (which is recommended) then certain directories and their contents are ignored. If you name your files/directories similarly to these they will be ignored as well.
    RSS DreamFeeder uses these names to indicate temp files and ignores their content:
    Anything that contains"MMtmp" or "MMTMP"
    Anything that begins with "_mm" or "_MM" or "TMP"
    Anything that is named "MMWIP"
  4. Restrict File Types
    The restrict file types option specifies what kind of files will be searched for. Specifically, this allows you to control what files are included by their file extension. By default only HTML files are included. But you can easily add more file types or modify it to include PHP or ASP pages by clicking on the File Types button and selecting which file types you would like to include. You may also add custom file types by clicking on the plus button above the others list.
    Files type strings are intended to be flexible definitions of the file extension used for a file type, so they may include settings that define optional text (using parenthesis "()") or lists of text options (divided by pipe "|"). For example HTML files may have "htm" or "html" extensions. Because the "l" is optional the definition looks like "htm(l)". Another example might be PHP files which may have "php", "php3", "php4", or "php5" extensions. Because the 3, 4, and 5 are choices they are divided by pipe character and since the whole group is optional it is included in parenthesis -- like this "php(3|4|5)".
    Caution: All means all. All file types will include GIFs JPEGs TXTs XMLs RSSs -- anything that existing in the directory and matches previous restrictions. Use this feature with care.
  5. Using Templates
    If you have templates defined for your website this can be a really useful way of deciding which files to include in your RSS feed. For example, if your website is large with many departments with their own directories and each has its own press releases section. If you built a template that everyone uses for press releases you could scan the whole site and pull just files that use the press releases template and you could build a single consolidated RSS feed from that. This opens a whole new door to organizing RSS feeds by page uses.
    To select which templates to restrict your feed to press the Select Templates button. You will be presented with a dialog box that lists all the templates defined for your websites. Select a template from the left column and use the arrow button in the middle to add it to the right column.
  6. Match File Name
    You may also choose to restrict files for your website to have a specific naming convention. Match File Name allows you to specify what to look for in a file name. Specify a what to match and then choose how it will match that text. Your options are Contains, Begins With, Ends With, Wildcards, and Regular Expression. Contains will match the text anywhere in the file name. Begins With and Ends With look at the start and the end of the file name. Wildcards can use ? to indicate any single character and * to indicate any number of characters. Regular Expression uses standard regular expression syntax for matching the file name (see the Regular Expression Reference for more information)



Edit: Feed Content

Once you have provided sufficient information for a feed to be defined the Content tab will appear at the top of the dialog box. The Content tab provides you with a direct method for editing the content of your feed. Feed entries are listed on the right side by headline. To add or delete feed entries use the plus and minus buttons at the top-right of that list. Fields on the right allow you to directly edit the content of your RSS feed.

Fields:
Please note that you may not see all of these fields. The fieldset changes based on your previous choices of feed type or settings made in the Elements panel of the Advanced interface (for more see the section on Feed Elements)

  1. Headline
    The headline (also called title) of the entry
  2. Author
    The name of the author of this entry
  3. Story
    The story (also called description) of this entry
  4. Keywords
    The keywords for this entry so search engines can find your content
  5. Date
    The date for this entry -- feeds are organized in reverse chronological order
  6. Link
    The url of the full story or complete content that this entry summarizes
  7. Enclosure
    The url of the content to enclose -- for podcasts that would be the audio file -- for photocasts that would be the full-resolution image
  8. Thumbnail
    The url of a small thumbnail graphic used when photocasting
  9. Extra Elements
    When extra custom elements are defined they can be directly manipulated here

Buttons:
The interface also provides the following buttons for controlling additional commands

  1. Import
    Import a file into the feed (more in the section called Importing Content)
  2. Edit as a Document
    Edit this field's content as if it were a document in Dreamweaver (more in the section called Editing Stories)
  3. Calendar
    Allows you to edit the date using a calendar interface
  4. Status: HTML or Text or
    Strictly speaking this is not a button but a status indicator to let you know if the content is HTML or plain Text

 



Edit: Feed Elements

When building feeds with the Basic interface your selection of type of feed determines which elements will be used in your feed's entries. Through the Advanced interface you can control which elements are included (though defaults are set based on feed type). The Elements panel of the Advanced interface provides you with a set of checkboxes where you may select the elements you want.

Elements:

  1. Headline
    The headline (also called title) is the only truly required element
  2. Story
    The story (also called description) to include
  3. Link
    The url of the full story or complete content that the entry will summarize
  4. Date
    The date for the entry-- feeds are organized in reverse chronological order
  5. Author
    The name of the author of the entry
  6. Enclosure
    The url of the content to enclose -- for podcasts that would be the audio file -- for photocasts that would be the full-resolution image
  7. Thumbnail
    The url of a small thumbnail graphic used when photocasting
  8. Story Image
    The story image is an image that can be added to the story content when it is processed. This allows you to include an extra graphic that might not appear within the story summary in the layout but can be extracted from other locations within the file. This content is placed directly into the story itself, so it doesn't have a corresponding element in the Content tab.
  9. Keywords
    The keywords for the entry so search engines can find your content

Extra Elements
RSS DreamFeeder was designed to be highly flexible -- including being able to create new XML content. These Extra Elements are stored along with definitions of how to create the XML tags. You can find more information in the section on Custom Elements.

Namespaces
When creating extra XML elements those elements reference a specific definition stored as a Namespace. You can add namespaces to what DreamFeeder already includes by using the interface here. This is essential if you are creating your own custom elements so that your RSS feed will be valid XML. You can find more information in the section on Custom Elements.



Edit: Custom Elements

Custom XML elements can be added to your RSS feed by using the interface provided in the Elements panel of the Advanced tab. Custom elements are available to both manual and automated feeds. As you add your own elements and Extra Elements interface becomes available in the Content tab, and if you are building an automated feed the extra element also becomes available in the Advanced list so that you can specify how to extract content for that element.

To add XML elements press the plus button above the Extra Elements list. You will be presented with the a dialog box in which you can provide all the details needed to create the additional XML code as well as specifying how to incorporate the content that is extracted from the files.

There are essentially two different tagging structures that you are likely to need to build. They are based on where the content is placed within the XML tags. The first places the content between open and closing XML tags. The second place the content as an attribute within the XML tag.

Option 1: As Content

The goal of this first option is to build a result that looks like this:

<xmltag>CONTENT</xmltag>

Where xmltag is a tag that you are defining and CONTENT is the matched content from you files.Use the name of the tag you are trying to generate in the Tag Name field. If you wish to include attributes you may include them as name/value pairs in the Fixed Attributes list. Then select Within the Tag from the place content menu. You can see the example here which creates the following XML when generated.

<dc:title>CONTENT</dc:title>

Option 2: Within an Attribute

The goal of this second option is to build a result that looks like this:

<xmltag attr="CONTENT" />

Where xmltag is a tag that you are defining and attr is the attribute that you are assigning to contain the content that is the matched from you files.Use the name of the tag you are trying to generate in the Tag Name field. If you wish to include other attributes besides the one that will contain the content you may include them as name/value pairs in the Fixed Attributes list. Then select Within an Attribute from the place content menu and provide the name of the attribute in the Attribute field. You can see the example here which creates the following XML when generated.

<itunes:enclosure type="audio/mpeg" url="CONTENT" />

Namespace

Of course if you are building custom tags you need to define those tags as a part of the XML document. XML namespaces allow you to provide a reference to the DTD (a url) that is implemented with that prefix within the document. For example the dc prefix is associated with Dublin Core tags like the Title tag shown above (that's why its dc:title). Add namespace by clicking on the plus button at the top of the Namespaces list. You will be presented with a dialog box where you can specify the Namespace prefix and the URL to the DTD. You can see the example here which creates adds the following namespace code to the XML when generated.

xmlns:dc="http://purl.org/dc/elements/1.1/"



Edit: Content Extraction

If you have defined a feed that extracts content from files then the Advanced interface allows you to specify how. Specifications for content extraction must be provided for each of the elements you have included in your feed.

The content extraction engine provides three different matching methods: by Tag; by Template Region; and by Regular Expression. Each match type is configured differently and the right tool mostly depends on what you want to accomplish.

Test your settings using the green Test button at the top right of the dialog (more about Testing).

Match Type: Tag

Matching by tag looks for matching tags based on their name, styles (class), or attributes and extracts content from them. If you are considering matching by tag you might want to start by using the Content Sampler which identifies pieces of pages based on their names, styles, etc. and captures those settings for use within DreamFeeder (more about the Content Sampler).

Fields:

  1. Tag
    The tag that will be searched for
  2. Location
    Where to find the content based on other previous matches or template region
  3. With Attribute
    Refine the search by specifying that this tag have additional attributes, such as a particular name, id, or class. Provide a matching string in the text box.
  4. Extract
    Specify what content to use. If you want the content between the open and close tags specify Tag Content and leave the text field empty. If you want to extract the contents of an attribute of the tag specify Attribute Value in the popup and provide the name of the attribute in the text field. To match multiple instances of a tag specify All Matching Tags. However, this only extracts the tag contents.
  5. Max Length
    You may also specify the maximum length of the story in characters or words. If you do not strip HTML the tags are included but not counted as part of the measurement.
  6. Strip HTML
    You may optionally strip any HTML formatting tags by checking the Strip HTML checkbox. Some elements require that any HTML be removed (like Headline)

 

Match Type: Template Region

If you build websites based on templates then this is a really handy tool to collect content from regions that you have defined within your layout. This means that you can readily add RSS feeds to your website and extract content that your authors have identified for you by placing that content within the defined regions of your templates. No need to worry about recycled IDs or shared style sheets.

Fields:

  1. Region
    The name of the template region to extract content from
    Note: only the name of the region is used, even though it is listed by template and name, so any templates that share the same names for regions can be extracted from. If you want to restrict your feed by template see the section on Summarizing Sources.
  2. Extract
    The only option here is Content -- all content within that region is extracted
  3. Max Length
    You may also specify the maximum length of the story in characters or words. If you do not strip HTML the tags are included but not counted as part of the measurement.
  4. Strip HTML
    You may optionally strip any HTML formatting tags by checking the Strip HTML checkbox. Some elements require that any HTML be removed (like Headline)

 

Match Type: Regular Expression

Regular Expression pattern matching has now been added to the engine as well. If you are not already familiar with regular expressions they are patterns that can be searched for within a file by writing strings of text that include special escape sequences like "\d" (for digits). For more on regular expressions see the Regular Expression Reference.

Fields:

  1. Expression
    The regular expression match string
  2. Location
    Where to perform the regular expression match based on other previous matches or template region
  3. Extract
    Specify what content to use.
    Full Match retrieves the complete matching string (equivalent to $0)
    Subexpression is the id number of the parenthetical submatch (only supports 0-9)
    Evaluate Expression is an expression using $0-$9 within the text as replacement strings
  4. Max Length
    You may also specify the maximum length of the story in characters or words. If you do not strip HTML the tags are included but not counted as part of the measurement.
  5. Strip HTML
    You may optionally strip any HTML formatting tags by checking the Strip HTML checkbox. Some elements require that any HTML be removed (like Headline)

 

Match Type: Fixed Value

The Fixed Value is a text string that is not matched, but is used as the content for the field every time an entry is generated. This is useful for fields like "Author" where you might want to simply use the same thing for every entry. I point out Author here because it is a required element for ATOM feeds (so you'll need it if you create them) and is something that might not actually be in the source content anywhere.

Fields:

  1. Value
    The text you want to use for this field.

 

Special Match Types

Links and Dates have special match types beyond the basic outlined above to allow for more options than simply extracting content from the file.

Links:

  1. Current Page
    Gets the url of the current page and uses it for the link
  2. Current Location (Anchor)
    Gets the closest anchor it can find to the current content that is matched and uses that as the link -- useful for long pages or blog-style multi-entry pages
  3. Headline's HREF Attribute
    If the headline is extracted from a link then the link can point to where the headline's HREF pointed to

Dates:

  1. Dreamweaver Datestamp
    Use the date from a datestamp on the page
  2. Current Page Modification Date
    Use the current page's file modification date
  3. Linked Page Modification Date
    Use the linked page's file modification date -- if link doesn't exist or is on another webserver it will use today's date
  4. Enclosure's Modification Date
    Use the enclosure's file modification date -- if enclosure doesn't exist or is on another webserver it will use today's date
  5. Current Page Creation Date
    Use the current page's file creation date
  6. Linked Page Creation Date
    Use the linked page's file creation date -- if link doesn't exist or is on another webserver it will use today's date
  7. Enclosure's Creation Date
    Use the enclosure's file creation date -- if enclosure doesn't exist or is on another webserver it will use today's date



Testing Your Extraction Settings

On any panel where you can configure extraction settings you will see this Test button. Pressing this button will bring up a dialog box where you may specify the file to sample from (it remembers the last sampled file for each website project). Only the extraction settings you were building on the current panel are tested and the results of that extraction are placed in the Results box when you click the Test the Match button. To return to your configuration press the Done button. This can be particularly useful when building more complex matches like Regular Expressions.



The Content Sampler

On any panel where you see this Content Sampler button you can launch the Content Sampler and use it to define the extraction settings for your feed. The idea is that it is easier to point to something and say "Give Me That" rather than figure out what HTML codes are used behind the scenes. This isn't to say that you can't configure the extraction yourself, but rather that this can provide you with a nice starting point and is more than sufficient for basic feeds.

When you press the Content Sampler button your feed will be temporarily saved and the Edit dialog will be dismissed. The RSS DreamFeeder floating window will now change its display to show the Content Sampler. Once in this mode you can open any files you want, highlight the content you would like to include in your RSS feed and sample it. After completing your sampling you can return to the Edit dialog by pressing the Done button in the bottom right corner of the RSS DreamFeeder floating window.

Using the Content Sampler

The Content Sampler lists the Content elements your feed is defined to use and identifies if a match (or Sample) has been defined for that Content. Samples identify the tag, id, class or template region for that item. Samples with a dash "-" have not been defined yet.

  1. Choose the Content from the list
    If there is a Sample definition your text selection within Dreamweaver will change to highlight that element
  2. Select the text you want to identify within your Dreamweaver document
    This is the text you want to identify to include in your RSS feed
  3. Press the Sample button to change the definition for your content
    (if its not a unique sample but you want to use it anyway hold down the option or alt key when you press the button)

Sometimes when sampling content the selected source doesn't have enough identifying information to make it a unique sample. When this happens you will see a caution message that says the Sample is Not Unique and the sample's settings will not be captured. You can force the sample to be selected by holding down the Option or Alt key on the keyboard and pressing the sample button. You may also want to change the preferences for the content sampler to make it more aggressive.



Importing Content

At the top right of the Content tab you will see the Import button. This button launches the Import dialog box which will extract content from whatever file you specify. If your feed is a file-based feed with matches already identified then your matches are applied to the file you have selected and the resulting content is imported into your feed. If your feed is a manual entry feed then your file will be opened and the Content Sampler will be launched so that you can identify what content to extract from the file (see the section on the Content Sampler). If you have done that step before then you may optionally use your previous element identifications.

Feeds that are configured to be file-based but manually updated must use the import button to bring files into the feed.



Editing Stories

In the content tab next to the Story field you will see the Entry Edit button. This button will take the content from within the Story field and create a new document to allow you to edit that content as a document within Dreamweaver. This is particularly handy for HTML formatted or long stories as this makes it particularly easy to work with that content.

When you press the Entry Edit button your feed is saved in a temporary file and the Edit dialog box is closed. The contents of your story field are placed into a new Dreamweaver document and brought forward for you to edit. The RSS DreamFeeder floating window displays that you are in Entry Edit mode and that you are working on the Story element for your feed. When you are done editing the document press the Done button (no need to save or close the file) and you will be returned to the Edit dialog. Whatever changes you made to your story have now been imported into the feed entry that you were editing.



Processing Feeds

Processing feeds applies your match settings to the files that you have configured your feed to summarize. In the RSS DreamFeeder floating window you will see a number of Files to Check listed next to your feed. This indicates how many files need to be examined for new content. When this number is 0 that means there are no new files to include (if you're not sure its right try the Refresh button). When you press the process button it checks again for new files and if there are any it will apply your match settings to those files. If there is no match or there is no Headline (the only true required element) then the file is omitted. Files are then checked against the existing set of entries in the feed to avoid duplicates (compared by Headline and Link). Finally all remaining new matches are included in the feed and the feed is trimmed to the Max Entries length.


How To: A Basic Manual RSS Text Feed

The feed we're going to build is a promotional feed where special discounts on products can be announced periodically. This will be a Manually edited RSS text feed that we will use the Basic interface to build.

The first step in the basic interface is to select the type of feed (RSS Text Feed) and to provide the Title and Description of the feed. After entering that content we click the next button to proceed to the next panel.

The second step is to provide additional descriptive content about the feed. We can provide as much or as little of this information as we like, but the more we fill in the easier it will be for aggregators and search engines to find and organize the content.

The third step is to provide the domain name of the website. This is so the links can be built properly as full urls so they will work on no mater where your content is republished.

The fourth step is decide how we want the content for this feed to be built. We are creating a feed where we are typing in the content by hand so we'll select Manual.

Now that these configuration issues have been completed we are told we can edit the content in the Content tab. We can either press the Edit Feed Content button or simply click on the Content tab.

In the Content tab we can mange the feed's entries yourself and build as many stories as we like. To add a story we click the plus button at the top of the Feed Entries list. Now we simply edit the fields to contain the content we want, with a headline, a story and a link to the product's page.

The story might be simple to begin with, but as the icon to the left of the field indicates, it can contain HTML (looks like little HTML brackets) so we'll type in HTML or better still we can press the Edit button to the left of the field (it looks like a pencil) and the content of the story field will be used to create an HTML document that we can edit just like any other document in Dreamweaver. We'll make some of the text bold and red.

Now we can save our editing as we normally do or we can just press the done button in the RSS DreamFeeder floating window, which is telling us that we are in Edit Entry mode and that we are editing the Story. To return to the edit dialog you have to press the done button.

The done button returns us to the Edit dialog and imports the HTML code from the web page we edited into the story field.

Finally we can save our feed within our website and then try it out in an RSS reader like Safari. I like to use Safari for testing because I can just drag the file I created into the window.

 


How To: A Basic Manual iTunes Podcast

Podcasts are the same basic idea as our previous example but instead of linking to an HTML file we are going to enclose an audio file (MP3). So lets build a podcast by going through the same steps.

The first step in the basic interface is to select the type of feed (iTunes Podcast) and to provide the Title and Description of the feed. After entering that content we click the next button to proceed to the next panel.

The second step is to provide additional descriptive content about the feed. We can provide as much or as little of this information as we like, but the more we fill in the easier it will be for aggregators and search engines to find and organize the content. The is particularly important if you plan to submit your podcast for inclusion in the Apple Podcast Directory.

The third step is to provide the domain name of the website. This is so the links can be built properly as full urls so they will work on no mater where your content is republished.

The fourth step is decide how we want the content for this feed to be built. We are creating a feed where we are typing in the content by hand so we'll select Manual.

Now that these configuration issues have been completed we are told we can edit the content in the Content tab. We can either press the Edit Feed Content button or simply click on the Content tab.

In the Content tab we can mange the feed's entries yourself and build as many stories as we like. To add a podcast episode we click the plus button at the top of the Feed Entries list. Now we simply edit the fields to contain the content we want, with a headline, a story and we enclose the audio file for this episode. Now lets save the feed.

We can try this out in a new reader to see how the feed looks.

But more importantly we want to use this feed in iTunes. Please note: it is very important before testing in iTunes that you upload the feed and all related audio files to your webserver. Now in iTunes we'll select the Advanced menu and select Subscribe to Podcast. Now we provide the url of the podcast.

The feed we created now appears in the Podcast list in iTunes.

It is very important to test your podcast in iTunes before submitting it to be included in the iTunes directory.


How To: An Advanced Automated RSS Text Feed From Multiple Pages

So lets say there is a directory containing a listing of jobs called the Job Bank where each job listing was in a independent HTML file. We want to collect content from each of those file, and as long as they are formatted consistently we'll be able to do it. This is where template-based websites really can be outstanding.

Of course, we begin by creating a new feed. When the dialog is displayed we see the basic interface, but we'll use the advanced interface so we need to change to it by clicking on the Advanced tab. The first panel of the advanced interface allows us to provide descriptive content for the feed. The only required fields are Title and Description, but the more information we provide the better. To navigate in the advanced interface we make selections from the left side Category list. Navigation is not required to be sequential but we'll go through it that way to keep things simple. So lets go to the next panel by selecting Feed Settings from the Category list.

In Feed Settings we can decide what type of a feed we are building (Text Feed) and what file format we want to use (RSS 2.0). But most importantly we can define that we are collecting content from Files and that we want the feed to update when we press the Process button (Local Processing). Notice that when we select Files as the source of the content many more panels become available to us. Now we need to provide Site Settings.

Under Site Settings we provide the Base URL -- the url of the remote website where are files will reside. This is important because your feed could be republished on any number of different websites and you want the links to still work, so they have to be full links. Mostly, this information is copied from your existing Dreamweaver settings, but if you didn't provide them in Dreamweaver then you'll have to enter it here yourself. Once entered we'll move on to Summarize.

Under Summarize we will define where the files reside within the website that we would like to extract content from. We're using the content of a directory so we select Directory and then press the plus button to the right of the list so we can define which ones we'll use. Selecting the Job Bank directory will do the job. We don't want to include subdirectories, we want to exclude temp files, we're just looking for HTML files (the default) and we're not restricting the template or the file names, so most of what we have to do is done. The last change here is that we only want to capture files on Creation, not modification. This assures that new job files are included, but old job files don't get processed again. After we have configured this we can move on to Elements.

Under Elements we can decide which elements of the feed we are going to include. The initial settings here are based on the feed type selection we made in Feed Settings. However we can choose to include or exclude any elements except for Headline. So for this feed we're going to exclude Author so lets uncheck that and we'll include Keywords to help make our jobs more easily searchable. Now we could proceed screen by screen to manually enter the settings for each of the elements we are including, but we can also use the Content Sampler to build the settings for us, so that is what we are going to do. Press the Content Sampler button at the top right of the panel. This will save a temporary copy of the feed, close the Edit dialog, and launch the Content Sampler in the RSS DreamFeeder floating window.

The Content Sampler has a list of Content elements that we want to be able to extract from our files. Samples with a dash "-" have not been defined yet. We are going to Sample the elements we want to include by selecting the entry in the Content Sampler, highlighting text from a file that we want to sample, the pressing the Sample button in the top left of the floating window.

So we'll open one of the file we want to sample from. Select Headline from the content sampler. Highlight the headline text within our file and press the sample button to select that text.

The content sampler now shows the sample as an H3 tag (or whatever you sampled). Repeat the process for your story. In this case we have a template and we want to select the entire template region so highlight the whole thing, select Story and press the Sample button. The other elements don't exist on the page itself so we'll do the job manually back in the Edit dialog. The content sampler didn't do the whole job, but it did get us a good start. We can press the Done button to return to the Edit dialog.

When we return to the edit dialog we come back to the same Elements panel. Lets now go to the panel for defining content extraction for Headline. You'll see that it already has the H3 tag defined, but I like to be more precise if I can be so that if the page changes and there is an H3 before this one or added to the template or something I can still use these settings. The headline was within the story, so lets restrict the location to "Within the Story". Now lets move on to Story.

The story setting from the Content Sampler are perfect so we will leave them alone. On to Link.

Link's default setting is to use the location of the current page that we are extracting from. That is exactly what we want to do here -- have the link point back to the original file that we are pulling content from. So lets not change that either. On to Date.

Now Date defaults to the Current Page's Modification Date, which is useful, but not really what we're after. What we really want is the page's Creation Date, so we'll change the Match Type to be Current Page Creation Date. OK, on to Keywords.

Keywords are the one place where we'll have to do some work. We want to extract content from a META tag -- <meta name="keywords" content="value, value, value">. The specific meta tag uses name as its identifying attribute and content to contain the stuff that we want to include in our feed. So to configure this we'll set Match Type to Tag, enter "meta" as the Tag we'll match, use With Attribute to find a NAME equal to "keywords" and Extract the Attribute Value of the "content" attribute. Once that is configure lets save the feed someplace within the website as "jobs.rss".

Once save, the feed will now be listed in out RSS DreamFeeder floating window and it will display how many files need to be checked for content. Those file must be examined for content and the content must be extracted and placed into our feed. We call that Processing the feed, and we do it by pressing the Process button.

While processing you will see the a dialog box that informs you about what is going on.

Finally, when the processing is complete we can try the feed out in our news reader.

 


How To: An Advanced Automated RSS Text Feed From a Single Page

So lets say there is a file we're using as a What's New page where we include headlines and links from all over the website. We want to collect content from each of the entries on this page, and as long as they are formatted consistently we'll be able to do it. This is where template-based page with a repeating region works well, though any page that repeats formatting over and over can be used to accomplish this task just as well.

Of course, we begin by creating a new feed. When the dialog is displayed we see the basic interface, but we'll use the advanced interface so we need to change to it by clicking on the Advanced tab. The first panel of the advanced interface allows us to provide descriptive content for the feed. The only required fields are Title and Description, but the more information we provide the better. To navigate in the advanced interface we make selections from the left side Category list. Navigation is not required to be sequential but we'll go through it that way to keep things simple. So lets go to the next panel by selecting Feed Settings from the Category list.

In Feed Settings we can decide what type of a feed we are building (Text Feed) and what file format we want to use (RSS 2.0). But most importantly we can define that we are collecting content from Files and that we want the feed to update when we press the Process button (Local Processing). Notice that when we select Files as the source of the content many more panels become available to us. Now we need to provide Site Settings.

Under Site Settings we provide the Base URL -- the url of the remote website where are files will reside. This is important because your feed could be republished on any number of different websites and you want the links to still work, so they have to be full links. Mostly, this information is copied from your existing Dreamweaver settings, but if you didn't provide them in Dreamweaver then you'll have to enter it here yourself. Once entered we'll move on to Summarize.

Under Summarize we will define where the file resides within the website that we would like to extract content from. We're using the content of a single file so we select File and then press the plus button to the right of the list so we can define which ones we'll use. Selecting the index.htm file will do the job (or whatever your file is named). All the other settings don't matter because we are specifically targeting a single file. After we have configured this we can move on to Elements.

Under Elements we can decide which elements of the feed we are going to include. The initial settings here are based on the feed type selection we made in Feed Settings. However we can choose to include or exclude any elements except for Headline. So for this feed we're going to exclude Author so lets uncheck that. Now we could proceed screen by screen to manually enter the settings for each of the elements we are including, but we can also use the Content Sampler to build the settings for us, so that is what we are going to do. Press the Content Sampler button at the top right of the panel. This will save a temporary copy of the feed, close the Edit dialog, and launch the Content Sampler in the RSS DreamFeeder floating window.

The Content Sampler has a list of Content elements that we want to be able to extract from our files. Samples with a dash "-" have not been defined yet. We are going to Sample the elements we want to include by selecting the entry in the Content Sampler, highlighting text from a file that we want to sample, the pressing the Sample button in the top left of the floating window.

So we'll open one of the file we want to sample from. Select Headline from the content sampler. Highlight the headline text within our file and press the sample button to select that text.

The content sampler now shows the sample as an A tag (or whatever you sampled) that is classed HPStoryTitle. Repeat the process for your story text, the date (yes dates can read from the text in the file), and the link (which is the headline so just select that again).Then we can press the Done button to return to the Edit dialog. When we return to the edit dialog we come back to the same Elements panel. Lets now go to the panel for defining content extraction for Headline. You'll see that it already has all the settings from the Content Sampler, including the restriction by repeating Template Region. We don't have to change anything so we can move on to Story.

We can see that Story is also ready to go -- so on to Link.

Link's settings are all done by the Content Sampler so there's nothing to change. On to Date.

Now with Date, the settings are right, but you do need to be careful about the content of your feed. If the text can not be recognized as a date it will not be included in the feed.

Once save, the feed will now be listed in out RSS DreamFeeder floating window and it will display how many files need to be checked for content -- for feeds of this type there is only ever 1 file, the file we defined as the source. The file must be examined for content and the content must be extracted and placed into our feed. We call that Processing the feed, and we do it by pressing the Process button.

While processing you will see the a dialog box that informs you about what is going on.

Finally, when the processing is complete we can try the feed out in our news reader.

.


Tutorials

There are several tutorials available on the RNSoft website at http://www.rnsoft.com/products/rssdreamfeeder/content/tutorial/


Regular Expression Reference

Character Meaning
\

For characters that are usually treated literally, indicates that the next character is special and not to be interpreted literally.

For example, b matches the character 'b'. By placing a backslash in front of b, that is by using \b, the character becomes special to mean match a word boundary.

-or-

For characters that are usually treated specially, indicates that the next character is not special and should be interpreted literally.

For example, * is a special character that means 0 or more occurrences of the preceding character should be matched; for example, a* means match 0 or more a's. To match * literally, precede the it with a backslash; for example, a\* matches 'a*'.

^

Matches beginning of input. If the multiline flag is set to true, also matches immediately after a line break character.

For example, ^A does not match the 'A' in "an A", but does match the first 'A' in "An A."

$

Matches end of input. If the multiline flag is set to true, also matches immediately before a line break character.

For example, t$ does not match the 't' in "eater", but does match it in "eat".

*

Matches the preceding item 0 or more times.

For example, bo* matches 'boooo' in "A ghost booooed" and 'b' in "A bird warbled", but nothing in "A goat grunted".

+

Matches the preceding item 1 or more times. Equivalent to {1,}.

For example, a+ matches the 'a' in "candy" and all the a's in "caaaaaaandy".

?

Matches the preceding item 0 or 1 time.

For example, e?le? matches the 'el' in "angel" and the 'le' in "angle."

If used immediately after any of the quantifiers *, +, ?, or {}, makes the quantifier non-greedy (matching the minimum number of times), as opposed to the default, which is greedy (matching the maximum number of times).

Also used in lookahead assertions, described under (?=), (?!), and (?:) in this table.

.

(The decimal point) matches any single character except the newline character.

For example, .n matches 'an' and 'on' in "nay, an apple is on the tree", but not 'nay'.

(x)

Matches x and remembers the match. These are called capturing parentheses.

For example, (foo) matches and remembers 'foo' in "foo bar." The matched substring can be recalled from the resulting array's elements [1], ..., [n] or from the predefined RegExp object's properties $1, ..., $9.

(?:x)

Matches x but does not remember the match. These are called non-capturing parentheses. The matched substring can not be recalled from the resulting array's elements [1], ..., [n] or from the predefined RegExp object's properties $1, ..., $9.

x(?=y)

Matches x only if x is followed by y. For example, Jack(?=Sprat) matches 'Jack' only if it is followed by 'Sprat'. Jack(?=Sprat|Frost) matches 'Jack' only if it is followed by 'Sprat' or 'Frost'. However, neither 'Sprat' nor 'Frost' is part of the match results.

x(?!y)

Matches x only if x is not followed by y. For example, \d+(?!\.) matches a number only if it is not followed by a decimal point.

\d+(?!\.).exec("3.141") matches 141 but not 3.141.

x|y

Matches either x or y.

For example, green|red matches 'green' in "green apple" and 'red' in "red apple."

{n}

Where n is a positive integer. Matches exactly n occurrences of the preceding item.

For example, a{2} doesn't match the 'a' in "candy," but it matches all of the a's in "caandy," and the first two a's in "caaandy."

{n,}

Where n is a positive integer. Matches at least n occurrences of the preceding item.

For example, a{2,} doesn't match the 'a' in "candy", but matches all of the a's in "caandy" and in "caaaaaaandy."

{n,m}

Where n and m are positive integers. Matches at least n and at most m occurrences of the preceding item.

For example, a{1,3} matches nothing in "cndy", the 'a' in "candy," the first two a's in "caandy," and the first three a's in "caaaaaaandy". Notice that when matching "caaaaaaandy", the match is "aaa", even though the original string had more a's in it.

[xyz]

A character set. Matches any one of the enclosed characters. You can specify a range of characters by using a hyphen.

For example, [abcd] is the same as [a-d]. They match the 'b' in "brisket" and the 'c' in "ache".

[^xyz]

A negated or complemented character set. That is, it matches anything that is not enclosed in the brackets. You can specify a range of characters by using a hyphen.

For example, [^abc] is the same as [^a-c]. They initially match 'r' in "brisket" and 'h' in "chop."

[\b]

Matches a backspace. (Not to be confused with \b.)

\b

Matches a word boundary, such as a space. (Not to be confused with [\b].)

For example, \bn\w matches the 'no' in "noonday"; \wy\b matches the 'ly' in "possibly yesterday."

\B

Matches a non-word boundary.

For example, \w\Bn matches 'on' in "noonday", and y\B\w matches 'ye' in "possibly yesterday."

\cX

Where X is a letter from A - Z. Matches a control character in a string.

For example, \cM matches control-M in a string.

\d

Matches a digit character. Equivalent to [0-9].

For example, \d or [0-9] matches '2' in "B2 is the suite number."

\D

Matches any non-digit character. Equivalent to [^0-9].

For example, \D or [^0-9] matches 'B' in "B2 is the suite number."

\f

Matches a form-feed.

\n

Matches a linefeed.

\r

Matches a carriage return.

\s

Matches a single white space character, including space, tab, form feed, line feed. Equivalent to [ \f\n\r\t\u00A0\u2028\u2029].

For example, \s\w* matches ' bar' in "foo bar."

\S

Matches a single character other than white space. Equivalent to [^ \f\n\r\t\u00A0\u2028\u2029].

For example, \S\w* matches 'foo' in "foo bar."

\t

Matches a tab.

\v

Matches a vertical tab.

\w

Matches any alphanumeric character including the underscore. Equivalent to [A-Za-z0-9_].

For example, \w matches 'a' in "apple," '5' in "$5.28," and '3' in "3D."

\W

Matches any non-word character. Equivalent to [^A-Za-z0-9_].

For example, \W or [^$A-Za-z0-9_] matches '%' in "50%."

\n

Where n is a positive integer. A back reference to the last substring matching the n parenthetical in the regular expression (counting left parentheses).

For example, apple(,)\sorange\1 matches 'apple, orange,' in "apple, orange, cherry, peach." A more complete example follows this table.

\0

Matches a NUL character. Do not follow this with another digit.

\xhh

Matches the character with the code hh (two hexadecimal digits)

\uhhhh

Matches the character with code hhhh (four hexadecimal digits).

This regular expression reference table is copied from the official JavaScript documentation on the Mozilla.org website.
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Objects:RegExp

Regular Expression Eval/Replacement String

Character Meaning
\

For characters that are usually treated literally, indicates that the next character is special and not to be interpreted literally.

For example, t matches the character 'b'. By placing a backslash in front of t, that is by using \t, the tab character is used in it's place.

-or-

For characters that are usually treated specially, indicates that the next character is not special and should be interpreted literally.

For example, $ is a special character where the number following the dollar sign identifies a backreference (elements from the patern that were saved in parenthesis); for example, $1 means the first backreference. To use $ literally, precede it with a backslash; for example, \$1 returns the text '$1'.

$0

A special reference to the complete matching string -- what the entire pattern matches.

For example, if the text to match was "Ronald Anthony Northrip" and the patern defined was (\w+)\s(\w+), $0 would be the complete matching text "Ronald Anthony". $1 would be the text "Ronald". $2 would be the text "Anthony".

$N

Where N is any number from 1 to 9. It will be replaced with the backreference -- the matched pattern you put in parenthesis.

For example, if the text to match was "Ronald Anthony Northrip" and the patern defined was (\w+)\s(\w+), $0 would be the complete matching text "Ronald Anthony". $1 would be the text "Ronald". $2 would be the text "Anthony".