| Commit | Line | Data |
|---|---|---|
| dcaa933e | 1 | |
| eabfe21e AB |
2 | |
| 3 | "It feeds" | |
| 4 | ||
| 5 | ||
| dcaa933e | 6 | FEEDS |
| eabfe21e AB |
7 | ===== |
| 8 | ||
| 820009d0 AB |
9 | An import and aggregation framework for Drupal. |
| 10 | http://drupal.org/project/feeds | |
| eabfe21e AB |
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). | |
| 97ddb858 | 17 | -- HTTP upload (with optional PubSubHubbub support). |
| eabfe21e AB |
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. | |
| ad927e9e AB |
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. | |
| eabfe21e AB |
28 | - Unlimited number of import configurations. |
| 29 | - Export import configurations to code. | |
| 30 | - Optional libraries module support. | |
| 31 | ||
| 32 | Requirements | |
| 33 | ============ | |
| 34 | ||
| 49e1dd88 AB |
35 | - CTools 1.x |
| 36 | http://drupal.org/project/ctools | |
| a36af571 AB |
37 | - Job Scheduler |
| 38 | http://drupal.org/project/job_scheduler | |
| 39 | - Drupal 7.x | |
| 49e1dd88 | 40 | http://drupal.org/project/drupal |
| 299c0789 AB |
41 | - PHP safe mode is not supported, depending on your Feeds Importer configuration |
| 42 | safe mode may cause no problems though. | |
| eabfe21e AB |
43 | |
| 44 | Installation | |
| 45 | ============ | |
| 46 | ||
| c1c8d0f5 AB |
47 | - Install Feeds, Feeds Admin UI. |
| 48 | - To get started quick, install one or all of the following Feature modules: | |
| 49 | Feeds News, Feeds Import, Feeds Fast News (more info below). | |
| 2cc44d55 | 50 | - Make sure cron is correctly configured http://drupal.org/cron |
| 6bd9ccb1 | 51 | - Go to import/ to import data. |
| ab97a702 CL |
52 | - To use SimplePie parser, download either the compiled or minified SimplePie |
| 53 | and place simplepie_[version].compiled.php into feeds/libraries as | |
| 54 | simplepie.compiled.php. Recommended version: 1.3. | |
| eabfe21e AB |
55 | http://simplepie.org/ |
| 56 | ||
| c1c8d0f5 AB |
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 | ||
| f0b4e359 AB |
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 | |
| 68611fe3 | 107 | would like to use for PubSubHubbub. |
| f0b4e359 AB |
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 | ||
| bc66304f AB |
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 | ||
| 526bbbba AB |
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 | ||
| eabfe21e AB |
133 | API Overview |
| 134 | ============ | |
| 135 | ||
| 2cc44d55 AB |
136 | See "The developer's guide to Feeds": |
| 137 | http://drupal.org/node/622700 | |
| eabfe21e | 138 | |
| 9f6107f4 AB |
139 | Testing |
| 140 | ======= | |
| 141 | ||
| 237db708 AB |
142 | See "The developer's guide to Feeds": |
| 143 | http://drupal.org/node/622700 | |
| 9f6107f4 | 144 | |
| f0b4e359 AB |
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 | ||
| eabfe21e AB |
154 | Performance |
| 155 | =========== | |
| 156 | ||
| f957e166 AB |
157 | See "The site builder's guide to Feeds": |
| 158 | http://drupal.org/node/622698 | |
| eabfe21e AB |
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 | ||
| 2c769fda AB |
166 | Name: feeds_debug |
| 167 | Default: FALSE | |
| 168 | Description: Set to TRUE for enabling debug output to | |
| 169 | /DRUPALTMPDIR/feeds_[sitename].log | |
| eabfe21e AB |
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 | ||
| de64cc96 AB |
179 | Name: feeds_data_$importer_id |
| 180 | Default: feeds_data_$importer_id | |
| 181 | Description: The table used by FeedsDataProcessor to store feed items. Usually a | |
| 182 | FeedsDataProcessor builds a table name from a prefix (feeds_data_) | |
| 183 | and the importer's id ($importer_id). This default table name can | |
| 184 | be overridden by defining a variable with the same name. | |
| 185 | ||
| f84c73b1 | 186 | Name: feeds_process_limit |
| 9e4acf98 AB |
187 | Default: 50 |
| 188 | The number of nodes feed node processor creates or deletes in one | |
| 189 | page load. | |
| 190 | ||
| 25192ffd AB |
191 | Name: http_request_timeout |
| 192 | Default: 15 | |
| 193 | Description: Timeout in seconds to wait for an HTTP get request to finish. | |
| 253fbea2 S |
194 | Note: This setting could be overridden per importer in admin UI : |
| 195 | admin/structure/feeds/<your_importer>/settings/<your_fetcher> page. | |
| 25192ffd | 196 | |
| 3590f8ee AB |
197 | Name: feeds_never_use_curl |
| 198 | Default: FALSE | |
| 199 | Description: Flag to stop feeds from using its cURL for http requests. See | |
| 200 | http_request_use_curl(). | |
| 201 | ||
| eabfe21e AB |
202 | Glossary |
| 203 | ======== | |
| 204 | ||
| 2cc44d55 | 205 | See "Feeds glossary": |
| 5ab19479 | 206 | http://drupal.org/node/622710 |