Feeds-module (Drupal): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
(Tekst vervangen door "== Zie ook == * Feeds-module & Drupal Commerce * Feeds-module & Übercart")
Regel 1: Regel 1:
''Dit artikel komt oorspronkelijk uit maart 2014. Op veel plekken is het achterhaald.''
 
 
In Drupal 7 is de ''[https://drupal.org/project/feeds Feeds-module]'' de standaardmodule voor importeren en bijwerken van ''nodes'' en ''vocabulaires''. Deze module bestaat ook voor Drupal 6. In sommige situaties is ''Feeds'' de aangewezen oplossing, soms ''[[Taxonomy CSV import/export (Drupalmodule) | Taxonomy CSV import/export]]'', en soms misschien zelfs ''[[Node Import (Drupalmodule) | Node Import]]''. Desalniettemin: De convergentie gaat richting ''Feeds''. Dus houd deze module in de gaten.
 
 
Dit artikel richt zich voornamelijk op de volgende situatie: Is het mogelijk om Übercartproducten, inclusief meerdere taxonomieën en afbeeldingen, bij te werken mbv. Feeds? Zoals je aan het eind van dit artikel kunt zien: ''Nee.''
 
 
== Feeds & Übercart ==
 
 
Gebruik de ''[https://drupal.org/project/uc_feeds Ubercart Feed Mappers-module]'' (aka. ''uc_feeds'') voor toegang tot Übercart-velden. Dat lijkt prima te werken. Alleen kun je niet zondermeer ''SKU'' instellen als unieke veld [https://drupal.org/node/1039616]. Daar lijkt een ''patch'' voor te bestaan, maar die kreeg ik zo snel niet aan de praat: Ik kan prima uit de voeten met ''Title'' als primaire sleutel.
 
 
== Feeds, afbeeldingen & Übercart ==
 
 
Afbeeldingen kunnen gemakkelijk mee-geïmporteerd worden met Übercart-producten:
 
 
{|
 
|[[file:20140329-1044.png|thumb|Importbestand. Veld ''Image'' bevat pad+bestandsnaam]]
 
|[[file:20140329-1046.png|thumb|En de bijbehorende ''mapping'']]
 
|}
 
 
* De velden ''Image Title'' en ''Image Alt Text'' zijn in Übercart 3 standaard niet beschikbaar. Ik vermoed een bug [http://xenthex.com/node/15] of een module die ik niet heb aangezet. Hoe dan ook: Dat heeft nu geen prioriteit
 
* Afbeeldingen worden tot op zekere hoogte automatisch geschaald. Alleen niet in productdetailweergave. Voorlopige oplossing: Afbeeldingen vantevoren schalen.
 
 
== Nodes met platte taxonomieën met één taxon per node ==
 
 
Om nodes te importeren die platte taxonomische gegevens bevatten, gebruik:
 
 
* Feeds
 
* [https://drupal.org/project/feeds_tamper Feeds Tamper-module]
 
* Explode-plugin.
 
 
{|
 
|[[file:20140329-1322.png|thumb|Importbestand: Er is maar één term per vocabulaire. Deze vocabulaire bestaat al, en het is cruciaal dat deze records (''Basic Page'') gekoppeld worden met de bestaande taxons]]
 
|[[file:20140329-1323.png|thumb|Mapping. Omdat het maar één term betreft, komt er geen ''Tamper-plugin'' aan te pas. Daarom gaat de referentie per ''Term name''. ''Auto create'' heb ik uitgezet. Jammer alleen dat er geen foutmelding optreedt als een term niet overeenkomt]]
 
|}
 
 
== Nodes met platte taxonomieën, meerdere taxons per node, eenvoudig scheidingsteken ==
 
 
Werkt, maar soms gaan er dingen mis:
 
 
{|
 
|[[file:20140329-1330.png|thumb|Importbestand: Eén record met twee taxons, gescheiden door een dubbele streep, zonder spaties]]
 
|[[file:20140329-1342.png|thumb|Importbestand: Mapping: Referentie middels ''Term name''. De ''Explode-plugin'' retourneert een array]]
 
|[[file:20140329-1346.png|thumb|Explode-plugin: Scheidingsteken ||]]
 
|}
 
 
== Nodes met platte taxonomieën, meerdere taxons per node, complex scheidingsteken ==
 
 
Werkt, maar soms gaan er dingen mis:
 
 
{|
 
|[[file:20140329-1354.png|thumb|Importbestand: Eén record met twee taxons, gescheiden door een dubbele streep met spaties]]
 
|[[file:20140329-1355.png|thumb|Importbestand: Scheidingsteken is zó complex, dat ik het hier niet kan herhalen]]
 
|}
 
 
== Nodes met hierarchische taxonomieën ==
 
 
In tegenstelling tot de Node Import-module, kun je met Feeds niet zomaar velden impoteren die hierarchische taxonomische gegevens bevatten. Dit kan wel met de ''Custom Feeds Tamper Term Hierarchy-module''. Dit is een plugin voor Feeds Tamper. Een paar details:
 
 
* Scheidingsteken: Dat mag complex zijn, maar een spatie moet gewoon als spatie worden ingevoerd. %s||%s snapt-ie niet
 
* Eerst explode, daarna dit custom-ding
 
* Mapper-referentie: ''Term ID''
 
* Helaas worden niet-bestaande termen altijd automatisch aangemaakt. Daardoor heb je minder controle op fouten.
 
 
Voor veel meer: [[Custom Feeds Tamper Term Hierarchy-module]].
 
 
== Bestaande gegevens bijwerken ==
 
 
Feeds kun je gebruiken om bestaande ''nodes'' of taxonomieën bij te werken. Velden die niet van een nieuwe waarde worden voorzien bij zo'n update, blijven onaangeroerd. Bij ''Node Import'' was dit een probleem, waar ''Node Import Update'' geen afdoende oplossing voor was. Dit is een sterk argument om te standaardiseren op Feeds.
 
 
{|
 
|[[file:20140321-1027.png|thumb|Bijwerken van een Simple Page-node met taxonomie en afbeelding. Ging prima]]
 
|[[file:Screenshot-2014.03.21-001.png|thumb|Bijwerken van een Übercart-product. Alle overige velden bleven onaangeroerd, inclusief taxonomie, SKU en afbeelding]]
 
|}
 
 
== Platte vocabulaires importeren ==
 
 
{|
 
|[[file:20140328-2001.png|thumb|''Feeds'' kan zonder probleem platte (niet-hiërarchische) vocabulaires importeren of bijwerken. Belangrijk: URL's moeten corresponderen met het veld ''Path Alias''!]]
 
|}
 
 
== Hiërarchische vocabulaires importeren ==
 
 
En hier zijn we aangeland bij de ''cutting edge''. Hier houdt mijn kennis op, althans voor dit moment. Ik heb een test gedaan met een ''explode plugin'' en een ''custom-dinges-plugin'', maar dat was 'm niet, en terecht: Het hiërarschische karakter van een compleet pad, ging verloren.
 
 
Op dit moment (maart 2014) heb ik [[Taxonomy CSV import/export (Drupalmodule)]] gebruikt. Eén van de bestverzorgde modules die ik ken.
 
 
== Übercart-producten met bestaande platte taxons ==
 
 
Met ''bestaande platte taxons'' bedoel ik, dat de taxonomie al op de site staat, en dat die gebruikt moet worden. Er mogen dus geen termen ''on the fly'' worden aangemaakt.
 
 
{|
 
|[[file:20140329-1403b.png|thumb|Importbestand, inclusief twee taxons met complex scheidingsteken]]
 
|[[file:20140329-1404.png|thumb|Mapping inclusief ''term name'' referentie, want zo werkt de ''explode plugin'']]
 
|[[file:20140329-1406.png|thumb|Gelukt!]]
 
|}
 
 
== Übercart-producten met verschillende taxonomieën ==
 
 
En gelukkig werkt ook dat:
 
 
{|
 
|[[file:20140329-1437.png|thumb|Importbestand met twee hierarchische paden (''Cat'') en twee platte taxons (''Tags'')]]
 
|[[file:20140329-1442.png|thumb|Mapping]]
 
|[[file:20140329-1443.png|thumb|Tamper-plugins]]
 
|}
 
 
== Storing bij initialisatie ==
 
 
Ik wil 660 producten importeren, met twee joekels van catalogi daarachter, met ik geloof, zo'n 50.000 verschillende paden. Het import-proces lijkt te hangen bij het begingscherm: ''Initializing''. Ook als ik slechts 10 producten importeer.
 
 
* Drush schijnt erg geschikt te zijn voor dit soort werk
 
* Feeds Tamper schijnt een vertragende factor te zijn, net als Pathauto in het verleden
 
* Het is mogelijk om het in batches te doen: Eerst de productgegevens, daarna de eerste taxonomie, daarna de tweede taxonomie
 
* Bijwerken van een aantal zaken, zoals URL's, kan ook via VBO.
 
 
* https://drupal.org/node/1289918 - Bulk update stuck on initializing - is there a command line I could use?
 
* https://drupal.org/node/867578 - Add drush commands for bulk alias updating/deleting
 
* https://drupal.org/node/608408 - Drush integration for Feeds
 
* https://drupal.org/node/1219296 - Partial import then ajax message - 500 error
 
 
 
== Zie ook ==
 
== Zie ook ==
  
* [[Productgegevens & hierarchische taxonomieën]] - Het algemene Übercart-importprobleem, los van een specifieke oplossing
+
* [[Feeds & Drupal Commerce | Feeds-module & Drupal Commerce]]
* [[Custom Feeds Tamper Term Hierarchy-module]] - Inclusief voorbeelden gebruik Feeds
+
* [[Feeds-module & Übercart]]
* [[Taxonomy CSV import/export (Drupalmodule) | Taxonomy CSV import/export]]
 
* [[Node Import (Drupalmodule) | Node Import]].
 
 
 
== Bronnen ==
 
 
 
''' Modules '''
 
 
 
* https://drupal.org/project/feeds
 
* https://drupal.org/project/feeds_tamper
 
* https://drupal.org/project/uc_feeds
 
* https://drupal.org/node/1039616 - uc_feeds: Make Model/SKU a unique target
 
 
 
''' Hierarchische taxonomieën '''
 
 
 
* https://www.google.com/search?q=drupal+feeds+import+hierarchical+taxonomy
 
* https://drupal.org/node/1159628 - How do you import a hierarchical taxonomy with feeds? (Drupal 6, 2011): in 2012 me nogal verdiept in deze posting, zonder resultaten
 
* https://drupal.org/node/2194457 - Import Nodes with hierarchical taxonomy terms: Helpt weinig. Legt uit dat alleen ''Feeds Tamper'' onvoldoende is.
 
* https://drupal.org/node/1152940 - Feeds term import with hierarchy and weight: Mogelijk een oplossing
 
* https://www.google.com/search?q=drupal+feeds+node+import+including+hierarchical+taxonomy
 
* https://drupal.org/node/1319278 - Support automatic importing of the term hierarchy for nested taxonomy terms: Wie weet: Thread is flink gegroeid in afgelopen anderhalve jaar
 
 
 
''' Feeds-module '''
 
 
 
* http://drupal.org/project/feeds - Project home page
 
* http://drupal.org/node/622696 - Community Documentation for Feeds
 
* http://drupal.org/node/622698 - The site builder's guide to Feeds
 
* http://drupal.org/node/856780 - List of implemented mappers - Inclusief veldtype ''taxonomy''
 
* http://drupal.org/node/1307732 - 7.x-2.x Feeds: Common Tasks
 
* http://ring.ciard.net/consuming-agrifeeds-drupal-feeds - Consuming Agrifeeds with Drupal Feeds
 

Versie van 9 aug 2016 08:10