Маючи кулінарний сайт, я раптом подумав, а чому б не підключити до нього що-небудь на зразок каталогу товарів всяких там каструль, поварешек та іншої кухонного начиння. Може, хтось щось і купить. Але зробити це все я вирішив в своєму дизайні і на своїх умовах. Так, щоб не було нестерпно боляче дивитися на будь-яке там негарне чуже, а з задоволенням дивитися на красиве, ну або не дуже гарне, але своє. Згадав я, що колись, десь, від когось чув, що admitad ніби як почав штовхати товари. З цим сервісом я одного разу починав працювати. Було це дуже давно, але реєстрація у мене залишилася. Не можна сказати, що я був вражений, яке до біса, якщо нічого не заробив. Але, на сайт. я сходив, і дійсно, з'явилися товари.
Розібратися в системі виявилося нескладно. Є шаблони експорту, тобто експорт в csv, і товари теж є.
Справа за малим. Включити, підключити, налаштувати, запустити, отримати гроші, витратити. Все просто і здійснимо, можливо за винятком останніх двох пунктів. Взагалі, я слабо вірю в те, що на admitad можна більш-менш заробити. Але не про це мова. Наше завдання, створити список товарів на сайті, імпортувати в нього товари, автоматизувати всю цю роботу, а отримаємо ми гроші при цьому чи ні - справа десята. Нам потрібно навчитися імпортувати дані на сайт а не гроші в гаманець. Якби я вмів імпортувати гроші в гаманець webmoney навпростець, я б про це мовчав, як і ті, хто освоїв цю спеціальність. Отже, по порядку.
2. Додаємо майданчик (свій сайт).
3. Йдемо в Товари / Оброблені.
У мене були тільки "СотМаркет" і "Quelle".
6. Тепер йдемо в програму по посиланню в будь-якому товарі і підключаємо її до свого сайту. Деякі програми підключаються відразу, інші після модерації.
7. Далі йдемо в Товари / Шаблони експорту. Створюємо свій шаблон.
8. Я вибрав не всі поля:
9. Зберігаємо шаблон.
10. Повертаємося в Товари / Оброблені.
11. Знову фільтруємо наш список товарів, натискаємо кнопку "Налаштування експорту" у верхній частині списку товарів, праворуч.
12. У вікні вибираємо шаблон і натискаємо кнопку "Згенерувати".
13. Копіюємо собі згенерувала посилання в блокнот або куди ще. Можна посилання вставити в браузер, по ній скочується файл csv. Правда, перші пару годин мій файл був чомусь порожній.
14. Закриваємо все це господарство, і йдемо на наш drupal сайт.
15. Нам потрібен модуль Feeds. Так, як я людина гаряча і постійно працюю з модулем Feeds на інших проектах, знаю його досить непогано, то я ризикнув і поставив версію 7.x-2.0-alpha8 + 71-dev (це та, яка на червоному тлі, Development releases) . У цій версії виявилася дуже потрібна нам функція - видалення тих матеріалів, яких немає в новому csv файлі. Це звичайно ризиковано, але у мене ця версія працює відмінно і поки нічого зайвого не видалила. Ще нам потрібен Feeds Tamper. Обидва модуля встановлюємо як зазвичай, включаємо.
16. Тепер створюємо тип матеріалу для наших товарів на цій сторінці admin / structure / types. Я свій назвав Товар. Всі настройки звичайні, в подробиці вдаватися не буду.
18. Створюємо поля в типі матеріалу "Товар", точно такі ж, які ми вибрали в п. 8.
19. Створюємо Feeds на сторінці admin / structure / feeds з такими нстройкамі:
20. Періодичний імпорт можете включити який вам більше подобається. Admitad каже, що вони оновлюють списки кожні 2 години. Так часто, я думаю, нам не треба.
21. Тут звертаємо увагу на роздільник. Він повинен бути такий же, як в п. 7.
22. У Node processor вибираємо наш тип матеріалу Товар, включаємо Update existing Матеріали - оновлювати матеріали при імпорті. І нова функція, доступна тільки в dev версії модуля: Action to take when previously imported Матеріали are missing in the feed - що робити, якщо раніше імпортовані матеріали відсутні в новому файлі імпорту. Я включив - видалити нафіг (Delete non-existent Матеріали). Ні, насправді, спочатку я включив "Unpublish non-existent nodes", щоб перевірити як воно працює. І насправді, через пару днів знайшов купу відключених товарів. Зараз я вже включив видаляти.
23. Налаштовуємо відповідності. Зліва пишемо назву колонки з нашого файлу csv, праворуч вибираємо поле Ноди.
Відповідність id - GUID робимо унікальним.
Саме завдяки цьому полю наші матеріали зможуть оновлюватися і віддалятися за непотрібністю. Якщо цього не зробити, при кожному новому імпорті у вас будуть створюватися нові товари, навіть якщо вони вже є.
24. Всі зберігаємо і йдемо на сторінку admin / structure / feeds і в нашому налаштованому імпорті натискаємо посилання Tamper.
У моєму випадку, друге і наступні зображення просто ігноруються, тому що у мене в поле "Зображення" в "Кількість значень" вибрано 1 зображення. Ви можете включити 2 або більше і туди зображення теж будуть завантажуватися.
27. Все, зберігаємо. Вже майже кінець нашим митарства.
29. У полі URL, як ви вже зрозуміли, вставляємо посилання отриману в admitad і натискаємо кнопку "Імпорт".
Іноді я отримую помилку "cURL error (28) Operation timed out after 30001 milliseconds with 0 bytes received for." - я так розумію, проблеми з підключенням. Однак, зазвичай все спрацьовує на другий раз.
30. Після вдалого імпорту у вас з'явиться купа нових нод типу "Товар". Я все це зробив вьюха ось так: