柳暗花明笔记

    magento cmsmart ajaxsearch 搜索结果折扣价格显示 show discount price && Notice: Undefined variable: ctf

    所属分类:[ php&web ] 猫哲学家 发表于:2015-09-16 16:08 浏览:710

    magento 的这个模块cmsmart各种报错,现在连搜索结果页面也不显示折扣价格 disount price

    我认为这是cmsmart的一个bug,解决办法

    magento/app/code/local/Cmsmart/Ajaxsearch/Block/Result.php和magento/app/code/local/Cmsmart/Ajaxsearch/Block/Product/List.php

    $productids = Mage::app()->getRequest()->getParam('search_categories');
    foreach ($productids as $k => $cat) {
    $ctf[]['finset'] = $cat;
    }
    // if($ctf){ // Lanmiz edit 20150916 $ctf maybe not set
    if(isset($ctf)){

    $ctf变量明显不一定存在,所以要加isset判断啊

    $product_results->addAttributeToSelect('entity_id')
    ->addAttributeToSelect('description')
    ->addAttributeToSelect('short_description')
    ->addAttributeToSelect('name')
    ->addAttributeToSelect('price')
    ->addAttributeToSelect('special_price') // 这个就是加折扣价格显示的

    刚才这两个问题的解决注意要修改对应的include/src/下的文件,因为按magento的规则要把文件放到这个目录下才会被执行。

    它们分别是:magento/includes/src/Cmsmart_Ajaxsearch_Block_Result.php和magento/includes/src/Cmsmart_Ajaxsearch_Block_Product_List.php

     

    另:还发现了magento的一个规律:

    template/catalog/product/price.phtml

    这个文件掌管着所有价格的展示,这个文件真正生效的是你所属的design下。

    标签: php  magento 
    上一编文章 nginx 设置限制国家的访问配置 下一编文章 magento 修改登陆login成register / login
    最近文章
    发表评论