Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Дополнение к плагину импорта товаров из yml

После заполнения базы товаром любым из парсеров Евгения она не много не полная - нет урлов партнерки, дополнительного описания, в добавок хотелось бы и краткое описание.
Вот и решил написать небольшое дополнение к парсеру, ориентир на ozon.ru, но думаю под любой похожий xml пойдет.
Мне было необходимо:
1. Внести партнерские урлы в базу и при выборе товаров, если такого нет на складе, по кнопке "купить" переадресовывать на страницу товара на озоне по партнерскому линку.
Для этого
Отключил кнопку "в корзину" и "купить", как это сделать подробно описано тут.
В ..\langs\ru\lang.php заменил строчку
define('TEXT_MORE_INFORMATION', 'Для получения дополнительной информации посетите <a href="%s" onclick="window.open(this.href); return false;">сайт</a> товара.');
на
define('TEXT_MORE_INFORMATION', ' <a href="%s" onclick="window.open(this.href); return false;"><img src="/themes/default/buttons/ru/cart_big.gif" alt=""/></a>');
т.е. вместо надписи появляется cart_big.gif ведущий на нужный урл.
2. Не много изменить текст описания, чтоб не был 100% озоновским. Решил просто добавить не много текста перед, в середину и после описания. 
3. Добавить дополнительное описание, в котором как раз и находятся конкретные ттх товара.
4. Добавить краткое описание на предварительном просмотре

Краткая инструкция:
1. Скачать xml файл с необходимым товаром (можно несколько).
2. Поместить файл на хост или в папку сайта локально (я прогоняю парсер только локально, создал папку xml в корне сайта и туда кидаю базы)
3. Поправить в xml урлы товара на свои партнерские (меняем ?from=partner на ?partner=свой_id)
4. Прогнать этот (эти) xml парсером Евгения (совет - раскомментируйте часть функции, отвечающую за сохранение картинок, озон их дает сейчас без водяных знаков)
5. В файле parssin.php внести изменения:

$dblocation = путь к базе (в основном это "localhost", хотя можно указать ip сайта и выполнять скрипт локально, а работать будет с базой на сайте)
$dbname = "имя_базы";
$dbuser = "пользователь";
$dbpassword = "пароль";

$prodesc_beg = 'текст перед описанием товара, можно оформлять как угодно, экспериментировать с тегами (если их открывать здесь, а закрывать в $prodesc_end, то все описание меняет стиль)';
$prodesc_midl = 'текст перед дополнительным описанием';
$prodesc_end = 'соответственно текст после описания';

$xml = simplexml_load_file('путь к файлу xml');
у меня к примеру было два xml и массив выглядел так:
$xml = simplexml_load_file('http://localhost/xml/laptop_zaxap83.xml');
$xml = simplexml_load_file('http://localhost/xml/mobile_zaxap83.xml');
если нужно больше, то $xml = ... и тд, функция схавает.

Не имея собственного товара, за несколько минут можно сделать полноценный магаз, к тому же с реальным товаром, от продажи которого может капать копеечка.
Пример - ottu.ru, все содержимое сайта - результат работы двух парсеров.
Если будут вопросы и предложения - пишите :)


спасибо


$xml = simplexml_load_file('путь к файлу xml');
у меня к примеру было два xml и массив выглядел так:
$xml = simplexml_load_file('http://localhost/xml/laptop_zaxap83.xml');
$xml = simplexml_load_file('http://localhost/xml/mobile_zaxap83.xml');

на больших xml simplexml  плохо работает.

весь файл в память загружает

на обчном хостинге работать не будет. так как ктож столько памяти даст


Такие вещи лучше делать локально :)


гемороя чуть больше


Да, есть такое, но 100% не будет претензий со стороны хостера, они и так вечно плачут про перегрузки.
Я в принципе не претендую на звание "самый пряморукий кодер года", я новичок в пхп :)
Спасибо за подсказку, буду смотреть другие способы работы с xml.
З.Ы. Совет тем, кто парсит из браузера - под оперой процес в несколько раз(!) быстрей, чем под фаером/хромом/эксплорером, хоть на что-то она годится ;)


З.Ы. Совет тем, кто парсит из браузера - под оперой процес в несколько раз(!) быстрей, чем под фаером/хромом/эксплорером, хоть на что-то она годится


а почему?

скрипт то выполняется не в браузере.


Скорее всего дело в обработке списка сделанного, чем он больше, тем тупее идет процесс, может нужно как-то упростить отображение списка, или вообще выводить его в тхт. Квад 9550@4ггц после 1000 строк начинает садиться на жопу. А под оперой даже на ноутбуке более-менее быстро. Пробовал фаер/оперу под линухом и под виндой - под виндой даже быстрей (скорее всего из-за более новых версий).


Пример - ottu.ru, все содержимое сайта - результат работы двух парсеров.


долго в индексе держался?

смотрю теперь 0 в индексе


Ушел из индекса во время мартовского БПц, т.е. 4 месяца держался.



Ушел из индекса во время мартовского БПц, т.е. 4 месяца держался.


странно. а у меня держатся. хотя там почти полный копипаст

нужно чуть ссылок на сайт добавить

тогда гораздо увереннее держатся в индексе


"После заполнения базы товаром любым из парсеров Евгения она не много не полная - нет урлов партнерки, дополнительного описания, в добавок хотелось бы и краткое описание.
Вот и решил написать небольшое дополнение к парсеру, ориентир на ozon.ru, но думаю под любой похожий xml пойдет. "

Евгений пишет замечательно, но все дело в том, что скрипты выдают кучу ошибок...
Ваш parssin.php работает без ошибок, за исключением "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Экзиль Антуан Франсуа - французский писател' at line 1". Может быть подскажете, что я делаю не так?


Источник



Copyright ShopOS