[177a560] | 1 | |
---|
| 2 | |
---|
| 3 | "It feeds" |
---|
| 4 | |
---|
| 5 | |
---|
| 6 | FEEDS |
---|
| 7 | ===== |
---|
| 8 | |
---|
| 9 | An import and aggregation framework for Drupal. |
---|
| 10 | http://drupal.org/project/feeds |
---|
| 11 | |
---|
| 12 | Features |
---|
| 13 | ======== |
---|
| 14 | |
---|
| 15 | - Pluggable import configurations consisting of fetchers (get data) parsers |
---|
| 16 | (read and transform data) and processors (create content on Drupal). |
---|
| 17 | -- HTTP upload (with optional PubSubHubbub support). |
---|
| 18 | -- File upload. |
---|
| 19 | -- CSV, RSS, Atom parsing. |
---|
| 20 | -- Creates nodes or terms. |
---|
| 21 | -- Creates lightweight database records if Data module is installed. |
---|
| 22 | http://drupal.org/project/data |
---|
| 23 | -- Additional fetchers/parsers or processors can be added by an object oriented |
---|
| 24 | plugin system. |
---|
| 25 | -- Granular mapping of parsed data to content elements. |
---|
| 26 | - Import configurations can be piggy backed on nodes (thus using nodes to track |
---|
| 27 | subscriptions to feeds) or they can be used on a standalone form. |
---|
| 28 | - Unlimited number of import configurations. |
---|
| 29 | - Export import configurations to code. |
---|
| 30 | - Optional libraries module support. |
---|
| 31 | |
---|
| 32 | Requirements |
---|
| 33 | ============ |
---|
| 34 | |
---|
| 35 | - CTools 1.x |
---|
| 36 | http://drupal.org/project/ctools |
---|
| 37 | - Job Scheduler 1.x |
---|
| 38 | http://drupal.org/project/job_scheduler |
---|
| 39 | - Drupal 6.x |
---|
| 40 | http://drupal.org/project/drupal |
---|
| 41 | - PHP safe mode is not supported, depending on your Feeds Importer configuration |
---|
| 42 | safe mode may cause no problems though. |
---|
| 43 | - PHP 5.2.x recommended |
---|
| 44 | |
---|
| 45 | Installation |
---|
| 46 | ============ |
---|
| 47 | |
---|
| 48 | - Install Feeds, Feeds Admin UI. |
---|
| 49 | - To get started quick, install one or all of the following Feature modules: |
---|
| 50 | Feeds News, Feeds Import, Feeds Fast News (more info below). |
---|
| 51 | - Make sure cron is correctly configured http://drupal.org/cron |
---|
| 52 | - Go to import/ to import data. |
---|
| 53 | - To use SimplePie parser, download SimplePie and place simplepie.inc into |
---|
| 54 | feeds/libraries. Recommended version: 1.2. |
---|
| 55 | http://simplepie.org/ |
---|
| 56 | |
---|
| 57 | Feature modules |
---|
| 58 | =============== |
---|
| 59 | |
---|
| 60 | Feeds ships with three feature modules that can be enabled on |
---|
| 61 | admin/build/modules or - if you are using Features - on admin/build/features. |
---|
| 62 | http://drupal.org/project/features |
---|
| 63 | |
---|
| 64 | The purpose of these modules is to provide a quick start for using Feeds. You |
---|
| 65 | can either use them out of the box as they come or you can take them as samples |
---|
| 66 | to learn how to build import or aggregation functionality with Feeds. |
---|
| 67 | |
---|
| 68 | The feature modules merely contain sets of configurations using Feeds and in |
---|
| 69 | some cases the modules Node, Views or Data. If the default configurations do not |
---|
| 70 | fit your use case you can change them on the respective configuration pages for |
---|
| 71 | Feeds, Node, Views or Data. |
---|
| 72 | |
---|
| 73 | Here is a description of the provided feature modules: |
---|
| 74 | |
---|
| 75 | - Feeds News - |
---|
| 76 | |
---|
| 77 | This feature is a news aggregator. It provides a content type "Feed" that can |
---|
| 78 | be used to subscribe to RSS or Atom feeds. Every item on such a feed is |
---|
| 79 | aggregated as a node of the type "Feed item", also provided by the module. |
---|
| 80 | |
---|
| 81 | What's neat about Feeds News is that it comes with a configured View that shows |
---|
| 82 | a list of news items with every feed on the feed node's "View items" tab. It |
---|
| 83 | also comes with an OPML importer filter that can be accessed under /import. |
---|
| 84 | |
---|
| 85 | - Feeds Fast News - |
---|
| 86 | |
---|
| 87 | This feature is very similar to Feeds News. The big difference is that instead |
---|
| 88 | of aggregating a node for every item on a feed, it creates a database record |
---|
| 89 | in a single table, thus significantly improving performance. This approach |
---|
| 90 | especially starts to save resources when many items are being aggregated and |
---|
| 91 | expired (= deleted) on a site. |
---|
| 92 | |
---|
| 93 | - Feeds Import - |
---|
| 94 | |
---|
| 95 | This feature is an example illustrating Feeds' import capabilities. It contains |
---|
| 96 | a node importer and a user importer that can be accessed under /import. Both |
---|
| 97 | accept CSV or TSV files as imports. |
---|
| 98 | |
---|
| 99 | PubSubHubbub support |
---|
| 100 | ==================== |
---|
| 101 | |
---|
| 102 | Feeds supports the PubSubHubbub publish/subscribe protocol. Follow these steps |
---|
| 103 | to set it up for your site. |
---|
| 104 | http://code.google.com/p/pubsubhubbub/ |
---|
| 105 | |
---|
| 106 | - Go to admin/build/feeds and edit (override) the importer configuration you |
---|
| 107 | would like to use for PubSubHubbub. |
---|
| 108 | - Choose the HTTP Fetcher if it is not already selected. |
---|
| 109 | - On the HTTP Fetcher, click on 'settings' and check "Use PubSubHubbub". |
---|
| 110 | - Optionally you can use a designated hub such as http://superfeedr.com/ or your |
---|
| 111 | own. If a designated hub is specified, every feed on this importer |
---|
| 112 | configuration will be subscribed to this hub, no matter what the feed itself |
---|
| 113 | specifies. |
---|
| 114 | |
---|
| 115 | Libraries support |
---|
| 116 | ================= |
---|
| 117 | |
---|
| 118 | If you are using Libraries module, you can place external libraries in the |
---|
| 119 | Libraries module's search path (for instance sites/all/libraries. The only |
---|
| 120 | external library used at the moment is SimplePie. |
---|
| 121 | |
---|
| 122 | Libraries found in the libraries search path are preferred over libraries in |
---|
| 123 | feeds/libraries/. |
---|
| 124 | |
---|
| 125 | Transliteration support |
---|
| 126 | ======================= |
---|
| 127 | |
---|
| 128 | If you plan to store files with Feeds - for instance when storing podcasts |
---|
| 129 | or images from syndication feeds - it is recommended to enable the |
---|
| 130 | Transliteration module to avoid issues with non-ASCII characters in file names. |
---|
| 131 | http://drupal.org/project/transliteration |
---|
| 132 | |
---|
| 133 | API Overview |
---|
| 134 | ============ |
---|
| 135 | |
---|
| 136 | See "The developer's guide to Feeds": |
---|
| 137 | http://drupal.org/node/622700 |
---|
| 138 | |
---|
| 139 | Testing |
---|
| 140 | ======= |
---|
| 141 | |
---|
| 142 | See "The developer's guide to Feeds": |
---|
| 143 | http://drupal.org/node/622700 |
---|
| 144 | |
---|
| 145 | Debugging |
---|
| 146 | ========= |
---|
| 147 | |
---|
| 148 | Set the Drupal variable 'feeds_debug' to TRUE (i. e. using drush). This will |
---|
| 149 | create a file /tmp/feeds_[my_site_location].log. Use "tail -f" on the command |
---|
| 150 | line to get a live view of debug output. |
---|
| 151 | |
---|
| 152 | Note: at the moment, only PubSubHubbub related actions are logged. |
---|
| 153 | |
---|
| 154 | Performance |
---|
| 155 | =========== |
---|
| 156 | |
---|
| 157 | See "The site builder's guide to Feeds": |
---|
| 158 | http://drupal.org/node/622698 |
---|
| 159 | |
---|
| 160 | Hidden settings |
---|
| 161 | =============== |
---|
| 162 | |
---|
| 163 | Hidden settings are variables that you can define by adding them to the $conf |
---|
| 164 | array in your settings.php file. |
---|
| 165 | |
---|
| 166 | Name: feeds_debug |
---|
| 167 | Default: FALSE |
---|
| 168 | Description: Set to TRUE for enabling debug output to |
---|
| 169 | /DRUPALTMPDIR/feeds_[sitename].log |
---|
| 170 | |
---|
| 171 | Name: feeds_importer_class |
---|
| 172 | Default: 'FeedsImporter' |
---|
| 173 | Description: The class to use for importing feeds. |
---|
| 174 | |
---|
| 175 | Name: feeds_source_class |
---|
| 176 | Default: 'FeedsSource' |
---|
| 177 | Description: The class to use for handling feed sources. |
---|
| 178 | |
---|
| 179 | Name: feeds_worker_time |
---|
| 180 | Default: 15 |
---|
| 181 | Description: Execution time for a queue worker, only effective if used with |
---|
| 182 | drupal_queue. |
---|
| 183 | |
---|
| 184 | Name: feeds_data_$importer_id |
---|
| 185 | Default: feeds_data_$importer_id |
---|
| 186 | Description: The table used by FeedsDataProcessor to store feed items. Usually a |
---|
| 187 | FeedsDataProcessor builds a table name from a prefix (feeds_data_) |
---|
| 188 | and the importer's id ($importer_id). This default table name can |
---|
| 189 | be overridden by defining a variable with the same name. |
---|
| 190 | |
---|
| 191 | Name: feeds_node_batch_size |
---|
| 192 | Default: 50 |
---|
| 193 | The number of nodes feed node processor creates or deletes in one |
---|
| 194 | page load. |
---|
| 195 | |
---|
| 196 | Name: http_request_timeout |
---|
| 197 | Default: 15 |
---|
| 198 | Description: Timeout in seconds to wait for an HTTP get request to finish. |
---|
| 199 | |
---|
| 200 | Name: feeds_never_use_curl |
---|
| 201 | Default: FALSE |
---|
| 202 | Description: Flag to stop feeds from using its cURL for http requests. See |
---|
| 203 | http_request_use_curl(). |
---|
| 204 | |
---|
| 205 | Glossary |
---|
| 206 | ======== |
---|
| 207 | |
---|
| 208 | See "Feeds glossary": |
---|
| 209 | http://drupal.org/node/622710 |
---|