Affiliate datafeeds (csv) importeren in drupal

Enkele weken terug vertelde ik u al over mijn Drupal affiliatefeeds project. In deze blogpost een "mini" handleiding ivm het importeren van (affiliate) CSV data in uw drupal website.
benodigdheden:
Modules: feeds + bijhorende modules, imagecashe, filefield, views, tagadelic, enz ... (deze tutorial gaat enkel over de "feeds" module, en het importeren van data)
Affiliate provider: Tradetracker, daisycon, M4N, tradedoubler, enz... (tradetracker is mijn favorietje)
Kennis: Drupal gevorderd (modules Instaleren is geen probleem, je weet wat content types zijn, je kan deze aanmaken met verschillende cck velden, en je weet ook hoe je deze kan manipuleren met views en andere drupal modules)
 

  1. Meld u aan als affiliate bij TradeTracker
  2. zoek en meld je aan voor een campagne, na een goedkeuring (van jouw website) heb je toegang tot het promotiematriaal.
  3. Download een datafeed of productfeed, ik persoonlijk heb gekozen om CSV bestanden te gebruiken, maar je kan evengoed de XML versies gebruiken.

    Deze stappen zijn beter uitgelegd in de blog: Tradetracker datafeed aanmaken
  1. Open de datafeed en bekijk welke velden je wil gaan gebruiken . Om deze tutorial te schrijven ga ik gebruik maken van 6 fictionele velden: Titel, afbeelding, omschrijving, prijs, url, categorie

Nu dat de velden bekend zijn kan je starten met het Drupal gedeelte.

1.contentypes aanmaken

 Je maakt een contenttype aan waar alle eerder vermelde velden in kunnen opgeslagen worden. Dus je hebt een contenttype nodig met:

  • Titel -> standaard drupal veld
  • afbeelding -> CCK filefield + imagecashe + imageapi
  • omschrijving: standaard drupal veld
  • prijs: CCK textfield
  • categorie: Taxonomy/Vocabulary (standaard drupal feature)
  • URL: CCK link of textfield

2. Feeds mapper aanmaken

Standaard zijn er enkele mappers toegevoegd aan de module, maar ik ga starten met een custom feeds mapper aan te maken.

Ga naar: admin -> feedsimporter -> klik 'new importer' (uwdomein.be/admin/build/feeds/create)
plaats een titel voor jouw importer en een omschrijving en bewaar uw gegevens. Nieuw venster gaat open:

Drupal affiliatefeeds tutorial img1Drupal feeds: Basic instellingen

Naam en omschrijving hebben we gedaan in vorige stap
attached to: selecteer een contenttype (maakt niet zoveel uit welk dit gaat zijn,... story bv)
refresh time: kan u zelf bepalen

Drupal affiliatefeeds: Fetcher

fetcher change: file upload of http request (ik koos hier voor de httprequest methode)
fetcher instellingen: selecteer 'auto detect'

Drupal datafeed parser

Parser change: selecteer CSV parser
instellingen: hier kan je kiezen of uw lijst door een komma of puntkomma gescheiden word (komma)

feeds processor

datafeed processor change: selecteer 'node processor'
datafeed processor instellingen: inhoudstype, invoerformaat, autheur, expire, existing nodes

  • inhoudstype: Hier selecteer je het aangemaakte contentype dat je gemaakt hebt in het begin van deze tutorial
  • invoerformaat: filtered of full html
  • autheur: uw keuze
  • expire: never
  • existing nodes: replace

feeds processor mapping: het in kaart brengen van de CSV elementen

Hier ga je zorgen dat de elementen van de affiliatefeed (CSV) worden gelinked aan de velden van het inhoudstype. Hieronder een voorbeeld Van vakantieplus.be:

Drupal affiliate csv bestand importeren in de database

Bovenstaande afbeelding lijkt me vrij duidelijk. bij 'name of source field' plaats je de benaming van de bron (CSV bestand), Select target is het inhoudstype, of de plaats waar het terecht moet komen (drupal)

 

3. intergreren van csv data

Je gaat naar 'inhoud aanmaken' (...node/add) en je selecteert het inhoudstype dat je aan uw mapper hebt gelinkt. (ik heb 'story' als vb gebruikt in deze tutorial) Op het inzend formulier plaats je een titel en afhankelijk van welke instellingen die je gebruikt hebt voor de feed fetcher ga je een url moeten plaatsen of uw datafeed rechtstreeks uploaden. (.. evetueel andere optionele velden)... save. je kan op deze nieuwe pagina nu gaan importeren, door boven in de tabs op 'import' te drukken.

Als alles goed verlopen is heb je nu een aantal artikelen, die je kan manipuleren met views, ubercart of andere drupal modules.

 

Haal meer uit uw site met TradeTracker

12 Comments

Drupal 6 of 7

Met veel plezier ben ik op je artikel van de datafeeds in drupal terechtgekomen. Bij het importeren van datafeeds via http blijft de importer steeds hangen en krijg ik deze foutmelding "Er is een AJAX HTTP fout opgetreden. HTTP-resultaatcode: 200 Debug informatie volgt. Pad: /batch?id=21&op=do Statustekst: OK Antwoordtekst: Fatal error: Unsupported operand types in /home/etickets/public_html/sites/all/modules/feeds/includes/FeedsConfigurable.inc on line 149"

Ook na het installeren van deze patch (http://drupal.org/node/1213472#comment-4832946)

Nu vraag ik me spontaan af of deze tutorial ook geldig is voor drupal 7 of enkel drupal 6 compatibel? (http://drupal.org/node/959984)

Kan iemand me verder helpen?
gianni

Hellow,

Hellow,

Het is me toch gelukt na installeren van bovenstaande patch en wat prutsen.
Heb een eerste test gedaan door Aanzee.com affiliates in te laden.

Onderstuusen een view aangemaakt dat filtert op nederland als test. (http://www.eticketslondon2012.com/Nederland)

Nu heb ik 1 probleem. Hoe link ik de URL door naar de website. nu staat de URL gewoon als platte tekst (ingekort momenteel). Kan nergens vinden hoe ik bvb. BESTEL NU of LEES MEER met hieronder de URL aanmaak.

Datafeed

Vraagje ik doet een datafeed die ook de price range laat zien
(als je op bevoorbeeld kleding ook op prijzen kan selecteren) kan dit met dit script op kan het gewoon niet in drupal?

Feeds processor mapping

Leuke tutorial! Voor mij als beginner ideaal om van start te gaan.
Alle stappen zijn duidelijk, behalve bij de mapping krijg ik als source enkel keuze uit een select list. Ik kan geen veldnamen zelf opgeven. Hierdoor kan ik de veldnamen uit mijn xml-bestand niet gebruiken?
Dit is wel Drupal 7 natuurlijk, waarschijnlijk is dit ondertussen gewijzigd.

Wat kan ik hieraan doen?

Alvast bedankt!

Stijn

Reactie toevoegen

Filtered HTML

  • Adressen van webpagina's en e-mailadressen worden automatisch naar links omgezet.
  • Toegelaten HTML-tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Regels en paragrafen worden automatisch gesplitst.

Plain text

  • Geen HTML toegestaan.
  • Adressen van webpagina's en e-mailadressen worden automatisch naar links omgezet.
  • Regels en paragrafen worden automatisch gesplitst.
Type the characters you see in this picture. (verify using audio)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.