Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

С тех пор, как в поисковиках появились нейроответы ИИ, трафик на сайты стал гораздо меньше, так как пользователь стал получать информацию непосредственно на странице поисковика без перехода на сайт. Но при генерации ответа ИИ указывает источники - ссылки на сайты, информация которых была использована для генерации ответа.

Долгое время у всех был немой вопрос: "Как же теперь оценивать эффективность сайта?". Теперь этот на этот вопрос отчасти отвечает новый инструмент аналитики.
Процитируем справку Яндекса по инструменту:
На запросы пользователей в Поиске может отвечать Алиса AI. Ответы появляются в поисковой выдаче, в объектных ответах и на отдельной вкладке Поиска. В них чаще всего упоминаются страницы сайтов, на которые Алиса AI опиралась при подготовке ответа.

С помощью инструмента Видимость сайта в Алисе AI в Яндекс Вебмастере вы можете:
- узнать долю упоминаний сайта среди источников в ответах Алисы AI в Поиске и отследить динамику изменений;
- посмотреть примеры запросов, по которым страницы сайта показываются в ответах Алисы AI;
- посмотреть примеры сайтов той же тематики, которые часто упоминаются в генеративной выдаче.
Данные отображаются за последние 3 месяца и обновляются каждую неделю.

Статистика собирается только по тем запросам, по которым ваш сайт уже находится достаточно высоко в поисковой выдаче. Это позволяет анализировать видимость именно в той нише, где вы заинтересованы в продвижении, и избегать «размытия» по малозначимым для вас запросам.

Кроме того, такой подход обусловлен работой Алисы AI: она строит ответ с опорой на самые релевантные, информативные и качественные страницы, которые обычно занимают высокие позиции в Поиске.

Чтобы увидеть статистику вашего сайта в меню Яндекс.Вебмастера перейдите в раздел "Эффективность" и далее в "Показы сайта в Алисе AI".

В начале февраля 2026г. был вебинар с Михаилом Сливинским - амбассадором Поиска Яндекса, и в рамках вебинара была озвучена просьба сделать такой инструмент. Скорее всего разработка на тот момент уже велась, потому что от просьбы до релиза прошло около 2-х месяцев. В любом случае хорошо, что такая статистика появилась.

Показы сайта в Алисе AI в вашем Яндекс,Вебмастере.

@joomlafeed

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

Restorator

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Fatal error: Class 'JConfig' not found in "корень/md/market.php" on line 24

market.php :

Код: php
строка 23. include '../configuration.php';
строка 24. $cfg = new JConfig();

Подскажите, пожалуйста, как исправить ошибку.
Ашипка в указании пути до файла конфигурации
Либо указать относительный путь либо полный
../../configuration.php или ./configuraton.php
Каждое двоеточие подьем на один уровень вверх, в этом случае вначале в папку мд потом в корень
Помоему так, если ошибся, прошу не пинать, давно это было
*

text

  • Захожу иногда
  • 93
  • 0 / 0
Яндекс пишет (дал файл, тот что наверху, без изменений пути к configuration.php):
Детали валидации YML файла

--------------------------------------------------------------------------------
http://www.site.ru/md/market.php
[2010-10-02 16:56:08] (Fatal) [1:4] (Fatal) 521 Error parsing XML feed: Unknown element 'br'
--------------------------------------------------------------------------------

Где и как исправить?


*

text

  • Захожу иногда
  • 93
  • 0 / 0
Пробовал так, тоже не работает
www.site.ru/index.php?page=product.csv_upload&option=com_virtuemart&func=export_yml

J 1.0.12
VM 1.0.
*

text

  • Захожу иногда
  • 93
  • 0 / 0
Скачал и установил com_csv_improved_0.9.zip. Вот ссылка: http://joomlaforum.ru/index.php/topic,54241.0.html#msg342063
Сделал экспорт CSVI Product Export.
Закачал в папку www.site.ru/md/CSV_expUtf8.csv ( utf без БОМ)
Яндекс пишет
Детали валидации YML файла

--------------------------------------------------------------------------------
http://www.site.ru/md/CSV_expUtf8.csv
[2010-10-02 19:23:21] (Fatal) [1:1] (Fatal) 521 Error parsing XML feed: Invalid document structure

Пробовал csv с ANSI - тоже ошибка.

Опять попытался с market.php

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

--------------------------------------------------------------------------------
http://www.site.ru/md/market.php
[2010-10-02 19:29:08] (Fatal) [1:4] (Fatal) 521 Error parsing XML feed: Unknown element 'br'
--------------------------------------------------------------------------------

Что исправить в market.php для Яндекса?
« Последнее редактирование: 02.10.2010, 19:36:50 от text »
*

text

  • Захожу иногда
  • 93
  • 0 / 0
Цитировать
Error parsing XML feed: Unknown element 'br'

Где искать этот элемент 'br'?
*

skyscraper

  • Захожу иногда
  • 252
  • 47 / 2
для mail.торг делал кто-нить парсер? можете поделиться?
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
парсер не делал, а выгрузку делал
*

aks99

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Использовал скрипт из начала топика - все работает. Yandex (Содержимое сайта/Товары и цены) принимает товары , но не хочет запоминать ссылку с **.php , насколько я понял ему нужен именно путь на  yml файл. Что надо сделать, что бы при обращении к скрипту он сохранял yml файл локально на сайте ?
*

text

  • Захожу иногда
  • 93
  • 0 / 0
Где искать этот элемент 'br'?
Подскажите, пожалуйста, если знаете
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
В описании товаров наверное
*

text

  • Захожу иногда
  • 93
  • 0 / 0
В описании товаров наверное

В файле flypage.php имеются символы переноса вида  <br />. Эти элементы?

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

--------------------------------------------------------------------------------
http://www.site.ru/md/market.php
[2010-10-02 19:29:08] (Fatal) [1:4] (Fatal) 521 Error parsing XML feed: Unknown element 'br'
--------------------------------------------------------------------------------

А как можно автоматически удалять эти элементы 'br' из описания,
может посоветуете, где изменить в "market.php"?
« Последнее редактирование: 04.10.2010, 20:17:20 от text »
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
вот пример:
echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";
*

skyscraper

  • Захожу иногда
  • 252
  • 47 / 2
Alex Revo
я про выгрузку и имел ввиду, можешь скинуть пример?
*

chip_n

  • Захожу иногда
  • 82
  • 9 / 0
  • Я еще только учусь ...
Помогите пожалуйста!
при выгрузке пишет:
Ошибки:
Адрес YML: Ошибка при заполнении полей
URL YML-файла: Хост YML-файла не совпадает с хостом магазина


пишу - localhost !?
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
а писать нужно урл вашего сайта
*

chip_n

  • Захожу иногда
  • 82
  • 9 / 0
  • Я еще только учусь ...
а писать нужно урл вашего сайта
Спасибо!))
*

chip_n

  • Захожу иногда
  • 82
  • 9 / 0
  • Я еще только учусь ...
Ребята, подскажите пожалуйста, что не так?!
Яндекс выдает: Неизвестная ошибка при обработке

У меня такой код:

Код
<?php
$hostname = "www.ukrsports.com.ua";
$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());
//mysql_query('set names utf8');

include '../configuration.php';

$cfg = new JConfig();


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>UkrSports</name>\n";
echo"<company>UkrSports</company>\n";
echo"<url>ukrsports.com.ua</url>\n";
echo"<currencies>\n";
echo"<currency  id=\"UAN\" rate=\"1\"/>\n";
echo"<currency  id=\"USD\" rate=\"8\"/>\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_publish='Y' and 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";



$tb_product                 = $cfg->dbprefix."vm_product";

$tb_manufacturer            = $cfg->dbprefix."vm_manufacturer";

$tb_product_mf_xref         = $cfg->dbprefix."vm_product_mf_xref";

$tb_category                = $cfg->dbprefix."vm_category";

$tb_product_category_xref    = $cfg->dbprefix."vm_product_category_xref";

$tb_price                    = $cfg->dbprefix."vm_product_price";



$query = "

SELECT

    $tb_product.product_id,

    $tb_product.product_name,

    $tb_manufacturer.mf_name,

    $tb_manufacturer.manufacturer_id,

    $tb_category.category_name,

    $tb_category.category_id,

    $tb_product_category_xref.category_id,

    $tb_price.product_price,

    $tb_product.product_sku,

    $tb_product.product_in_stock,

    $tb_product.product_unit,

    $tb_product.product_full_image,

    $tb_product.product_s_desc,

    $tb_product.product_weight

FROM

    ($tb_product_category_xref

RIGHT JOIN ($tb_price

RIGHT JOIN (($tb_product_mf_xref

RIGHT JOIN $tb_product

ON $tb_product_mf_xref.product_id = $tb_product.product_id)

LEFT JOIN $tb_manufacturer

ON $tb_product_mf_xref.manufacturer_id = $tb_manufacturer.manufacturer_id)

ON $tb_price.product_id = $tb_product.product_id)

ON $tb_product_category_xref.product_id = $tb_product.product_id)

LEFT JOIN $tb_category

ON $tb_product_category_xref.category_id = $tb_category.category_id

WHERE $tb_product.product_publish='Y' and $tb_product.product_in_stock>0

";



$row = d2a($query);

$product_log = Array();

for($i=0;$i<count($row);$i++) {

    if (!in_array($row[$i]['product_id'],$product_log) AND ($row[$i]['product_price'])) {

        $product_log[] = $row[$i]['product_id'];


        $url="http://ukrsports.com.ua/index.php?option=com_virtuemart&Itemid=".$Itemid['Itemid']."&category_id=".$row_cat['category_id']."&flypage=flypage.tpl&lang=ru&limitstart=0&page=shop.product_details&product_id=".$row['product_id'];

        $product_full_image = "http://ukrsports.com.ua/components/com_virtuemart/shop_image/product/".$row[$i]['product_full_image'];

        $tags = Array ('{product_name}','{product_desc}');

        $repl = Array ($row[$i]['product_name'],$row[$i]['product_s_desc']);

        $product_price = substr($row[$i]['product_price'], 0, -3);

        $product_cat_id=$row[$i]['category_id'];

        echo"\n<offer id=\"".$row[$i]['product_id']."\" available=\"true\" bid=\"$bid\">\n";

        echo"<url>".$url."</url>\n";

        echo"<price>$product_price</price>\n";

        // Валюта в которой указаны Ваши цены

        echo"<currencyId>UAN</currencyId>\n";

        echo"<categoryId>".$product_cat_id."</categoryId>\n";

        echo"<picture>".$product_full_image ."</picture>\n";

        // Возможность доставки

        echo"<delivery>true</delivery> \n";

        echo"<name>".HtmlSpecialChars(strip_tags($row[$i]['product_name']))."\"</name>\n";

        echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";

        echo"</offer>\n";

    }

}



echo"</offers>\n";
echo"</shop>\n";
echo"</yml_catalog>\n";
function d2a($query){

    $result = mysql_query($query) or die("Query failed : " . mysql_error());

    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$res[] = $line;}

    mysql_free_result($result);

    return $res;

}


?>

У меня "joomla 1.5.20" "virtuemart 1.1.4" и "sh404SEF"
« Последнее редактирование: 06.10.2010, 14:47:04 от chip_n »
*

text

  • Захожу иногда
  • 93
  • 0 / 0
вот пример:
echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";

Вставил код так

Код: 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();

если через Яндекс, то ошибка такая

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

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

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







« Последнее редактирование: 11.10.2010, 19:04:25 от text »
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
Заработал скрипт из этого поста. Плюс автору
http://joomlaforum.ru/index.php/topic,59209.msg363696.html#msg363696

Теперь вопрос по безопасности сайта. Какие права на папку и на сам файл выставлять и нет ли возможности навредить сайту через этот php файл
*

inneta

  • Новичок
  • 8
  • 1 / 0
У меня ну никак не получается - тот же скрипт установлен,
joomla 1.5.5 +  VirtueMart 1.1.4, БД в utf-8.
вроде все поменяла, все посты прочитала - но я не программист :-X
И так и сяк пробовала - ничего не получается - либо крокозябры, либо нет соединения пишет((

Пожалуйста, посмотрите  - что не так? :'(

 ^-^
Ссылку удалила - все работает, -ОГРОМНОЕ ВСЕМ СПАСИБО!
« Последнее редактирование: 28.10.2010, 12:10:16 от inneta »
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
киньте файл в корень сайта и хотя бы соединение будет...
*

inneta

  • Новичок
  • 8
  • 1 / 0
Кинула - пусто
« Последнее редактирование: 28.10.2010, 12:08:04 от inneta »
*

inneta

  • Новичок
  • 8
  • 1 / 0
Попробовала заново:
Взяла файл с первой страницы и снова выгрузила его!
Хотя бы что-то получилось - хоть не пусто!
Но вот что Яндекс пишет:

Определена кодировка: utf-8 (строка 0, столбец 0)
Дата из файла: 2010-10-12 19:46 (строка 3, столбец 113)
[2010-10-12 19:46:28] (Fatal) [26:69] (Fatal) 521 Error parsing XML feed: Unterminated entity reference, 'flypage'

Да чтоже такое-:(((


Упс.....
Вот (забыла в том файле раскоментировать одну и закоментировать другую строки))) :
Детали валидации YML файла:


Определена кодировка: utf-8 (строка 0, столбец 0)
Дата из файла: 2010-10-12 20:09 (строка 3, столбец 113)
Успешно обработано 31 предложений из 31

кодировка: utf-8 - это плохо?

P.S:
Так как у яндекса маркета файл прошел - пишу - если все корректно работает, файл создается - то кодировка utf-8 - тоже нормально проходит.
У меня в IE не отображается вообще, в опере и мазилле и фаерфоксе - с крокозябрами - но это ничего, главное что у маркета читается на его стороне)))))
« Последнее редактирование: 28.10.2010, 12:14:37 от inneta »
*

andx

  • Захожу иногда
  • 111
  • 6 / 0
подскажите пожалуйста как выводить артикул? На прошлых страницах видел ответ, сказали надо <vendorCode> прописать, вот только не пойму куда в скрипт и что конкретно прописывать

UPD:
разобрался сам, просто добавил в нужное место шаблона
Код
echo"<vendorCode>".HtmlSpecialChars($row[$i]['product_sku'])."</vendorCode>\n";
« Последнее редактирование: 14.10.2010, 14:24:43 от andx »
*

MxR

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Доброго времени суток. Помогите, пожалуйста, не работает выгрузка !
Joomla 1.5.14
VM 1.1.4

Я.маркет при загрузке выдает ошибку:

Определена кодировка: windows-1251 (строка 0, столбец 0)
Дата из файла: 2010-10-17 03:02 (строка 3, столбец 113)
[2010-10-17 04:02:51] (Fatal) [72:9] (Fatal) 521 Error parsing XML feed: Element 'name' 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*)'

Мой код выгрузки:
Код
<?php
include '../configuration.php';
$cfg = new JConfig();
$cfg_name = 'название';
$cfg_company = 'организация';
$cfg_url = 'МОЙ САЙТ';

$description_template = '{product_desc}';
// Ставка за клик (в центах)
$bid = '11';

$hostname = $cfg->host;
$username = $cfg->user;
$password = $cfg->password;
$dbName = $cfg->db;
$category = $cfg->dbprefix."vm_category";
$category_xref = $cfg->dbprefix."vm_category_xref";
$userstable = $cfg->dbprefix."vm_product";
$pricetable = $cfg->dbprefix."vm_product_price";
$product_category_xref = $cfg->dbprefix."vm_product_category_xref";
$product_discount = $cfg->dbprefix."vm_product_discount";

mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
mysql_select_db($dbName) or die(mysql_error());

mysql_query('set names cp1251');

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>$cfg_name</name>\n";
echo"<company>$cfg_company</company>\n";
echo"<url>$cfg_url</url>\n";

echo"<currencies>\n";
echo"<currency  id=\"RUR\" rate=\"1\"/>\n";
echo"<currency  id=\"USD\" rate=\"CBRF\"/>\n";
echo"<currency  id=\"EUR\" rate=\"CBRF\"/>\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";

$tb_product = $cfg->dbprefix."vm_product";
$tb_manufacturer = $cfg->dbprefix."vm_manufacturer";
$tb_product_mf_xref = $cfg->dbprefix."vm_product_mf_xref";
$tb_category = $cfg->dbprefix."vm_category";
$tb_product_category_xref = $cfg->dbprefix."vm_product_category_xref";
$tb_price = $cfg->dbprefix."vm_product_price";

$query = "
SELECT
$tb_product.product_id,
$tb_product.product_discount_id,
$tb_product.product_name,
$tb_manufacturer.mf_name,
$tb_manufacturer.manufacturer_id,
$tb_category.category_name,
$tb_category.category_id,
$tb_product_category_xref.category_id,
$tb_price.product_price,
$tb_price.product_currency,
$tb_product.product_sku,
$tb_product.product_in_stock,
$tb_product.product_unit,
$tb_product.product_full_image,
$tb_product.product_s_desc,
$tb_product.product_weight
FROM
($tb_product_category_xref
RIGHT JOIN ($tb_price
RIGHT JOIN (($tb_product_mf_xref
RIGHT JOIN $tb_product
ON $tb_product_mf_xref.product_id = $tb_product.product_id)
LEFT JOIN $tb_manufacturer
ON $tb_product_mf_xref.manufacturer_id = $tb_manufacturer.manufacturer_id)
ON $tb_price.product_id = $tb_product.product_id)
ON $tb_product_category_xref.product_id = $tb_product.product_id)
LEFT JOIN $tb_category
ON $tb_product_category_xref.category_id = $tb_category.category_id
WHERE $tb_product.product_publish='Y'
";

$row = d2a($query);
$product_log = Array();
for($i=0;$i<count($row);$i++) {
if (!in_array($row[$i]['product_id'],$product_log) AND ($row[$i]['product_price'])) {
$product_log[] = $row[$i]['product_id'];
//ссылка для sh404SEF
$url="http://$cfg_url/index.php?option=com_virtuemart&amp;Itemid=71&amp;category_id=".$row[$i]['category_id']."&amp;flypage=flypage.tpl&amp;lang=ru&amp;page=shop.product_details&amp;product_id=".$row[$i]['product_id'];
$product_full_image = "http://$cfg_url/components/com_virtuemart/shop_image/product/".$row[$i]['product_full_image'];
$tags = Array ('{product_name}','{product_desc}');
$repl = Array ($row[$i]['product_name'],$row[$i]['product_s_desc']);
$product_discount_id = $row[$i]['product_discount_id'];
$product_currency = $row[$i]['product_currency'];
$vendor = $row[$i]['mf_name'];
$product_price = substr($row[$i]['product_price'], 0, -3);
$product_cat_id=$row[$i]['category_id'];
echo"\n<offer id=\"".$row[$i]['product_id']."\" available=\"true\" bid=\"$bid\">\n";
echo"<url>".$url."</url>\n";
$mysql_product_discount = mysql_query("SELECT amount FROM $product_discount WHERE discount_id='$product_discount_id'");
while ($array_product_discount = mysql_fetch_array($mysql_product_discount) )
$product_price = $product_price - $product_price * $array_product_discount['amount']  / 100;
echo"<price>$product_price</price>\n";
if ($product_currency == "RUB"){
         echo"<currencyId>RUR</currencyId>\n";
        } else {
echo"<currencyId>$product_currency</currencyId>\n";
}
echo"<categoryId>".$product_cat_id."</categoryId>\n";
if ($row[$i]['product_full_image']){
        echo"<picture>".$product_full_image ."</picture>\n";
        } else {
}
echo"<delivery>true</delivery> \n";
echo"<vendor>".HtmlSpecialChars($vendor)."</vendor>\n";
echo"<name>".HtmlSpecialChars(strip_tags($row[$i]['product_name']))."</name>\n";
echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";
echo"</offer>\n";
}
}

echo"</offers>\n";
echo"</shop>\n";
echo"</yml_catalog>\n";

function d2a($query){
    $result = mysql_query($query) or die("Query failed : " . mysql_error());
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$res[] = $line;}
    mysql_free_result($result);
    return $res;
}
?>
*

KeeperSergey

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Доброго времени суток. Помогите, пожалуйста, не работает выгрузка !
Joomla 1.5.14
VM 1.1.4

Я.маркет при загрузке выдает ошибку:

Определена кодировка: windows-1251 (строка 0, столбец 0)
Дата из файла: 2010-10-17 03:02 (строка 3, столбец 113)
[2010-10-17 04:02:51] (Fatal) [72:9] (Fatal) 521 Error parsing XML feed: Element 'name' 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*)'

Мой код выгрузки:
Код
<?php
include '../configuration.php';
$cfg = new JConfig();
$cfg_name = 'название';
$cfg_company = 'организация';
$cfg_url = 'МОЙ САЙТ';

$description_template = '{product_desc}';
// Ставка за клик (в центах)
$bid = '11';

$hostname = $cfg->host;
$username = $cfg->user;
$password = $cfg->password;
$dbName = $cfg->db;
$category = $cfg->dbprefix."vm_category";
$category_xref = $cfg->dbprefix."vm_category_xref";
$userstable = $cfg->dbprefix."vm_product";
$pricetable = $cfg->dbprefix."vm_product_price";
$product_category_xref = $cfg->dbprefix."vm_product_category_xref";
$product_discount = $cfg->dbprefix."vm_product_discount";

mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
mysql_select_db($dbName) or die(mysql_error());

mysql_query('set names cp1251');

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>$cfg_name</name>\n";
echo"<company>$cfg_company</company>\n";
echo"<url>$cfg_url</url>\n";

echo"<currencies>\n";
echo"<currency  id=\"RUR\" rate=\"1\"/>\n";
echo"<currency  id=\"USD\" rate=\"CBRF\"/>\n";
echo"<currency  id=\"EUR\" rate=\"CBRF\"/>\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";

$tb_product = $cfg->dbprefix."vm_product";
$tb_manufacturer = $cfg->dbprefix."vm_manufacturer";
$tb_product_mf_xref = $cfg->dbprefix."vm_product_mf_xref";
$tb_category = $cfg->dbprefix."vm_category";
$tb_product_category_xref = $cfg->dbprefix."vm_product_category_xref";
$tb_price = $cfg->dbprefix."vm_product_price";

$query = "
SELECT
$tb_product.product_id,
$tb_product.product_discount_id,
$tb_product.product_name,
$tb_manufacturer.mf_name,
$tb_manufacturer.manufacturer_id,
$tb_category.category_name,
$tb_category.category_id,
$tb_product_category_xref.category_id,
$tb_price.product_price,
$tb_price.product_currency,
$tb_product.product_sku,
$tb_product.product_in_stock,
$tb_product.product_unit,
$tb_product.product_full_image,
$tb_product.product_s_desc,
$tb_product.product_weight
FROM
($tb_product_category_xref
RIGHT JOIN ($tb_price
RIGHT JOIN (($tb_product_mf_xref
RIGHT JOIN $tb_product
ON $tb_product_mf_xref.product_id = $tb_product.product_id)
LEFT JOIN $tb_manufacturer
ON $tb_product_mf_xref.manufacturer_id = $tb_manufacturer.manufacturer_id)
ON $tb_price.product_id = $tb_product.product_id)
ON $tb_product_category_xref.product_id = $tb_product.product_id)
LEFT JOIN $tb_category
ON $tb_product_category_xref.category_id = $tb_category.category_id
WHERE $tb_product.product_publish='Y'
";

$row = d2a($query);
$product_log = Array();
for($i=0;$i<count($row);$i++) {
if (!in_array($row[$i]['product_id'],$product_log) AND ($row[$i]['product_price'])) {
$product_log[] = $row[$i]['product_id'];
//ссылка для sh404SEF
$url="http://$cfg_url/index.php?option=com_virtuemart&amp;Itemid=71&amp;category_id=".$row[$i]['category_id']."&amp;flypage=flypage.tpl&amp;lang=ru&amp;page=shop.product_details&amp;product_id=".$row[$i]['product_id'];
$product_full_image = "http://$cfg_url/components/com_virtuemart/shop_image/product/".$row[$i]['product_full_image'];
$tags = Array ('{product_name}','{product_desc}');
$repl = Array ($row[$i]['product_name'],$row[$i]['product_s_desc']);
$product_discount_id = $row[$i]['product_discount_id'];
$product_currency = $row[$i]['product_currency'];
$vendor = $row[$i]['mf_name'];
$product_price = substr($row[$i]['product_price'], 0, -3);
$product_cat_id=$row[$i]['category_id'];
echo"\n<offer id=\"".$row[$i]['product_id']."\" available=\"true\" bid=\"$bid\">\n";
echo"<url>".$url."</url>\n";
$mysql_product_discount = mysql_query("SELECT amount FROM $product_discount WHERE discount_id='$product_discount_id'");
while ($array_product_discount = mysql_fetch_array($mysql_product_discount) )
$product_price = $product_price - $product_price * $array_product_discount['amount']  / 100;
echo"<price>$product_price</price>\n";
if ($product_currency == "RUB"){
         echo"<currencyId>RUR</currencyId>\n";
        } else {
echo"<currencyId>$product_currency</currencyId>\n";
}
echo"<categoryId>".$product_cat_id."</categoryId>\n";
if ($row[$i]['product_full_image']){
        echo"<picture>".$product_full_image ."</picture>\n";
        } else {
}
echo"<delivery>true</delivery> \n";
echo"<vendor>".HtmlSpecialChars($vendor)."</vendor>\n";
echo"<name>".HtmlSpecialChars(strip_tags($row[$i]['product_name']))."</name>\n";
echo"<description>".HtmlSpecialChars(strip_tags(str_replace($tags,$repl,$description_template)))."</description>\n";
echo"</offer>\n";
}
}

echo"</offers>\n";
echo"</shop>\n";
echo"</yml_catalog>\n";

function d2a($query){
    $result = mysql_query($query) or die("Query failed : " . mysql_error());
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$res[] = $line;}
    mysql_free_result($result);
    return $res;
}
?>

Употребляешь в названии компании символы " или &  ?
*

MxR

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Употребляешь в названии компании символы " или &  ?
Нет.  Есть названия некоторых товаров на укр. языке(незнаю влияет ли это).
*

kysin

  • Захожу иногда
  • 247
  • 4 / 0
Вопрос такой:
В CSVI VirtueMart в разделе "Экспорт" нажимаю кнопку экспорта и весь файл YML.xml выводится на экран, а не сохраняется в файле, как ему положено.
Это произошло после замены стандартного скрипта на скрипт из этого поста: http://joomlaforum.ru/index.php/topic,59209.msg363696.html#msg363696
Скрипт работает отлично, но вывод происходит на экран. Поэтому приходится копировать результаты в файл, сохранять в файл, заливать на хостинг.
Кто знает, почему не происходит сохранения? Заранее спасибо!
*

Alex Revo

  • Завсегдатай
  • 1995
  • 109 / 0
потому что скрипт так запрограммирован
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор Centoff

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

Автор Gruz

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

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

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

Автор zmeyx

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

Автор gaalferov

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