Выгрузка данных о товарах Opencart в XML

Поговорим о том как можно выгрузить данные о товаре из Opencart в xml файл. Допустим нас интересуют следующие данные — наименование, расположение картинки, количество, цена и ссылка на товар.

Проще всего данные получить из базы данных с помощью программы SQLyog либо через phpMyAdmin (последний нам не сможет вывести в xml). Запускаем и создаем соединение — необходимая нам информация храниться в двух таблицах oc_product (oc_ префикс у вас он может быть другой) и oc_url_alias (если данной таблицы у вас нет, то необходимо поставить модуль seogen или deadcow для нормального создания ЧПУ).

Получим сначала информацию из таблицы oc_product. Здесь все просто — делаем обычную выборку

SELECT model,  quantity,  image,  price FROM  oc_product;

 

будет выведена таблица с необходимыми данными. Если же нам также нужно получить также урл продукта, конструкция получится сложнее

SELECT NAME, image, quantity, price, CONCAT("http://имя_вашего_домена/", cat1.keyword, "/", key1.keyword) AS url
FROM (
SELECT CONCAT( 'product_id=', p.product_id ) AS product_query, NAME, image,quantity, price, CONCAT( 'category_id=', pc.category_id ) AS category_query
FROM `oc_product_description` pd
LEFT JOIN oc_product p ON (p.product_id=pd.product_id)
LEFT JOIN oc_product_to_category pc ON (pc.product_id=p.product_id)
WHERE p.date_available <= NOW() AND p.status = '1'
)pd
LEFT JOIN oc_url_alias key1 ON ( pd.`product_query` = key1.`query` )
LEFT JOIN oc_url_alias cat1 ON ( pd.`category_query` = cat1.`query` )

 

Полученную таблицу экспортируем в необходимый нам формат

Пролистать наверх