Создаю yml файл, ну как создаю... здернул код и точу под себя. Joomla 3.4.8 Virtuemart 3.0.12 Код (CODE): <?php //*********************************************************** // // Версия коннектора к Yandex.Market от 18.04.2009 // автор доработок Саид Дашук (dashuk@ngs.ru) // // Доработки: // 1. Подключение к настройкам Joomla (теперь не надо прописывать реквизиты доступа к БД, // а достаточно указать конфигурационный файл 'configuration.php') // 2. Добавлены комментарии для новичков // 3. ВЫБОРКА ВСЕХ ТОВАРОВ ПРОИСХОДИТ ОДНИМ ЗАПРОСОМ! // 4. Добавлен шаблон для описания товара (тег <description>) // 5. Курсы валют, приравнены к курсу ЦБРФ // 6. Добавлены теги "доставка" и "производитель" (просто мне они нужны, а Вы решайте сами) // а также: форматирование для удобства кода и вывода и еще что то по мелочам. // // Проверялось на Joomla! 1.5.9 Production/Stable / VirtueMart 1.1.2 stable // //*********************************************************** // Пропишите относительный путь к 'configuration.php' (он находится в корне Joomla) // Например: include '../configuration.php'; include 'configuration.php'; $cfg = new JConfig(); //NAME - Короткое название магазина (название, которое выводится в списке найденных на Яндекс.Маркете товаров. //Не должно содержать более 20 символов). Нельзя использовать слова, не имеющие отношения к //наименованию магазина ("лучший", "дешевый"), указывать номер телефона и т.п. Название магазина, //должно совпадать с фактическим названием магазина, которое публикуется на сайте. При несоблюдении //данного требования наименование может быть изменено Яндексом самостоятельно без уведомления Клиента. $cfg_name = $cfg->fromname; //Полное наименование компании, владеющей магазином. Не публикуется, используется для внутренней идентификации. $cfg_company = $cfg->sitename; //URL-адрес главной страницы магазина без http:// $cfg_url = 'domain.ru'; // Шаблон для описания товара // Вместо {product_name} - будет вставлено наименование товара // Вместо {product_desc} - будет вставлено краткое описание // ПРИМЕР: // $description_template = '{product_name} от производителя'; $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"; mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); mysql_select_db($dbName) or die(mysql_error()); // Исправьте, если у вас другая кодировка в БД mysql_query('set names utf8'); echo"<?xml version=\"1.0\" encoding=\"utf-8\"?>\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_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' "; $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://$cfg_url/index.php?page=shop.product_details&flypage=shop.flypage&option=com_virtuemart&product_id=".$row[$i]['product_id']; //$url="http://$cfg_url/client?page=shop.product_details&flypage=flypage-ask.tpl&product_id=".$row[$i]['product_id']."&category_id=".$row[$i]['category_id']."&manufacturer_id=".$row[$i]['manufacturer_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_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>RUR</currencyId>\n"; echo"<categoryId>".$product_cat_id."</categoryId>\n"; echo"<picture>".$product_full_image ."</picture>\n"; // Возможность доставки echo"<delivery>true</delivery> \n"; echo"<name>".strip_tags($row[$i]['product_name'])."\"</name>\n"; echo"<description>".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; } ?> .htpaccess Код (CODE): IndexIgnore * Options +FollowSymlinks Options -Indexes RewriteEngine On RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR] RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) RewriteRule .* index.php [F] # RewriteBase / RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_URI} !^/index\.php RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L] AddHandler x-httpd-php5 .yml <FilesMatch "\.(yml|php)$"> SetHandler application/x-httpd-php </FilesMatch> при открытии domain.ru/market.yml мне выдает Код (CODE): Имя магазина Имя магазина domain.ru Table 'nameDB.gqka7_vm_category_xref' doesn't exist в чем может быть проблема?