Magento - Невозможно отобразить цены уровня в представлении продукта - PullRequest
0 голосов
/ 30 ноября 2010

У меня другая цена для продуктов в зависимости от группы клиентов.Я хочу показать обе цены покупателю в случае, если они оба применяются в списке товаров, представлении, связанных продуктах и ​​продуктах с повышенным спросом.

Я включил подсказки путей к шаблонам, чтобы убедиться, что цены для всех представлений отображаются изтот же файл шаблона, который выглядит следующим образом:

/ app / design / frontend / default / my_theme / template / catalog / product

Я правильно вижу цены на уровне всписок продуктов, связанных и продаваемых продуктов, но НЕ для просмотра продукта.

После некоторой отладки я сузил проблемную часть файла catalog / product / price.phtml следующим образом:

<?php
    $_coreHelper = $this->helper('core');
    $_weeeHelper = $this->helper('weee');
    $_taxHelper  = $this->helper('tax');

    $_product = $this->getProduct();
    $_id = $_product->getId();
    echo 'Product Id: ' . $_id;
    $_weeeSeparator = '';
    $_simplePricesTax = ($_taxHelper->displayPriceIncludingTax() || $_taxHelper->displayBothPrices());
    echo 'Simple Price Tax: ' . $_simplePricesTax;
    $_minimalPriceValue = $_product->getMinimalPrice();
    echo 'Minimal Price Value: ' . $_minimalPriceValue;
    //$_minimalPriceValue = 41;
    $_minimalPrice = $_taxHelper->getPrice($_product, $_minimalPriceValue, $_simplePricesTax);
    echo 'Minimal Price: ' . $_minimalPrice;
    //$_minimalPrice = 41;
?>

Я повторил все цены, полученные из приведенных выше моделей, и только в случае страницы просмотра продукта указанная выше функция $ _product-> getMinimalPrice () ничего не возвращает, хотя она правильно отображается в списках, связанных и проданных товарах.

Я не могу думать ни о какой причине для этого.Есть несколько разных строк в catalog.xml, но я не думаю, что они как-то связаны с этим.Кроме того, в приведенном выше коде есть пара закомментированных строк, в которых я жестко закодировал переменные minimalPrice и minimalPriceValue.После этого цена начинает появляться и в представлении товара.Идентификатор продукта для всех представлений, включая представление продукта, также отображается правильно, поэтому продукт загружен в это время.

Мы используем пользовательский шаблон, и я вижу, что по умолчанию у нас нет этой проблемы.Я использую Magento 1.4.1.1

1 Ответ

3 голосов
/ 30 ноября 2010

Вы сказали, что то, что вы пытаетесь сделать, работает на 100% со стандартной темой?Если это так, то вы действительно должны посмотреть на различия между вашей пользовательской темой и заданной по умолчанию.Также вы можете захотеть посмотреть на любые изменения, внесенные разработчиком в app / code / community и app / code / local, которые являются настройками для темы.Там может быть какой-то конфликт.

Но если вы не можете найти разницу, возможно, я могу дать несколько подсказок о том, почему вы могли видеть это поведение.Иногда объекты одной и той же модели (и блоков) содержат разные данные при просмотре на странице списка категорий и страницы просмотра продукта.Причина в том, что запросы к базе данных различаются.Я уже работал с системой многоуровневой обработки и помню, что когда вы смотрите на страницу каталога, данные о ценах на самом деле поступают из некоторых таблиц catalogindex_ *, а не таблиц catalog_product_entity_ *.Если я правильно помню, есть две таблицы, которые он запрашивает, что-то вроде catalogindex_price и catalogindex_minimal_price.Но когда вы находитесь на странице просмотра продукта, данные о ценах поступают из стандартных таблиц catalog_product_entity_ * и catalog_product_entity_tier_price.В любом случае, это, вероятно, не решит вашу проблему, но может привести вас в правильном направлении.Удачи.

...