Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

orexov_m

  • Захожу иногда
  • 297
  • 24 / 0
как вывести типы товаров в Яндекс маркет?
Помогите оч надо :(
Skype:orekhov.mikhail, ICQ: 580077720, Телега
*

Satool

  • Захожу иногда
  • 139
  • 2 / 0
как вывести типы товаров в Яндекс маркет?
Помогите оч надо :(

Вот где храниться тип товара - jos_vm_product_type
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Рабочая версия выгрузки для Яндекс-маркет в аттаче
В конфиге естественно внести свои данные, запускать из админки, предварительно вывести ссылку на xml/index.php


[вложение удалено Администратором]
*

pcom

  • Новичок
  • 6
  • 0 / 0
2 wounderer
Спасибо!
У меня очень глупый, как запустить скрипт из админки ?
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
во первых немного обманул, и файл XML генерить через index_old.php

Запустить из админки - достаточно ссылку вставить в VirtueMart себе для примера..

А вообще там немного спецификация устаревшая оказалась, как сейчас поглядел. shops.dtd нужно обновить
*

victoribr

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Попробовал последнюю версию файла, все заработало, но что-то товары дублируются, причем во втором дубле идет цена отличная от первой. Проверил данные, вторая цена правильно указана, а первая ниже, не пойму от куда она берется. Я уже устанавливал похожий скрипт, там была проблема таже, выводился товар в единичном варианте, но цена то была правильной, то была немного ниже. От куда она вылазит, не могу понять!! Помогите, может кто поможет. Вот код последней версии, где дублируется товар:
Код
<?php
$domen_url = $_SERVER['HTTP_HOST'];
$url_poisk = "http://".$domen_url."/administrator/index.php";
if (strstr($_SERVER['HTTP_REFERER'], $url_poisk) == false )
  {
    echo "У Вас нет доступа. Выполните это действие через админку сайта!";
    die;
  }


include "../configuration.php";
include "config.php";

$handle = fopen("xml.xml", "w+");
$date=date("Y-m-d H:i");

$text = "<?xml version=\"1.0\" encoding=\"windows-1251\"?>
<!DOCTYPE yml_catalog SYSTEM \"shops.dtd\">
<yml_catalog date=\"$date\">
<shop>
<name>Дорвин Екатеринбург</name>
<company>Дорвин</company>
<url>http://dorvin.ru</url>
<currencies>
<currency id=\"RUR\" />
</currencies>";
 
 
$text .= "<categories>";

$mysql_query_category = mysql_query("SELECT category_id, category_name FROM jos_vm_category" );
while($array_query_category = mysql_fetch_array($mysql_query_category))   
    {
  $category_id = $array_query_category['category_id'];
  $category_name = htmlspecialchars( $array_query_category['category_name'] );
  $text .= "<category id='$category_id'>$category_name</category>";
  $category_id_massiv[] = $array_query_category['category_id'];
  }
$text .= "</categories>";
   
  $text .= "<offers>";
  foreach ($category_id_massiv AS $category_id)
    {
      $mysql_query_product = mysql_query("SELECT
      jos_vm_product_category_xref.product_id,       
      jos_vm_product.product_id,
      product_name,
      product_s_desc,
  product_in_stock,
      product_thumb_image,
      product_s_desc
      FROM jos_vm_product, jos_vm_product_category_xref
      WHERE jos_vm_product_category_xref.product_id=jos_vm_product.product_id
      AND product_publish='Y'
        AND
      jos_vm_product_category_xref.category_id='$category_id' " );
     
      while ($array_query_product = mysql_fetch_array($mysql_query_product))
        {         
         $product_id   = $array_query_product['product_id'];
         $product_name = htmlspecialchars($array_query_product['product_name']);
         $picture      = $array_query_product['product_thumb_image'];
         $description  = htmlspecialchars($array_query_product['product_s_desc']);
           
          $mysql_query_price = mysql_query ("SELECT product_price FROM jos_vm_product_price
           WHERE product_id='$product_id'");
          while ($array_query_price = mysql_fetch_array($mysql_query_price))
          {
 
          $product_in_stock  = htmlspecialchars($array_query_product['product_in_stock']);
  if($product_in_stock == 0) { $aviable = 'false'; }
  else { $aviable = 'true'; }
         $text .= "<offer id='".$product_id."' available='".$aviable."'>";   
    $url_f = htmlspecialchars("http://$domen_url/index.php?page=shop.product_details&option=com_virtuemart&flypage=shop.flypage&product_id=$product_id&category_id=$category_id");
   
         $text.="<url>".$url_f."</url>\n";               
         $text .= "<price>". ceil ($array_query_price['product_price'])."</price>\n";           
         $text .= "<currencyId>RUR</currencyId>\n";
         $text .= "<categoryId>$category_id</categoryId>\n";
         $text .= "<picture>http://".$domen_url."/components/com_virtuemart/shop_image/product/$picture</picture>\n";
         $text .= "<store>true</store>\n"; 
         $text .= "<pickup>true</pickup>\n"; 
         $text .= "<name>$product_name</name>\n"; 
         $text .= "<description>$description</description>\n";
         $text .= "<manufacturer_warranty>true</manufacturer_warranty>\n";
         $text .= "</offer>\n";
$xmltext .= "\n";
         }
           
        }
       
    }
 
 
  $text.="</offers></shop></yml_catalog>";
   
  $fwrite_pro = fwrite ($handle, $text);
  fclose ($handle);
 
  if ($fwrite_pro)
  echo "YAndex.Market файл успешно создан";
  else echo "Произошла ошибка, попробуйте обновить данную страницу";

?>

ВОт кусочек кода XML:
Код
<offer id='33' available='true'><url>http://dorvin.ru/index.php?page=shop.product_details&amp;option=com_virtuemart&amp;flypage=shop.flypage&amp;product_id=33&amp;category_id=7</url>
<price>13100</price>
<currencyId>RUR</currencyId>
<categoryId>7</categoryId>
<picture>http://dorvin.ru/components/com_virtuemart/shop_image/product/resized/_________________4b69824201ee9_200x200.jpg</picture>
<store>true</store>
<pickup>true</pickup>
<name>Стальная дверь Форпост SM 01/2</name>
<description>Двухстворчатая стальная дверь. Порошковое покрытие, возможна установка на улицу, цвет медный антик, толщина 67мм, 1 замок.</description>
<manufacturer_warranty>true</manufacturer_warranty>
</offer>
<offer id='33' available='true'><url>http://dorvin.ru/index.php?page=shop.product_details&amp;option=com_virtuemart&amp;flypage=shop.flypage&amp;product_id=33&amp;category_id=7</url>
<price>13300</price>
<currencyId>RUR</currencyId>
<categoryId>7</categoryId>
<picture>http://dorvin.ru/components/com_virtuemart/shop_image/product/resized/_________________4b69824201ee9_200x200.jpg</picture>
<store>true</store>
<pickup>true</pickup>
<name>Стальная дверь Форпост SM 01/2</name>
<description>Двухстворчатая стальная дверь. Порошковое покрытие, возможна установка на улицу, цвет медный антик, толщина 67мм, 1 замок.</description>
<manufacturer_warranty>true</manufacturer_warranty>
</offer>
*

victoribr

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Нашел причину, просто в таблице с ценами почему-то было по две строки на товар, удалил дубли и все стало нормально
У меня возникла другая проблема, как добавить производителя в данном скрипте, все перепробовал, не могу понять как сделать запрос в базу данных.
http://dorvin.ru/yamarket/03.05.2011.rar
*

johnl

  • Новичок
  • 3
  • 0 / 0
Привет всем перечитал все 21 страницы перепробовал все варианты везде при загрузке на Яндекс выходили ошибки. на последнюю
Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: An exception occurred! Type:UTFDataFormatException, Message:invalid byte 2 (а) of a 2-byte sequence. (строка 1, столбец 1)
до этого
Определена кодировка: windows-1251 (строка 0, столбец 0)
Дата из файла: 2011-05-08 20:46 (строка 3, столбец 127)
Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: Expected entity name for reference (строка 3567, столбец 16)
хотя страница с номенклатурой генерируется хотел попробовать обработку для 1с которая была выложена но ссылка на нее устарела и скачать ее не получилось помогите кто может
вот код
<?php
//***********************************************************
//
// Версия коннектора к Yandex.Market от 18.04.2009
// автор доработок Саид Дашук (dashuk@ngs.ru)
//
// Доработки:
// 1. Подключение к настройкам Joomla (теперь не надо прописывать реквизиты доступа к БД,
//         а достаточно указать конфигурационный файл 'configuration.php')
// 2. Добавлены комментарии для новичков
// 3. ВЫБОРКА ВСЕХ ТОВАРОВ ПРОИСХОДИТ ОДНИМ ЗАПРОСОМ!
// 4. Добавлен шаблон для описания товара (тег <description>)
// 5. Rурсы валют, приравнены к курсу ЦБРФ
// 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-адрес главной страницы магазина
$cfg_url = 'komppom.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 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>Компьютерная помощь</name>\n";
echo"<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&amp;flypage=shop.flypage&amp;option=com_virtuemart&amp;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;
}

?>
*

johnl

  • Новичок
  • 3
  • 0 / 0
Проошлую ошибку исправил теперь другая
Определена кодировка: windows-1251 (строка 0, столбец 0)
Дата из файла: 2011-05-09 00:30 (строка 3, столбец 127)
Ошибка: Invalid delivery value: The delivery must be false for offline only shop (строка 10115, столбец 10)
Ошибка: Предложение отклонено: http://komppom.ru/index.php?page=shop.product_details&flypage=shop.flypage&option=com_virtuemart&product_id=5705 (строка 158, столбец 9)
Ошибка: Invalid delivery value: The delivery must be false for offline only shop (строка 10115, столбец 10)
и так на каждую строку в файле где есть тег </offer>
Помогите
*

victoribr

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Скачай лучше этот вариант http://dorvin.ru/yamarket/03.05.2011.rar, там немного под себя доработай. Единственный минус, нет производителя, мне так никто и не хочет написать, как его добавить:(. А так очень хороший скрипт, Яндекс его принял с первого раза.
*

indigo

  • Захожу иногда
  • 71
  • 1 / 0
Этот скрипт работает для 1.1.7? и киньте ссылку откуда качать, пожалуйста.
*

dsd10

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Ошибка: Не указано название предложения (строка 36, столбец 9)
Ошибка: Предложение отклонено: http://******
------и так на каждой позиции--------
как с этим бороться?
*

victoribr

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Вы про какую версию
*

a_pesikov

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Копался, копался а версию с выводом цены с учетом скидок не нашел :(  Есть в природе такая?
*

jwb

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Пробовал вот этот скрипт http://dorvin.ru/yamarket/03.05.2011.rar, при этом создается файл в котором только название и сайт магазина, никакого описания товара нет. Как с этим бороться?
*

Master of Magic

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
Так же столкнулся с проблемой дублей, решение удаление группы покупателей (у меня почему то было две группы по умолчанию) и затем удаление товаров для этой "второй" группы.
Для тех у кого не работает или что-то глючит выкладываю свой скрипт. VM 1.1.7 Stable. Лично мне нужна была еще проверка наличия на складе, по этому добавил проверку product_in_stock, если товаров на складе 0 они не публикуются. Так же там есть поле вывода производителя.
Код
$row[$i]['mf_name']

dsd10
У вас скорей всего ошибка с типами описания, делайте теги именно так как написано:
http://help.yandex.ru/webmaster/?id=1111247
Цитировать
Упрощенное описание

Это базовый, наиболее простой тип описания. Другие типы описаний, специфичные для различных категорий товаров, приведены в разделе «Дополнительные типы описаний».
В упрощенном описании можно использовать только теги:

Цитировать
<offer id="12346" available="true">
    <url></url>
    <price></price>
    <currencyId></currencyId>
    <categoryId></categoryId>
    <picture></picture>
    <delivery></delivery>
    <local_delivery_cost></local_delivery_cost>
    <name></name>
    <vendor></vendor>
    <vendorCode></vendorCode>
    <description></description>
    <country_of_origin></country_of_origin>
</offer>
Все! Ни какие другие нельзя! Еще выяснил, что так же важен порядок тегов, то есть как они написаны в примере так и должны идти друг за другом.

ЗЫ еще нарыл, почему то в Яндекс помощи не нашел:
available="false" - товарное предложение на заказ.

Второй вариант во вложении с проверкой если на складе товар не равен нулю, то выводит:
<offer id="12346" available="true">
Если равен нулю:
<offer id="12346" available="false">
Оба скрипта проходят проверку в маркете.



[вложение удалено Администратором]
« Последнее редактирование: 03.06.2011, 22:50:04 от Master of Magic »
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
ЗЫ еще нарыл, почему то в Яндекс помощи не нашел:
available="false" - товарное предложение на заказ.

Второй вариант во вложении с проверкой если на складе товар не равен нулю, то выводит:
<offer id="12346" available="true">
Если равен нулю:
<offer id="12346" available="false">
Оба скрипта проходят проверку в маркете.
А как сделать так что бы товар при скрытии или количестве 0 не подгружался в YML и не уходил на прилавок Яндекс маркета ?
А то уже 1 ошибку заработали...
Цитировать
В ходе проверок службы контроля качества, проводимых в отношении вашего магазина byphone24.ru, мы обнаружили следующую ошибку: 
Товар: Samsung GT-I9000 Galaxy S White" 
URL товара: http://byphone24.ru/index.php?page=shop.product_details&flypage=shop.flypage&option=com_virtuemart&product_id=60
Тип ошибки: 2174190 нет статуса "под заказ"
Выручайте пожалуйста  !
*

Master of Magic

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
Цитировать
А как сделать так что бы товар при скрытии или количестве 0 не подгружался в YML и не уходил на прилавок Яндекс маркета ?
А то уже 1 ошибку заработали...
Вообще-то, если товар не опубликован, то он в yml не выгружается.
Что-бы в зависимости от наличия товара на складе в карточке товара писалось - есть в наличии, под заказ в flypage я прописал:
Код
<?php if ($product_in_stock < 1 ) { ?> 
<?php echo $VM_LANG->_('PHPSHOP_ORDER_LIST_STATUS')?>: &nbsp;&nbsp;<?php echo $VM_LANG->_('PHPSHOP_NOSTOCK')?><br />
<?php } else { ?>
<?php echo $VM_LANG->_('PHPSHOP_ORDER_LIST_STATUS')?>: &nbsp;&nbsp;<?php echo $VM_LANG->_('PHPSHOP_YESSTOCK')?><br />
<?php } ?>
В файл /administrator/components/com_virtuemart/languages/common/russian.php добавил:
Код
	'PHPSHOP_YESSTOCK' => 'есть в наличии',
'PHPSHOP_NOSTOCK' => 'под заказ',
« Последнее редактирование: 07.06.2011, 23:59:38 от Master of Magic »
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Вообще-то, если товар не опубликован, то он в yml не выгружается.
Что-бы в зависимости от наличия товара на складе в карточке товара писалось - есть в наличии, под заказ в flypage я прописал:
Код
<?php if ($product_in_stock < 1 ) { ?> 
<?php echo $VM_LANG->_('PHPSHOP_ORDER_LIST_STATUS')?>: &nbsp;&nbsp;<?php echo $VM_LANG->_('PHPSHOP_NOSTOCK')?><br />
<?php } else { ?>
<?php echo $VM_LANG->_('PHPSHOP_ORDER_LIST_STATUS')?>: &nbsp;&nbsp;<?php echo $VM_LANG->_('PHPSHOP_YESSTOCK')?><br />
<?php } ?>
В файл /administrator/components/com_virtuemart/languages/common/russian.php добавил:
Код
	'PHPSHOP_YESSTOCK' => 'есть в наличии',
'PHPSHOP_NOSTOCK' => 'под заказ',
Спасибо за отклик, а можно еще указать строку или где после чего вставлять код ?
*

Master of Magic

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
Так у вас же на сайте уже есть:
Цитировать
Доступен
Этого товара сейчас нет в наличии.
Код надо добавить в flypage.tpl
components/com_virtuemart/themes/default/templates/product_details
Вставляйте наверно после цены. Хотя вам виднее.
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Так у вас же на сайте уже есть:Код надо добавить в flypage.tpl
components/com_virtuemart/themes/default/templates/product_details
Вставляйте наверно после цены. Хотя вам виднее.
Спасибо ! попробую .
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Так же столкнулся с проблемой дублей, решение удаление группы покупателей (у меня почему то было две группы по умолчанию) и затем удаление товаров для этой "второй" группы.
Для тех у кого не работает или что-то глючит выкладываю свой скрипт. VM 1.1.7 Stable. Лично мне нужна была еще проверка наличия на складе, по этому добавил проверку product_in_stock, если товаров на складе 0 они не публикуются. Так же там есть поле вывода производителя.
Код
$row[$i]['mf_name']

dsd10
У вас скорей всего ошибка с типами описания, делайте теги именно так как написано:
http://help.yandex.ru/webmaster/?id=1111247В упрощенном описании можно использовать только теги:
Все! Ни какие другие нельзя! Еще выяснил, что так же важен порядок тегов, то есть как они написаны в примере так и должны идти друг за другом.

ЗЫ еще нарыл, почему то в Яндекс помощи не нашел:
available="false" - товарное предложение на заказ.

Второй вариант во вложении с проверкой если на складе товар не равен нулю, то выводит:
<offer id="12346" available="true">
Если равен нулю:
<offer id="12346" available="false">
Оба скрипта проходят проверку в маркете.


А эти скрипты понимают количество или отсутствие товара в магазине ? В смысле если товара нет или он скрыт, он выгружается на яндекс  ?
*

Master of Magic

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
Цитировать
В смысле если товара нет или он скрыт, он выгружается на Яндекс  ?
Если скрыт - это не опубликован? Если не опубликован то - нет, не выгружается
Если товара на складе 0, в Яндекс передается информация - "под заказ"
« Последнее редактирование: 08.06.2011, 23:09:15 от Master of Magic »
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Если скрыт - это не опубликован? Если не опубликован то - нет, не выгружается
Если товара на складе 0, в Яндекс передается информация - "под заказ"
Ясно, проверим )
Спасибо за помощь !
« Последнее редактирование: 09.06.2011, 12:46:29 от chipsed »
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Вчера ночью все выставил, 8 товаров скрыл что бы они по новому прайсу не выгружались и поставил их 0 на складе, а они сегодня утром выгрузились на Яндекс, причем в яндексе они с картинками, а по нажатию на ссылку отмененного товара выдают ошибку 404...
Уже 3 варианта выгрузки перепробовал, со всеми одинакого..(
Может я что неправельно делаю.
З.ы. Еще  не в тему, но если можете подсказать был бы признателен... Картинки создаются с большим регистром по названию товара, а яндекс не кушает большой регистр, как бы это исправить ? ВМ версия 1.1.8
« Последнее редактирование: 09.06.2011, 13:09:57 от chipsed »
*

Timoshkin

  • Захожу иногда
  • 55
  • 7 / 0
Для тех, у кого крякозябры:
Код
include '../configuration.php';
//Вставить эту строку вначале
header('Content-Type: text/html; charset=utf8');
//конец вставки
$cfg = new JConfig();

потом ниже исправить utf-8 на utf8:
Код
echo"<?xml version=\"1.0\" encoding=\"utf8\"?>\n";
*

sasha8888

  • Осваиваюсь на форуме
  • 46
  • 4 / 0
Я модифицировал этот экспорт - http://joomlaforum.ru/index.php/topic,168913.new.html
*

Benefactor

  • Захожу иногда
  • 154
  • 2 / 2
Ребят, последние описанные методы на 1.1.7 работают? И есть ли аналогичные чудо-скрипт для других ресурсов типа Яндекс.Маркет?
*

chipsed

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Ребят, последние описанные методы на 1.1.7 работают? И есть ли аналогичные чудо-скрипт для других ресурсов типа Яндекс.Маркет?
Работает и на версиях выше 1.1.7

Цитировать
apsveicdraugu
не поленитесь, почитайте тему, хотя бы немного сначала и немного с конца, а там может и середина заинтересует )
*

WooSuuP

  • Захожу иногда
  • 235
  • 11 / 1
  • Ословед Интерсвязи
Ребят, последние описанные методы на 1.1.7 работают? И есть ли аналогичные чудо-скрипт для других ресурсов типа Яндекс.Маркет?
Могу дать рабочий скрипт настроенный именно под вас. У меня работает на 1.1.3 и даже после обновления. Монуал по работе так же сообщу! настроен на русскую валюту и конверт в доллар, евро по курсу ЦБ РФ. По всем вопросам писать в асю 469-019-95четыре. Отвечу сразу!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор Centoff

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

Автор Gruz

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

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

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

Автор zmeyx

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

Автор gaalferov

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