Перейти к содержанию
Форум поддержки пользователей VamShop

market.php


Рекомендуемые сообщения

Возникла необходимость добавить в файл генерации вывода строки - валюта и регион доставки.

В примере генерации файла *.php указано:

var $allcurrency = array('UAH');

var $allregion = array( 'Украина',);

Вопрос где эти строки вставить.

Ссылка на сообщение
Поделиться на другие сайты

вот так:

<name>магазин ELEKROVENIK</name>

<url>http://electrovenic.com.ua</url>

<currency code="USD" rate="5.5" />

<region>Киев</region>

<region>Одесса</region>

Ссылка на сообщение
Поделиться на другие сайты

В /market.php добавьте:


  vam_yml_out('  <region>Киев</region>');
  vam_yml_out('  <region>Одесса</region>');
[/code] после:
[code]
  vam_yml_out('  <url>' . $url . '</url>');

Ссылка на сообщение
Поделиться на другие сайты

Я пишу про модуль из 1.50 версии, там новый модуль.

Если старая версия, делайте по примеру аналогично, там же примерно всё так же.

Ссылка на сообщение
Поделиться на другие сайты

У меня версия 1.43

Как я понял за вывод отвечает этот код

if (!defined('YML_NAME')) define('YML_NAME','');
if (!defined('YML_COMPANY')) define('YML_COMPANY','');
if (!defined('YML_AVAILABLE')) define('YML_AVAILABLE','stock');
if (!defined('YML_DELIVERYINCLUDED')) define('YML_DELIVERYINCLUDED','false');
if (!defined('YML_AUTH_USER')) define('YML_AUTH_USER','');
if (!defined('YML_AUTH_PW')) define('YML_AUTH_PW','');
if (!defined('YML_REFERER')) define('YML_REFERER','false');
if (!defined('YML_STRIP_TAGS')) define('YML_STRIP_TAGS','true');
if (!defined('YML_UTF8')) define('YML_UTF8','false');[/code]

В каком виде добавить сюда рекомендуемые вами строки?

Ссылка на сообщение
Поделиться на другие сайты

Код наверное нашел

"<shop>\n" .
"<name>" . _clear_string((YML_NAME == "" ? STORE_NAME : YML_NAME)) ."</name>\n" .
"<company>" . _clear_string((YML_COMPANY == "" ? STORE_OWNER : YML_COMPANY)) . "</company>\n" .
"<url>" . HTTP_SERVER . "/</url>\n\n";[/code] но при вставке рекомендуемых тобой строк выдает ошибку:
[code]Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/faktoriya/faktoriya.com.ua/market.php on line 143

Есть идеи?

Ссылка на сообщение
Поделиться на другие сайты

Вот весь блок с этой меткой

echo"<offers>\n";
$products_short_desc_query = vam_db_query('describe ' . TABLE_PRODUCTS_DESCRIPTION . ' products_short_description');
$products_to_xml_query = vam_db_query('describe ' . TABLE_PRODUCTS . ' products_to_xml');
$products_bid_query = vam_db_query('describe ' . TABLE_PRODUCTS . ' yml_bid');
$products_sql = "select p.products_id, p.products_model, p.products_quantity, p.products_image, p.products_price, products_tax_class_id, p.manufacturers_id, pd.products_name, p2c.categories_id, pd.products_description" .
((vam_db_num_rows($products_short_desc_query) > 0) ? ", pd.products_short_description " : " ") .
((vam_db_num_rows($products_bid_query) > 0) ? ", p.yml_bid, p.yml_cbid " : " ") .
", l.code as language " .
"from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_LANGUAGES . " l
where p.products_id = pd.products_id
and p.products_status = 1" .
((vam_db_num_rows($products_to_xml_query) > 0) ? " and p.products_to_xml = 1" : "") .
" and p.products_id = p2c.products_id
and pd.language_id = " . $_SESSION['languages_id'] . "
and p.products_price > 0
and l.languages_id=pd.language_id
order by pd.products_name";
$products_query = vam_db_query($products_sql);
$prev_prod['products_id'] = 0;
$cats_id = array();

while($products = vam_db_fetch_array($products_query)) {
if ($prev_prod['products_id'] == $products['products_id']) {
if (!in_array($products['categories_id'], $categories_disable)) {
$cats_id[] = $products['categories_id'];
}
} else {
if (sizeof($cats_id) > 0) {
$available = "false";
switch(YML_AVAILABLE) {
case "stock":
if($prev_prod['products_quantity'] > 0)
$available = "true";
else
$available = "false";
break;
case "false":
case "true":
$available = YML_AVAILABLE;
break;
}

  $cbid = $bid = '';
  $prev_prod["yml_bid"] = max((!isset($prev_prod["yml_bid"]) ? 0 : $prev_prod["yml_bid"]), $categories_bid[$cats_id[0]]);
  if($prev_prod["yml_bid"] > 0) $bid = ' bid="' . $prev_prod["yml_bid"] . '"';
  $prev_prod["yml_cbid"] = max((!isset($prev_prod["yml_cbid"]) ? 0 : $prev_prod["yml_cbid"]), $categories_cbid[$cats_id[0]]);
  if($prev_prod["yml_cbid"] > 0) $cbid = ' cbid="' . $prev_prod["yml_cbid"] . '"';

// if ($products_price = vam_get_products_special_price($prev_prod['products_id'])) {
if ($products_price = $vamPrice->GetPrice($prev_prod['products_id'], $format = false, 1, $prev_prod['products_tax_class_id'], $prev_prod['products_price'])) {
} else {
$products_price = $prev_prod['products_price'];
}

echo "<offer id=\"" . $prev_prod['products_id'] . "\" available=\"" . $available . '"' . $bid . $cbid . ">\n" .
"  <url>" . vam_href_link(FILENAME_PRODUCT_INFO, vam_product_link($prev_prod['products_id'], $prev_prod['products_name']) . (isset($_GET['ref']) ? '&amp;ref=' . $_GET['ref'] : null) . $yml_referer, 'NONSSL', false) . "</url>\n" .
// "  <price>" . number_format(vam_round(vam_add_tax($products_price, vam_get_tax_rate($prev_prod['products_tax_class_id']))*$currencies->currencies[$currency]['value'],$currencies->currencies[$currency]['decimal_places']),$currencies->currencies[$currency]['decimal_places'],'.','') . "</price>\n" .
"  <price>" . $vamPrice->GetPrice($prev_prod['products_id'], $format = false, 1, $prev_prod['products_tax_class_id'], $prev_prod['products_price']) . "</price>\n" .
"  <currencyId>" . $code . "</currencyId>\n";
echo "  <categoryId>" . $cats_id[0] . "</categoryId>\n";
  if($display_all_categories) {
for ($ic=1,$nc=sizeof($cats_id); $ic < $nc; $ic++) {
echo "  <categoryId>" . $cats_id[$ic] . "</categoryId>\n";
}
}
echo (vam_not_null($prev_prod['products_image']) ? "<picture>" . dirname(HTTP_SERVER . DIR_WS_CATALOG . DIR_WS_INFO_IMAGES . $prev_prod['products_image']) . "/" . urlencode(basename($prev_prod['products_image'])) . "</picture>\n" : "") .
(YML_DELIVERYINCLUDED == "true" ? "  <deliveryIncluded/>\n" : "") .
"  <name>" . _clear_string($prev_prod['products_name']) . "</name>\n";
if ($prev_prod['manufacturers_id'] != 0) {
if(!isset($manufacturers_array[$prev_prod['manufacturers_id']])) {
$manufacturer_query = vam_db_query("select manufacturers_name
from " . TABLE_MANUFACTURERS . "
where manufacturers_id ='" . $prev_prod['manufacturers_id'] . "'");
$manufacturer = vam_db_fetch_array($manufacturer_query);
$manufacturers_array[$prev_prod['manufacturers_id']] = $manufacturer['manufacturers_name'];
}
if (YML_VENDOR == 'true' && $prev_prod['manufacturers_id'] != 0) echo "<vendor>" . _clear_string($manufacturers_array[$prev_prod['manufacturers_id']])  . "</vendor>\n";
}
if (isset($prev_prod['products_short_description']) && vam_not_null($prev_prod['products_short_description'])) {
echo "  <description>" . _clear_string($prev_prod['products_short_description']) . "</description>\n";
} elseif (vam_not_null($prev_prod['products_description'])) {
echo "  <description>" . _clear_string($prev_prod['products_description']) . "</description>\n";
}
echo "</offer>\n\n";
}
$prev_prod = $products;
$cats_id = array();
if (!in_array($products['categories_id'], $categories_disable)) {
$cats_id[] = $products['categories_id'];
}
}
}
echo "</offers>\n" .[/code]

Подскажи плиз где добавить.

Ссылка на сообщение
Поделиться на другие сайты

Например после этой строки:


"  <currencyId>" . $code . "</currencyId>\n";
[/code] добавлять:
[code]
"  <region>Киев</region>\n";

и по аналогии другие строки.

Ссылка на сообщение
Поделиться на другие сайты

Вставляю код после строки currencyID

"  <region>Украина</region>\n";
"  <currency code>UAH</currency code>\n";[/code] И все равно выдает ошибку
[code]Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/faktoriya/faktoriya.com.ua/market.php on line 142

Ссылка на сообщение
Поделиться на другие сайты

Кусок кода по которому выдает ошибку:

echo "<category id=\"" . $categories["categories_id"] . "\"" .
(($categories["parent_id"] "]"]== "]"]=="]=="0") ? ">" : " parentId=\"" . $categories["parent_id"] . "\">" ) .
_clear_string($categories["categories_name"]) .
"</category>\n";[/code]

Ссылка на сообщение
Поделиться на другие сайты

А что это вообще такое?!

По умолчанию ошибок нет никаких ведь.

Может проще будет взять файл market.php из текущей версии и сделать как я в начале темы писал?!

Ссылка на сообщение
Поделиться на другие сайты

У меня закончился срок скачивания vamshop ;)

Где можно взять этот файлик? Вопрос просто решится путем замены market.php?

Ссылка на сообщение
Поделиться на другие сайты

Ну например из патчей, в разделе файлы на vamshop.ru

Я ж не знаю, в чём у Вас проблема.

Вообще, работает и старый и новый market.php

Наверное просто неправильно что-то отредактировали в этом файле, поэтому и не работает.

Ссылка на сообщение
Поделиться на другие сайты

В общем заменил market.php на новый - пока проблем нет. В течении часа площадка должна обновить прайс и посмотрю.

А пока спасибо за решение вопроса.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...