Получить идентификатор продукта в magento - PullRequest
8 голосов
/ 10 марта 2011

В magento я хочу добавить функцию быстрого просмотра, подобную этой http://www.timberlandonline.co.uk/on/demandware.store/Sites-TBLGB-Site/default/Link-Category?cgid=men_footwear_boots.I добавили скрытый ввод и div в list.phtml. Если я щелкаю по div любого продукта, javascript возвращает идентификатор продукта первого продукта встраница этой категории. Но она должна возвращать идентификатор продукта выбранного div.

Ответы [ 2 ]

16 голосов
/ 10 марта 2011

Вам нужно внимательно изучить эту страницу (<path_to_your_template_folder>/template/catalog/product/list.phtml). В разных местах этой страницы вы найдете следующие строки кода: -

$_productCollection = $this->getLoadedProductCollection();

foreach ($_productCollection as $_product):
    $reqProductId = $_product->getId();
endforeach;

Если вы тщательно сопоставите приведенный выше код и код на вышеупомянутой странице, вы будете знать, что вам нужно правильно использовать переменную "$reqProductId" в необходимом элементе "INPUT" типа "hidden». Таким образом, вам потребуется выполнить свою роль в основном цикле "foreach".

Надеюсь, это поможет.

4 голосов
/ 10 сентября 2015

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

$product_id = $this->getProduct()->getId();

Если у вас нет доступа к $this, вы можете использовать реестр Magento:

$product_id = Mage::registry('current_product')->getId();

Также для типа продукта я думаю

$product = Mage::getModel('catalog/product')->load($product_id); 

$productType = $product->getTypeID();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...