На готовый сайт (интернет-магазин) необходимо выгрузить товары из 1С, сделать интеграцию через API c Topdelivery и установку Robokassa. Сайт на 1С Битрикс. Жду предложений касаемо сроков и приблизительной стоимости после чего сообщу детали.
Доработка YML выгрузки для сайта for-kids.by на simpla CMS
Есть стандартный модуль выгрузки yml.php (в корне сайта), который генерирует следующий юмл:
http://for-kids.by/yandex.xml
Нужно дополнить выгрузку по сведениям о товарах:
- добавить производителя;
- добавить категорию товара;
- добавить артикул товара;
Код текущего генератора юмл:
require_once('api/Simpla.php');
$simpla = new Simpla();
$date = iconv('UTF-8', 'Windows-1251', date("Y-m-d H:i"));
header("Content-type: text/xml; charset=windows-1251");
print ''."\n";
print ''."\n";
print ''."\n\t";
print ''."\n\t\t";
print ''.iconv('UTF-8', 'Windows-1251', $simpla->settings->site_name).''."\n\t\t";
print ''.iconv('UTF-8', 'Windows-1251', $simpla->settings->company_name).''."\n\t\t";
print ''.$simpla->config->root_url.''."\n\t\t";
// Валюты
print ''."\n\t\t\t";
print ''."\n\t\t";
print '';
// Категории
print "\n\t\t".'';
foreach($simpla->categories->get_categories_tree() as $c)
{
if($c->visible)
{
$id = esc($c->id);
$name = iconv('UTF-8', 'Windows-1251', esc($c->name));
$seoname = iconv('UTF-8', 'Windows-1251', esc($c->title_h1));
if (!empty ($seoname)) { $name = $seoname; }
print "\n\t\t\t".''.$name.'';
foreach($simpla->categories->get_categories() as $sc)
{
if($sc->visible)
{
$sc_id = esc($sc->id);
$sc_parent_id = esc($sc->parent_id);
$sc_name = iconv('UTF-8', 'Windows-1251', esc($sc->name));
$sc_seoname = iconv('UTF-8', 'Windows-1251', esc($sc->title_h1));
if (!empty ($sc_seoname)) { $sc_name = $sc_seoname; }
if ($sc_parent_id == $id)
{
print "\n\t\t\t\t".''.$sc_name.'';
}
}
}
}
}
print "\n\t\t".''."\n\t";
// Товары
print "\n\t\t".'';
$simpla->db->query("SELECT * FROM __products WHERE visible=1");
foreach($simpla->db->results() as $p)
{
$prod_id = $p->id;
// Отбираем товары которые в наличии
foreach ($simpla->variants->get_variants(array('product_id'=>$prod_id)) as $v) {
if ($v->stock != 0) {
// Название товара
$prod_name = iconv('UTF-8', 'Windows-1251', esc($p->name));
// Получаем url товара
$simpla->db->query("SELECT category_id FROM __products_categories WHERE product_id=".$prod_id." ORDER BY category_id DESC");
foreach($simpla->db->results() as $q) {
$cat_id = $q->category_id;
}
$simpla->db->query("SELECT url_path FROM __categories WHERE id=".$cat_id."");
foreach($simpla->db->results() as $w) {
$cat_path = $w->url_path;
}
$url = $simpla->config->root_url.'/catalog/'.esc($w->url_path).'/'.esc($p->url);
// Описание товара
$prod_description = iconv('UTF-8', 'Windows-1251', strip_tags(preg_replace("/&#?[a-z0-9]{2,8};/i","",$p->body)));
$prod_description_end = " Источник: For-kids.by";
$prod_description_end = iconv('UTF-8', 'Windows-1251', $prod_description_end);
$prod_description = $prod_description.$prod_description_end;
// Получаем цену товара
foreach ($simpla->variants->get_variants(array('product_id'=>$prod_id)) as $v) {
$prod_price = round($v->price);
if ($prod_price) break;
}
// Получаем изображения товара
foreach ($simpla->products->get_images(array('product_id'=>$prod_id)) as $i) {
$prod_image = $i->filename;
if ($prod_image) break;
}
$prod_image_url = $simpla->config->root_url.'/files/originals/'.esc($prod_image);
// Получаем стоимость доставки
if ($prod_price > 300000) {
$delivery_cost = 0;
} elseif ($prod_price < 300000 AND $prod_price > 199000) {
$delivery_cost = 20000;
} else {
$delivery_cost = 30000;
}
// Получаем название товара
//foreach ($simpla->variants->get_variants(array('product_id'=>$prod_id, 'in_stock'=>true)) as $v) {
// $prod_sku = $v->sku;
// if ($prod_sku) break;
//}
//$product_sku = " (Арт. ".esc($prod_sku).")";
//$product_name = $prod_name.iconv('UTF-8', 'Windows-1251', $product_sku);
$product_name = $prod_name;
print "\n\t\t\t".'';
print "\n\t\t\t\t".''.$url.'';
print "\n\t\t\t\t".''.$prod_price.'';
print "\n\t\t\t\t".'BYR';
print "\n\t\t\t\t".''.$cat_id.'';
print "\n\t\t\t\t".''.$prod_image_url.'';
print "\n\t\t\t\t".'true';
print "\n\t\t\t\t".''.$delivery_cost.'';
print "\n\t\t\t\t".''.$product_name.'';
print "\n\t\t\t\t".''.$prod_description.'';
print "\n\t\t\t".'';
}
}
}
print "\n\t\t".'';
print "\n\t".'';
print "\n".'';
function esc($s)
{
return(htmlspecialchars($s, ENT_QUOTES, 'UTF-8'));
}
Выбранный исполнитель
Заявки фрилансеров
Похожие заказы
- Интернет-магазины2 заявкиЗакрыт8 лет назад
Нужен специалист который хорошо разбирается с движком Webasyst Shop-Script. 1. Надо отключить мобильную версию (нужно сделать так, чтоб на мобильных также отображалось как и на компьютере (на некоторых мобильных сейчас нормально показывается как например ...
Интернет-магазины3 заявкиЗакрыт8 лет назадТребуется программист для создания интернет магазина на платформе phpshop под ключ. Лицензия куплена. Магазин стоматологических материалов и оборудования.
Интернет-магазины6 заявокЗакрыт8 лет назадВсем привет. Необходимо доработать интернет магазин. ТЗ скину кандидатам и ссылку на сайт. Начать нужно в ближайшее время. Исполнитель нужен ответственный и адекватный. Работа до полного утверждения ...
Интернет-магазины3 заявкиЗакрыт9 лет назад- $15
Сначала менялись права на запись папки с сайтом на другого пользователя (сразу вернули обратно, т.к. появилась ошибка Warning: file_put_contents(/tmp/magento/var/log/system.log): failed to open stream: Permission denied in /var/www.... - ошибка исчезла После этого, решили на время выключить ...
Интернет-магазины3 заявкиЗакрыт8 лет назад - $50
Добавить редактирование заказов в бек-офисе (постановка в приложении). Одностраничный магазин tsprof.com реализован на php+mysql+angular+bootstarp Работу разобьем на 2 этапа, первый этап портировать таблицу заказов на AngularJS, второй реализовать редактирование заказов в бек-офисе. Первый этап оплачивается ...
Интернет-магазины2 заявкиЗакрыт8 лет назад - $15
1. В поиске в шапке вывести кнопку поиск. 2. В пункте Спецпредложение позиции сделать по алфавиту вывести артикул и цену с артикулом побольше, что бы видны были. 3. В поиске нужно, что бы ...
Интернет-магазинынет заявокЗакрыт8 лет назад Нeобходимо доработaть сущeствующий интернет-магазин одежды на Open Cart 2. Ключeвые задачи: 1) Доработать верстку 2) Некоторые бекэнд задачи 3) Оптимизировать работу сайта Подробнoсти в ТЗ: https://goo.gl/rU0FYR ...
Интернет-магазины5 заявокЗакрыт8 лет назадНужен специалист разбирающийся в Prestashop, в его модулях, в настройке этих модулей и их правке. 1)На сайте есть вертикальное меню сделанное из модуля blocktopmenu оно сделано криво и настроено не пойми как. Нужно его настроить, ...
Интернет-магазины1 заявкаЗакрыт8 лет назадДобрый день! Есть сайт. На 2х языках. Есть база. Нужно настроить выгрузку на сайт. Один товарисЧь что-то делал 2 недели, пропал, канул в лету, деньги ушли. А мне нужна работа. В ...
Интернет-магазины4 заявкиЗакрыт9 лет назад