Áttelepítése import excel drupal, drupal 7

Ismét visszatérünk migrálni. Elég kényelmes keret adatokat importálni Drupal.
Az egyik gyakori forrása formátumokat import - CSV. Támogatott vándorolnak ki a dobozból. Leírás és példák a munka MigrateSourceCSV osztály megtalálható d.org.
Van egy nagy hátránya import CSV - fájl előkészítése import:

  • történő mentéskor CSV származó Excell Ön nem fog minket a szükséges kódolás UTF-8;
  • ha hosszú szöveget (pl termék leírás), majd neodhodimo mentés előtt cserélni előfordulásával újsor, különben lehet kapni helyett 5000 vonalak áruk - 65000. Lap személyes tapasztalat. ;

Elvileg a hálózat egy csomó programot a helyes átalakítás xls CSV c további lehetőségeket. Minden megoldható :-) Te csak tanítani „az ember”, hogy előkészítse a fájlok import.

Tehát, próbáljuk tenni az import közvetlenül xls.

Nem tudom, talán csak elfelejtettem, hogyan kell használni a keresést, de nem találtam semmit mellékesen találni. Nap elment, gondoltam a lehetséges megoldásokat. Úgy gondoltam levelet plugin a vándorolnak, hogy úgy mondjam, hogy tanítsa meg neki, hogy olvassa el az adatokat a xls. Elkezdtem tanulmányozni a forrás-inek "out of the box". És íme - class MigrateSourceSpreadsheet. Elvileg ebben a pillanatban, akkor befejezi a cikket.

Ez az osztály működik PHPExcel könyvtárban.

phpexcel modul egy API dolgozó xls fájlokat a modulokat. Mellesleg, a végrehajtása az osztály MigrateSourceSpreadsheet nem láttam az E módszerek alkalmazásával, de nézd meg a modulhoz talált. Talán ez annak köszönhető, hogy gyorsítótár beállításait. Az a tény, hogy a PHPExcel könyvtár egyik kiemelkedő hátránya - nagy memória-felhasználás fájlok feldolgozásakor. A probléma megoldására különböző caching mechanizmust fejlesztettek ki. PHPExcel modul segítségével a rendszergazda az oldalon (admin / config / system / phpexcel), hogy megváltoztassuk a cache üzemmódot.

Áttelepítése import excel drupal, drupal 7

A legegyszerűbb példa segítségével MigrateSourceSpreadsheet osztály:

Az Ön importálni kívánt fájlt átnevezni egy lapot valamilyen kényelmes nevet, mint „import”, az első sorban a lapkészlethez nevek oszlopok az angol nyelvet. Migrate úgy véli, ezek a nevek és alkotóik alapján egy listát a területeken elérhető import.

Írja le, hogyan működik. Semmi nem tudta megérteni, hogy nem lehet ez?
A modulok minden beállítva.
Kipróbált ostobán keresztül devel kód dugó (tud?), Nem működött. Nos, a saját beállításait. Nem tudom, hogyan feltérképezése a lényeg az, hogy még a kártya termék és a widget-termékek (App. Kereskedelmi). Ahogy ők, de még egyik sem történt meg.
Akkor rágni?

Üdvözlet! Köszönöm a figyelmet.
Hangolt import. Minden mezőt hoznak kivéve taxonómia (egy szinten).
Azt próbálja meg beállítani a leképezés az alábbiak szerint:
$ This-> addFieldMapping (taxonomy_p_group ', 'p_group');
$ This-> addFieldMapping (taxonomy_p_group: SOURCE_TYPE ') -> defaultValue (tid');
$ This-> addFieldMapping (taxonomy_p_group: create_term ') -> defaultValue (TRUE);

Ha a kifejezés létezik, hozza létre az anyagot, de a nevét kifejezés dob leírást.
Ha a kifejezés nem létezik, egy hiba, és nem hoz létre az anyagban.

Ne mondd el, mi a probléma?

A legvalószínűbb az SOURCE_TYPE paramétert. Ez azt jelzi, hogy pályáznak bejáratánál. Akkor át naponta háromszor (távú szám) vagy a nevét (a kifejezés).
Ha már telepítve van
$ This-> addFieldMapping (taxonomy_p_group: SOURCE_TYPE ') -> defaultValue (tid');
A forrás meg kell adnunk a kifejezések száma.
Ha át egy nevet, meg kell állapítani:
$ This-> addFieldMapping (taxonomy_p_group: SOURCE_TYPE ') -> defaultValue ( 'name');
Adjon meg egy értéket a kifejezés a forrás

Áttelepítése import excel drupal, drupal 7

Friss cikkek

Áttelepítése import excel drupal, drupal 7

Kapcsolódó cikkek