Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

0 Пользователей и 1 Гость просматривают эту тему.
  • 690 Ответов
  • 172746 Просмотров
*

kysin

  • Захожу иногда
  • 247
  • 4 / 0
Хорошо!
А что нужно сделать, чтобы файл таки сохранялся, а не выводился на экран?
Сможете подсказать?
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
Посмотрите как это было сделано в старой версии ВМРЕ, там выгрузка была файлом
*

kysin

  • Захожу иногда
  • 247
  • 4 / 0
Дело в том, что и в этой версии скрипта CSVI выгрузка была файлом, пока я не поменял стандартный скрипт на скрипт предложенный S.t.A.m.
Значит дело в коде самого скрипта... Вот только в каком месте?!
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
Я не помню чтобы в этой теме было что-то связанное с CSVI, тут в основном разные модификации выполненные отдельными файлами.
*

kysin

  • Захожу иногда
  • 247
  • 4 / 0
Хм..
именно отсюда я взял код для экспорта для CSVI...
*

злобный ламер

  • Захожу иногда
  • 193
  • 2 / 0
Здравствуйте, у меня беда такая - нужно 2 валюты для маркета - как быть?
если делать так
/ Валюта в которой указаны Ваши цены

      echo"<currencyId>USD</currencyId>\n";
      echo"<currencyId>EUR</currencyId>\n";
то получается ошибка :(
*

skyscraper

  • Захожу иногда
  • 252
  • 47 / 2
злобный ламер
у тебя в 2х валютах сразу? если да, то маркет тока же рубли хавает, надо вводить курс и переводить, если просто разные валюты, то попробуй через условия, как-нить так:

Цитировать
if ($product_currency == "usd"){
               echo"<currencyId>USD</currencyId>\n";
       } else {
         echo"<currencyId>$product_currency</currencyId>\n";
      }
*

Roberta

  • Захожу иногда
  • 182
  • 0 / 0
Добрый день.
Подскажите, пожалуйста. делаю выгрузку товаров в ЯМ - первый раз. Вообще ничего не могу понять. скачала скрипт с первой страницы темы, внесла изменения (пароль имя...) пытаюсь скормить яндексу. выдает ПРОБЛЕМА, а именно:

Ошибка: Некорректная цена предложения: цена должна быть больше нуля и меньше 1000000000 (строка 543, столбец 18)
Ошибка: Предложение отклонено: http://сайт.ru/index.php?page=shop.product_details&flypage=shop.flypage&option=com_virtuemart&product_id=36 (строка 543, столбец 18)
и так 45 раз

я прошла по ссылке, а там неопубликованные товары, в которых вообще не указана цена, то есть поле пустое (даже не 0)

Что делать? Как исправить?
И где формируется yml файл и как его можно посмотреть?
Спасибо
*

kysin

  • Захожу иногда
  • 247
  • 4 / 0
YML файл, Вы и должны Яндексу "скармливать"..
*

злобный ламер

  • Захожу иногда
  • 193
  • 2 / 0
злобный ламер
у тебя в 2х валютах сразу? если да, то маркет тока же рубли хавает, надо вводить курс и переводить, если просто разные валюты, то попробуй через условия, как-нить так:

маркет сейчас у меня спокойно хавает $, но есть продукт который приходит в евро, задолбался по разнице курса его в $ превращать, каждый день
и если вводить то что ты предложил
то
Ошибка: Не указана валюта предложения (строка 5621, столбец 10)
в данный момент модуль работает с
/ Валюта в которой указаны Ваши цены

      echo"<currencyId>USD</currencyId>\n";
без всяких глюков
« Последнее редактирование: 27.10.2010, 15:29:49 от злобный ламер »
*

Sova_barmak

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
Я был недавно уже писал :
Цитата: Sova_barmak от 09.09.2010, 16:42:56
Тут спрашивали и раньше, но ответа не было, может кто уже знает. Что делать если в магазине несколько валют. У меня например в магазине цены в рублях, евро и долларах. Скрипт берет только числовое значение и дописывает RUR. Как сделать чтобы он автоматом еще и пересчитывал цену или хотя бы для каждой цены прописывал соответствующую валюту. Пробывал  сюда
echo"<currencyId>RUB</currencyId>\n";

тулить product_currency не хочет так(.

Подскажите пожалуйста может, кто знает вариант?

Но ответа так и не дождался может кто уже решил эту проблему. Сегодня Яндекс прислал:
Цитировать
Шашлычница - барбекю"
1898 р. в наличии
На сайте магазина: 1898 UAH.
Гриль контактный Savoye"
356 р. в наличии
На сайте магазина: 356 EUR.

Помогите пожалуйста кто может
трохи времени прошло, уже ветка продлилась, мой пост потерялся, сори что повторяюсь, но может кто знает как мне помочь?
*

Roberta

  • Захожу иногда
  • 182
  • 0 / 0
подскажите как лучше сделать.

скормила файл ЯМ, проверяли магазин 3 дня, в результате было отказано в выгрузке товаров по причине того, что в магазине присутствуют товары и категории, которые неопубликованны. как сделать их невидимыми для ЯМ, или как сделать чтобы они не попали в yml файл 
*

dmi-sky

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
кто как реализовал на самом сайте наличие или отсутствие товара ну и соответственно вывели в скрипт Маркета? Типа "есть в наличии", "нет в наличии", а не стандартным методом, мол "на складе: 5"
*

dolfun

  • Захожу иногда
  • 76
  • 0 / 0
Цитировать
В данный момент ссылки, размещенные в YML-файле, не совпадают с ранее
проиндексированными ссылками.
Например, ранее проиндексированная ссылка:
http://**********/Maslyanye-obogrevateli/View-all-products.html
Ссылка на данное предложение из файла:
http://**********/index.php?option=com_virtuemart&Itemid=71&category_id=2&flypage=flypage.tpl〈=ru&page=shop.product_details&product_id=3

Необходимо изменить ссылки в файле.


стоит sh404 я так понимаю это Яндекс на него ругается?
как быть? какой файлик использовать? есть ли тут такие, которые переделывают ссылки так как это делает sh404?
*

text

  • Захожу иногда
  • 93
  • 0 / 0
Вставил код так

Код: php
//echo"<description>".strip_tags(str_replace($tags,$repl,$description_template))."</description>\n";
echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";
echo"</offer>\n";
не работает.

вместе с этим
Код: php
echo"<name>".HtmlSpecialChars(strip_tags($row[$i]['product_name']))."\"</name>\n";
тоже не работает. Та же ошибка Unknown element 'br'

Если запускаю с сайта site.ru/md/market.php
появляется ошибка
Код: xml
Fatal error: Class 'JConfig' not found in /корень/md/market.php on line 25

Код: php
24. include '../configuration.php';
25. $cfg = new JConfig();

как можно автоматически удалять эти  'br' из всего текста (не только из описания) через market.php?

Детали валидации YML файла

--------------------------------------------------------------------------------
http://www.site.ru/md/market.php
[2010-11-04 18:01:44] (Fatal) [1:4] (Fatal) 521 Error parsing XML feed: Unknown element 'br'

Яндекс не принимает: Error parsing XML feed: Unknown element 'br'
Где можно еще исправить код market.php?

*

text

  • Захожу иногда
  • 93
  • 0 / 0
Если у вас Joomla 1.0.15, то можете не сохранять файл, а просто дать яндексу ссылку вида:
/index.php?page=product.csv_upload&option=com_virtuemart&func=export_yml
Набираю в брузере:
http://www.сайт.ru/index.php?page=product.csv_upload&option=com_virtuemart&func=export_yml
Загружается страница с текстом
Ошибка: Функция не зарегистрирована. export_yml- не является функцией MOS_com_phpShop.
Ошибка: У Вас нет прав на доступ к запрошенному модулю.

И предложение войти на сайт через "Пользователь" и "Логин".

Даю ссылку Яндексу. Результаты:
Детали валидации YML файла

--------------------------------------------------------------------------------
http://www.сайт.ru/index.php?page=product.csv_upload&option=com_virtuemart&func=export_yml
Ошибка: Редирект запрещен: 'HTTP/1.1 301 Moved Permanently\r\nDate: Thu, 04 Nov 2010 16:35:32 GMT\r\nServer: Apache/2.0.63-lk.d (Unix) mod_ssl/2.0.63-lk.d OpenSSL/0.9.8g mod_dp20/0.99.2 PHP/5.2.5 mod_python/3.3.1 Python/2.5.1 mod_ruby/1.2.6 Ruby/1.8.6(2007-09-24)\r\nX-Powered-By: PHP/5.2.5\r\nSet-Cookie: 3214f8db8a3ec6edf1dfed251c54d7bc=-; path=/\r\nSet-Cookie: virtuemart=m8l847ut4e0sih43apmr4rhh36; path=/\r\nExpires: Thu, 19 Nov 1981 08:52:00 GMT\r\nCache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0\r\nPragma: no-cache\r\nSet-Cookie: VMCHECK=OK\r\nLocation: index.php?page=product.csv_upload&option=com_virtuemart&func=export_yml&vmcchk=1\r\nContent-Length: 0\r\nConnection: close\r\nContent-Type: text/html; charset=WINDOWS-1251\r\n\r\n'
Фатальная ошибка: Внутренняя ошибка во время загрузки




*

sutkind

  • Новичок
  • 7
  • 0 / 0
подскажите как лучше сделать.

скормила файл ЯМ, проверяли магазин 3 дня, в результате было отказано в выгрузке товаров по причине того, что в магазине присутствуют товары и категории, которые неопубликованны. как сделать их невидимыми для ЯМ, или как сделать чтобы они не попали в yml файл 

Тоже интересует. Как выгрузить через скрипт в yml не все категории, а только нужные мне?
А то у нас на сайте есть комиссионный отдел, а Яндекс категорически против б/у товаров.
*

dmi-sky

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
При проверке YML появляется ошибка следующего плана: [80:9] (Fatal) 521 Error parsing XML feed: Element 'model' is not valid for content model: '(url,buyurl?,price,wprice?,currencyId,xCategory?,categoryId+,picture?,delivery?,deliveryIncluded?,local_delivery_cost?,orderingTime?,((typePrefix?,vendor,vendorCode?,model,((provider,tarifplan?))?)|(author?,name,publisher?,series?,year?,ISBN?,volume?,part?,language?,binding?,page_extent?,table_of_contents?)|(author?,name,publisher?,series?,year?,ISBN?,volume?,part?,language?,table_of_contents?,performed_by?,performance_type?,storage?,format?,recording_length?)|(artist?,title,year?,media?,starring?,director?,originalName?,country?)|(worldRegion?,country?,region?,days,dataTour*,name,hotel_stars?,room?,meal?,included,transport,price_min?,price_max?,options?)|(name,place,hall?,hall_part?,date,is_premiere?,is_kids?)|(name,vendor?,vendorCode?)),aliases?,additional*,description?,sales_notes?,promo?,manufacturer_warranty?,country_of_origin?,downloadable?,adult?,barcode*,param*)'

При этом если конструкция скрипта такая;

echo"<delivery>true</delivery> \n";
echo"<local_delivery_cost>300</local_delivery_cost> \n";
echo"<model>".HtmlSpecialChars(strip_tags($row[$i]['product_name']))."</model>\n";

Если же перед echo"<model>" вставлена строка
                echo"<vendor>".HtmlSpecialChars($vendor)."</vendor>\n";
То ошибки нет файл получает одобрение в системе.

Кроме этого если при добавлении строк <country_of_origin>Китай</country_of_origin> и других стран - выдаётся ошибка, что не известная страна.

*

timson

  • Осваиваюсь на форуме
  • 44
  • 3 / 0
мой 1.1.4 выгружает даже скрытые (закрытые к публикации) категории и товары. А это не есть гуд!
*

SolopoV

  • Давно я тут
  • 576
  • 16 / 0
  • зеленею...
Подключил пару магазинов, а на третьем спотыкаюсь...
На третьем включены встроенные ЧПУ и к Вирту роутер (E-router), выдающий ссылки вида: http://www.xxx.com/one/max/tovar.html

Как побороть маркет? Точнее, как сделать формирование таких же ссылок в market.php?

Подскажите, в каком направлении ковырять?
*

ruzziki

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Здравствуйте, подскажите пожалуйста, как сформировать товары у которых $product_parent_id > 0 ? (т.е. есть основной товар а внутри него варианты товара)
мой код выгрузки:
Цитировать
<?php
//Пропишите для своей БД, пропишите наименование магазина, про адрес www.**********.ru тоже не забудьте
$hostname = "хххх";
$username = "хххх";
$password = "хххх";
$dbName = "ххххх";
$category = "jos_vm_category";
$category_xref = "jos_vm_category_xref";
$userstable = "jos_vm_product";
$pricetable = "jos_vm_product_price";

$product_category_xref =  "jos_vm_product_category_xref";
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
mysql_select_db($dbName) or die(mysql_error());
echo"<?xml version=\"1.0\" encoding=\"windows-1251\"?>\n";
echo"<!DOCTYPE yml_catalog SYSTEM \"shops.dtd\">\n";
echo"<yml_catalog date=\"";
echo date('Y-m-d H:i');
echo"\">\n";
echo"<shop>\n";
//Здесь название магазина
echo"<name>ххххх</name>\n";
echo"<company>хххххх</company>\n";
echo"<url>ххххххх</url>\n";
echo"<currencies>\n";
echo"<currency  id=\"RUR\" rate=\"1\"/>\n";
echo"<currency  id=\"USD\" rate=\"30\"/>\n";
echo"<currency  id=\"UAH\" rate=\"4\"/>\n";
echo"</currencies>\n";
echo"<categories>\n";
$query_cat = "SELECT * FROM $category_xref";
$res_cat = mysql_query($query_cat) or die(mysql_error());
$rw=1;
while ($row_cat=mysql_fetch_array($res_cat)) {
$cat_parent_id=$row_cat['category_parent_id'];
$cat_child_id=$row_cat['category_child_id'];
$query2 = "SELECT category_name FROM $category WHERE category_id=".$row_cat['category_child_id'];
$res_cat1 = mysql_query($query2) or die(mysql_error());
$name_cat=mysql_fetch_array($res_cat1);
$cat_name=$name_cat['category_name'];
if ($cat_parent_id==0) {
echo"<category id=\"".$cat_child_id."\">".$cat_name."</category>\n";
}
else {
echo"<category id=\"".$cat_child_id."\" parentId=\"".$cat_parent_id."\">".$cat_name."</category>\n";
}
$rw++;
}
echo"</categories>\n";
echo"<offers>\n";
$query = "SELECT * FROM $userstable";
$res = mysql_query($query) or die(mysql_error());
$rw=1;
while ($row=mysql_fetch_array($res)) {
$url="ххххх/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=".$row['product_id'];
$product_full_image = "ххххххх/components/com_virtuemart/shop_image/product/".$row['product_full_image'];
$product_name = $row['product_name'];
$product_s_desc = $row['product_s_desc'];
$query1 = "SELECT product_price FROM $pricetable WHERE product_id=".$row['product_id'];
$res1 = mysql_query($query1) or die(mysql_error());
$price=mysql_fetch_array($res1);
$product_price = substr($price['product_price'], 0, -3);
$query3 = "SELECT category_id FROM $product_category_xref WHERE product_id=".$row['product_id'];
$res3 = mysql_query($query3) or die(mysql_error());
$product_cat_id1=mysql_fetch_array($res3);
$product_cat_id=$product_cat_id1['category_id'];
echo"<offer id=\"".$rw."\" available=\"true\" bid=\"11\">\n";
echo"<url>".$url."</url>\n";
echo"<price>$product_price</price>\n";
echo"<currencyId>RUR</currencyId>\n";
echo"<categoryId>".$product_cat_id."</categoryId>\n";
echo"<picture>".$product_full_image ."</picture>\n";
echo"<name>".$product_name."\"</name>\n";
echo"<description>".$product_name.".от официального дилера.</description>\n";
echo"</offer>";
$rw++;
}
echo"</offers>\n";
echo"</shop>\n";
echo"</yml_catalog>\n";
?>
соответственно без этого пишет ошибку:
Цитировать
Определена кодировка: windows-1251 (строка 0, столбец 0)
Дата из файла: 2010-11-11 06:49 (строка 3, столбец 113)
Ошибка: Для предложения указана неизвестная категория: (строка 8423, столбец 9)
Ошибка: Предложение отклонено: http://ххххх/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=1187 (строка 8423, столбец 9)
Ошибка: Для предложения указана неизвестная категория: (строка 8423, столбец 9)
Ошибка: Предложение отклонено: http://хххх/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=1179 (строка 8423, столбец 9)
*

corsarufo

  • Захожу иногда
  • 64
  • 1 / 0
подскажите.
скачал market.zip
заполнил.
и Яндекс выдает ошибку:
Определена кодировка: utf-8 (строка 0, столбец 0)
Дата из файла: 2010-11-11 20:35 (строка 3, столбец 113)
[2010-11-11 18:36:45] (Fatal) [56:70] (Fatal) 521 Error parsing XML feed: Unterminated entity reference, 'flypage'
какие ошибки?
« Последнее редактирование: 11.11.2010, 18:37:46 от corsarufo »
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
Наверное & не по стандарту записан в урл, нужно писать &amp;
*

a_pesikov

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Здравствуйте, подскажите пожалуйста, как сформировать товары у которых $product_parent_id > 0 ? (т.е. есть основной товар а внутри него варианты товара)
мой код выгрузки:соответственно без этого пишет ошибку:

Присоединяюсь к вопросы, с вложенными товарами не пашет :(  Что делать??
*

dangler

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Здравствуйте!
Я скачал market.zip из Ответ #23 этой ветки, исправил в нем первые 5 строчек вот так:
Код
include 'configuration.php';
$cfg = new JConfig();
$cfg_name = 'Eciga.ru - Лавка электронных сигарет';
$cfg_company = 'Eciga';
$cfg_url = 'eciga.ru';

больше ничего не менял, тк configuration.php у меня лежит в корне. Туда же я закинул после сохранения этот market.php и обратился к нему через браузер.
мне выдался код:
Код
Eciga.ru - Лавка электронных сигарет Eciga eciga.ru Электронные сигареты Аксессуары Дополнения Outdoor Tools Indoor Tools http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=2&category_id=3&manufacturer_id=1 49.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/8cb8d644ef299639b7eab25829d13dbc.jpg true Ladder" A really long ladder to reach high places. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=3&category_id=3&manufacturer_id=1 24.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/520efefd6d7977f91b16fac1149c7438.jpg true Shovel" Nice shovel. You can dig your way to China with this one. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=4&category_id=3&manufacturer_id=1 19.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/1b0c96d67abdbea648cd0ea96fd6abcb.jpg true Smaller Shovel" This shovel is smaller but you'll be able to dig real quick. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=7&category_id=4&manufacturer_id=1 149.99 RUR 4 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c1e25c8e0966.jpg true Сигарета 1" Первая сигарета http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=8&category_id=2&manufacturer_id=1 220.90 RUR 2 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c1e2632dbe1c.jpg true Сигарета 2" Вторая сигарета http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=9&category_id=5&manufacturer_id=1 48.12 RUR 5 http://eciga.ru/components/com_virtuemart/shop_image/product/1ff5f2527907ca86103288e1b7cc3446.jpg true Drill" Drill through anything. This drill has the power you need for those demanding hole boring duties. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=10&category_id=2&manufacturer_id=1 74.99 RUR 2 http://eciga.ru/components/com_virtuemart/shop_image/product/480655b410d98a5cc3bef3927e786866.jpg true Power Sander" Blast away that paint job from the past. Use this power sander to really show them you mean business. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=14&category_id=&manufacturer_id=1 79.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Metal Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=15&category_id=&manufacturer_id=1 49.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Wooden Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=16&category_id=&manufacturer_id=1 59.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Plastic Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=19&category_id=1&manufacturer_id=1 2800.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_40_4c266ffd32058.jpg true E-cigarette M-402" Хорошо зарекомендовавшая себя модель http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=17&category_id=1&manufacturer_id=1 1700.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_7_4c24da0a0ba02.jpg true E-cigarette M-7" Одна из самых стильных сигарет http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=18&category_id=1&manufacturer_id=1 2500.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_40_4c266f26600fb.jpg true E-cigarette M-401" Красивая модель http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=32&category_id=1&manufacturer_id=1 200.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c32016ba2231.jpg true Картриджи E-ciga" Для сигарет e-cigarete и e-vaporaizer

по-моему, это не очень похоже на код шаблона yml-файла, который предлагает яндекс:
Код
<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="2010-04-01 17:00">
    <shop>
        <name>Magazin</name>
        <company>Magazin</company>
        <url>http://www.magazin.ru/</url>
       
        <currencies>
            <currency id="RUR" rate="1" plus="0"/>
        </currencies>
       
        <categories>
            <category id="1">Оргтехника</category>
            <category id="10" parentId="1">Принтеры</category>
            <category id="100" parentId="10">Струйные принтеры</category>
            <category id="101" parentId="10">Лазерные принтеры</category>

            <category id="2">Фототехника</category>
            <category id="11" parentId="2">Фотоаппараты</category>
            <category id="12" parentId="2">Объективы</category>
           
            <category id="3">Книги</category>
            <category id="13" parentId="3">Детективы</category>
            <category id="14" parentId="3">Художественная литература</category>
            <category id="15" parentId="3">Учебная литература</category>
            <category id="16" parentId="3">Детская литература</category>
           
            <category id="4">Музыка и видеофильмы</category>
            <category id="17" parentId="4">Музыка</category>
            <category id="18" parentId="4">Видеофильмы</category>
           
            <category id="5">Путешествия</category>
            <category id="19" parentId="5">Туры</category>
            <category id="20" parentId="5">Авиабилеты</category>
           
            <category id="6">Билеты на мероприятия</category>
        </categories>
       
        <local_delivery_cost>300</local_delivery_cost>
   

подскажите, пожалуйста, я что-то делаю не так?
*

a_pesikov

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Здравствуйте!
Я скачал market.zip из Ответ #23 этой ветки, исправил в нем первые 5 строчек вот так:
Код
include 'configuration.php';
$cfg = new JConfig();
$cfg_name = 'Eciga.ru - Лавка электронных сигарет';
$cfg_company = 'Eciga';
$cfg_url = 'eciga.ru';

больше ничего не менял, тк configuration.php у меня лежит в корне. Туда же я закинул после сохранения этот market.php и обратился к нему через браузер.
мне выдался код:
Код
Eciga.ru - Лавка электронных сигарет Eciga eciga.ru Электронные сигареты Аксессуары Дополнения Outdoor Tools Indoor Tools http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=2&category_id=3&manufacturer_id=1 49.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/8cb8d644ef299639b7eab25829d13dbc.jpg true Ladder" A really long ladder to reach high places. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=3&category_id=3&manufacturer_id=1 24.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/520efefd6d7977f91b16fac1149c7438.jpg true Shovel" Nice shovel. You can dig your way to China with this one. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=4&category_id=3&manufacturer_id=1 19.99 RUR 3 http://eciga.ru/components/com_virtuemart/shop_image/product/1b0c96d67abdbea648cd0ea96fd6abcb.jpg true Smaller Shovel" This shovel is smaller but you'll be able to dig real quick. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=7&category_id=4&manufacturer_id=1 149.99 RUR 4 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c1e25c8e0966.jpg true Сигарета 1" Первая сигарета http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=8&category_id=2&manufacturer_id=1 220.90 RUR 2 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c1e2632dbe1c.jpg true Сигарета 2" Вторая сигарета http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=9&category_id=5&manufacturer_id=1 48.12 RUR 5 http://eciga.ru/components/com_virtuemart/shop_image/product/1ff5f2527907ca86103288e1b7cc3446.jpg true Drill" Drill through anything. This drill has the power you need for those demanding hole boring duties. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=10&category_id=2&manufacturer_id=1 74.99 RUR 2 http://eciga.ru/components/com_virtuemart/shop_image/product/480655b410d98a5cc3bef3927e786866.jpg true Power Sander" Blast away that paint job from the past. Use this power sander to really show them you mean business. http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=14&category_id=&manufacturer_id=1 79.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Metal Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=15&category_id=&manufacturer_id=1 49.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Wooden Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=16&category_id=&manufacturer_id=1 59.99 RUR http://eciga.ru/components/com_virtuemart/shop_image/product/ true Plastic Ladder" http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=19&category_id=1&manufacturer_id=1 2800.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_40_4c266ffd32058.jpg true E-cigarette M-402" Хорошо зарекомендовавшая себя модель http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=17&category_id=1&manufacturer_id=1 1700.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_7_4c24da0a0ba02.jpg true E-cigarette M-7" Одна из самых стильных сигарет http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=18&category_id=1&manufacturer_id=1 2500.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/E_cigarette_M_40_4c266f26600fb.jpg true E-cigarette M-401" Красивая модель http://eciga.ru/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=32&category_id=1&manufacturer_id=1 200.00 RUR 1 http://eciga.ru/components/com_virtuemart/shop_image/product/_________________4c32016ba2231.jpg true Картриджи E-ciga" Для сигарет e-cigarete и e-vaporaizer

по-моему, это не очень похоже на код шаблона yml-файла, который предлагает яндекс:
Код
<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="2010-04-01 17:00">
    <shop>
        <name>Magazin</name>
        <company>Magazin</company>
        <url>http://www.magazin.ru/</url>
       
        <currencies>
            <currency id="RUR" rate="1" plus="0"/>
        </currencies>
       
        <categories>
            <category id="1">Оргтехника</category>
            <category id="10" parentId="1">Принтеры</category>
            <category id="100" parentId="10">Струйные принтеры</category>
            <category id="101" parentId="10">Лазерные принтеры</category>

            <category id="2">Фототехника</category>
            <category id="11" parentId="2">Фотоаппараты</category>
            <category id="12" parentId="2">Объективы</category>
           
            <category id="3">Книги</category>
            <category id="13" parentId="3">Детективы</category>
            <category id="14" parentId="3">Художественная литература</category>
            <category id="15" parentId="3">Учебная литература</category>
            <category id="16" parentId="3">Детская литература</category>
           
            <category id="4">Музыка и видеофильмы</category>
            <category id="17" parentId="4">Музыка</category>
            <category id="18" parentId="4">Видеофильмы</category>
           
            <category id="5">Путешествия</category>
            <category id="19" parentId="5">Туры</category>
            <category id="20" parentId="5">Авиабилеты</category>
           
            <category id="6">Билеты на мероприятия</category>
        </categories>
       
        <local_delivery_cost>300</local_delivery_cost>
   

подскажите, пожалуйста, я что-то делаю не так?

В браузере так и должно выглядеть, либо посмотрите в виде исходного кода либо HTML ( в разных браузерах по разному) или можно сохранить файл и открыть в приличном редакторе кода.
*

dangler

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
a_pesikov, а точно, как я сам не догадался, блин )

да, так гораздо более похоже на то, что хочет Яндекс )
Код
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">

<!-- saved from url=(0026)http://eciga.ru/market.php -->

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head>

<body><yml_catalog date="2010-11-15 16:44">


<shop>

<name>Eciga.ru - Лавка электронных сигарет</name>

<company>Eciga</company>

<url>eciga.ru</url>

<currencies>

<currency id="RUR" rate="1">

<currency id="USD" rate="CBRF">

<currency id="EUR" rate="CBRF">

</currency></currency></currency></currencies>


<categories>

<category id="1">Электронные сигареты</category>

<category id="2">Аксессуары</category>

<category id="3">Дополнения</category>

<category id="4" parentid="2">Outdoor Tools</category>

<category id="5" parentid="2">Indoor Tools</category>
</categories>


<offers>

<offer id="2" available="true" bid="11">

<url>http://eciga.ru/client?page=shop.product_details

спасибо!

правда тут еще неопубликованные товары вставились, и еще что-то, чего нет на сайте, но об этом тут в ветке вроде уже писали.
главное, что теперь это явно YML-файл, а не что-то неясное )

Добрый день. Скачал market.php
После запуска вот что выдало:
 
Код
...
819" parentId="8816">Полезные мелочи</category>
</categories>
<offers>
<br />
<b>Fatal error</b>:  Out of memory (allocated 52166656) (tried to allocate 86 bytes) in <b>/bhome/.../www/market.php</b> on line <b>182</b><br />
Где можно подправить настройки выделения памяти?
Кто поможет?
*

sutkind

  • Новичок
  • 7
  • 0 / 0
Цитировать
Где можно подправить настройки выделения памяти?
Кто поможет?
в настройках php у хостера
*

tom1501

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
как сделать вариант с указанием наличия товара на складе?

на 15 стр. есть вариант, когда экспортируются только опубликованные категории и товары в наличии. А как сделать, чтобы экспортировались все товары, но при этом указывалось наличие - есть на складе или под заказ?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

1C УТ 8.x &lt;-&gt; VirtueMart по протоколу CommerceML

Автор Centoff

Ответов: 1315
Просмотров: 214997
Последний ответ 27.10.2020, 15:32:10
от Leo1986
Импорт из CSV товаров с типами и свойствами из

Автор Gruz

Ответов: 499
Просмотров: 150982
Последний ответ 23.02.2017, 15:15:42
от orchanin
Как импортировать файл XML в Joomla VirtueMart?

Автор Кот Смюлан

Ответов: 2
Просмотров: 5181
Последний ответ 14.07.2016, 18:40:24
от Berzerker
импорт товаров в YML Яндекс маркет

Автор zmeyx

Ответов: 5
Просмотров: 11476
Последний ответ 14.07.2016, 18:34:28
от Berzerker
Скрипт экспорта товаров в Яндекс маркет (yml)

Автор gaalferov

Ответов: 12
Просмотров: 11793
Последний ответ 08.06.2016, 14:02:27
от DimaXP