Limita Categoria a un segmento cliente specifico
-
29-09-2020 - |
Domanda
Nel mio negozio (Mage-Ee V12) ho una categoria che voglio limitare a un segmento cliente specifico.Qualcuno sa di un modo che posso fare questo?
.
Ad esempio, se ho impostato un segmento, voglio che i clienti in questo segmento abbiano accesso al catalogo completo, ma se i clienti non cadono in questo segmento non hanno visibilità della categoria ristretta?
.
Qualche idea ?
.
Saluti
Soluzione
per il tuo requisito.
- .
- Prima è necessario creare un nuovo gruppo di clienti da admin.
- Assegna specifico segmento cliente a questo gruppo.
- Quindi utilizzare Evento / Observer
catalog_controller_category_init_before
impedire al cliente di andare questa categoria tranne quella specifica Categoria
config.xml:
<config>
<global>
<config>
<events>
<catalog_controller_category_init_after>
<observers>
<redirect_to_account>
<class>[ModuleNameSpace]_[ModuleName]_Model_Observer/class>
<method>redirectNotLogged</method>
</redirect_to_account>
</observers>
</catalog_controller_category_init_after>
</events>
</config>
</global>
</config>
.
Observer.php
<?php
class [ModuleNameSpace]_[ModuleName]_Model_Observer{
public function redirectNotLogged(Varien_Event_Observer $observer)
{
$action = strtolower(Mage::app()->getRequest()->getActionName());
$controller = strtolower(Mage::app()->getRequest()->getControllerName());
$controller_action= $observer->getEvent()->getControllerAction();
$category = $observer->getEvent()->getCategory();
/* if category is not Match with your category then continue default behave */
if($category->getId()!='YOUR_CATEGORY_ID'):
return true;
endif;
/* Customer group id match and then previllage to access that category page.*/
if (Mage::getSingleton('customer/session')->isLoggedIn() && Mage::getSingleton('customer/session')->getCustomerGroupId()=='CUSTOMER_GROUP_ID') {
return true;
}
Mage::app()->getResponse()->setRedirect($_SERVER['HTTP_REFERER']);
Mage::app()->getResponse()->sendResponse();
exit;
}
}
.
- .
- vinai kopp
- Amasty
- atwix .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange