Drupal 7 Feeds Intro Drupal Camp Indianapolis 2011

Uploaded on

Slideshow without talk not very useful. Posted for participants future reference.

Slideshow without talk not very useful. Posted for participants future reference.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide
  • http://d7win.education.illinois.edu/ title, body, published, guid (many_nodes), content.csv "guid","title","created","alpha","beta","gamma","delta","body“, users.csv name,mail,since,password
  • https://preview.education.illinois.edu/admin/structure/feeds
  • https://preview.education.illinois.edu/admin/structure/feeds/faculty_taxonomy_importer https://preview.education.illinois.edu/admin/structure/feeds/webtools_listbuilder_importer


  • 1. Feeds Module for Drupal 7 Use Cases, Overview, and Walktroughs
  • 2. Who Am I?
    • johnbarclay on drupal.org
    • University of Illinois College of Education web developer
    • Pixotech.com (Pixo) Consultant
    • Maintain LDAP module
    • Like drupal community/dev model
    • Need to be interrupted
  • 3. Who are You?
    • Who has used feeds in drupal 6
    • Who has used feed in drupal 7
    • Who knows they have a use case for feeds?
    • Who may have a use case for feeds (importing or synching data into drupal)
    • Be thinking of these for middle part of talk.
  • 4. Goals
    • In love with feeds. Using like crazy the last couple of months.
    • Want to:
    • sell the module it
    • give leg up and warnings for new users
    • give away a book
  • 5. Breakdown
    • Terms, Module Features, General Use Cases. 10 minutes. Keep me in check.
    • A simple node import walk through. 10 minutes.
    • Examples of use cases we’ve implemented or need to implement. 20 minutes. Start thinking.
    • Advanced Feeds. Gotchas and Tools.
  • 6. What is Feeds Module?
    • Feeds is a pluggable system for importing or aggregating content into Drupal.
    • Investing time into learning it can make user import, node import, etc. obsolete.
    • Very extensible. Class Based with stack of interchangeable plugins + hooks.
    • Supports exportables/features.
  • 7.  
  • 8. Use Cases for Site Builders
    • Data Sources: RSS Feeds, XML Feeds, CSV Files, SOAP, WDSL, LDAP, Databases...
    • Data Targets: Nodes, Users, Taxonomy, ...
  • 9. Use Cases For Developers
    • For data ingestion, only need to write plugins for unique data sources or targets. Can leverage other plugins and core feeds functionality (batch, unique identifiers, user interface).
    • For migrations and many use cases don’t need any code at all
    • Supports exportables/features
  • 10. Architecture Fetcher Parser Processor Importer mapper
  • 11. Know the Lingo
    • Feeds Glossary very helpful http://drupal.org/node/622710
    • Key to understanding documentation
  • 12. Fetcher
    • Fetcher gets data.
    • Specific to transport/storage type
    • crawling, directory, file upload, http, ldap query, sql,
  • 13. Parser
    • Parser Normalizes Data.
    • Specific to data structure
    • Known Data Structures: CSV, RSS, LDAP Entry, OPML, SQL Recordset Customizable Data Structures: Querypath, Xpath, Xpath HTML
    • http://drupal.org/node/856644
  • 14. Processor
    • Processor “does stuff”. Generally stores feed items in a data structure. Could send out emails or do other obscure use cases.
    • Node, Taxonomy Term, User built in.
    • Data, Commerce Products, Self Node Processor, etc.
  • 15. (field) Mappers
    • http://drupal.org/node/856780
    • required to know where data from feed goes into a field.
    • basic core field types in Feeds module
    • contrib mappers in contrib modules
  • 16. Other Terms
    • plugin – fetcher, processor, parser
    • feed – body of data (csv file)
    • feed item – individual item (csv line)
    • feed node – confusing. instance of importer stored in node.
    • mapping – source to target field mapping
    • guid and unique target
  • 17. Import CSV Example
  • 18. Examples for Learning
    • In the simpletest folder in feeds are example feeds sources and test configurations
  • 19. Our Use Cases
    • What are you using feeds for?
    • What do you need to either import on a one time basis or synch continually.
  • 20. My Common Use Cases
    • MSSQL Data Synch to Nodes & Taxonomy
    • XML Feed to Nodes
    • LDAP Query to User Records
    • CSV to Nodes to Taxonomy
  • 21. Where are Plugins
    • Processors and Mappers: for core structures such as node, user, and taxonomy in feeds module. Outside core, should be in related contrib module or own module.
    • http://drupal.org/node/856644
  • 22. 7.x version not ready
    • Lots of bugs and RTBC patches
    • If it does the job great. Read issues.
    • When importing large amounts of data, everything has to work or need an alternative approach.
    • my notes: http://drupal.org/node/1301604
    • if you use a patch, RTBC!
  • 23. Feeds Tamper
    • Handy for edge cases
    • trim, regex, explode, etc.
  • 24. Write Plugins
    • search the sandbox
    • use other plugins as templates
    • extend other plugins rather than rewriting
    • use file logging for debugging because of batch nature of execution. dpm() and tracing problematic.
  • 25. Add to documentation
    • http://drupal.org/node/1307732
    • feeds are confusing
  • 26. 7.x-2.x gotchas
    • http://drupal.org/node/1301604