2017-09-10 1 views
0

올바른 주제를 입력하고 싶습니다. 내가 알아야 할게 뭐야? 컨트롤러에서 내 가게의 CMS 페이지 목록이 있습니다. 그렇다면 콘텐츠를 얻고 싶지만 어떻게해야할지 모르겠다.변수를 컨트롤러의 함수에 붙여 넣는 방법

내 컨트롤러 : 내 product.tpl 파일에서

class ProductController extends ProductControllerCore { 

    public function initContent() { 
     parent::initContent(); 
     $cmsList = CMS::listCms(); 
     $this->context->smarty->assign('cmsList', $cmsList); 
    } 

    public function getCMSContent($cmsID){ 
     $cmsID = CMS::getCMSContent(); 
     $this->context->smarty->assign('cmsContentProduct', $cmsID); 
    } 

} 

나는이 :

{$productCategory = $product->category} 
      {foreach from=$cmsList item=varCMS} 
       {$cmsID = $varCMS.id_cms} 
       {$cmdTitle = $varCMS.meta_title} 
       {if $cmdTitle == $productCategory} 
        {* get contnet from CMS*} 
       {/if} 
      {/foreach} 

어떻게 getCMSContent하는 ID 내 CMS를 붙여?

종류는

+0

{Product :: getCMSContent ($ cmsID)}를 사용하면 제 가게가 고장났습니다. – PSoft

답변

0
class ProductController extends ProductControllerCore { 

    public function initContent() { 
     parent::initContent(); 
     $cmsList = CMS::listCms(); 
     $this->context->smarty->assign('cmsList', $cmsList); 
    } 

    public function getCMSContent($cmsID){ 
     $cms = new CMS($cmsID, intval($cookie->id_lang)); 
     return $cms; 
    } 
} 

에 관하여 그리고 .tpl 파일 :

{$productCategory = $product->category} 
       {foreach from=$cmsList item=varCMS} 
        {$cmsID = $varCMS.id_cms} 
        {$cmdTitle = $varCMS.meta_title} 
        {if $cmdTitle == $productCategory} 
         <section class="page-product-box"> 
       <h3 class="page-product-heading"></h3> 
       <div class="rte"><p>{ProductController::getCMSContent($cmsID)->content[1]}</p></div> 
      </section> 
        {/if} 
       {/foreach} 

이 기능을 체크 제품 카테고리와 모든 CMS 페이지와 비교합니다. 동일하면이 함수는 CMS의 내용을 표시합니다. 그것은 PS 1.6에서 작동합니다.

감사의 말

관련 문제