2016-08-15 5 views
1

私はopencart v2.2.0を使用しており、ブレッドクラムについては以下のコードを使用しています。このブレッドクラムは、カテゴリをドロップダウンとして表示します。このブレッドクラムを編集してドロップダウンを削除し、適切なカテゴリとサブカテゴリを表示するにはどうすればよいですか?ここでopencart 2.2のブレッドクラムからドロップダウンを削除するには?

は、それがどのように動作するかのスクリーンショットです: breadcrumb screen shot

そしてここでは、コードは次のとおりです。

<div class="breadcrumb <?php if($theme_options->get('breadcrumb_layout') == 2) { echo 'fixed'; } else { echo 'full-width'; } ?>"> 
<div class="background-breadcrumb"></div> 
<div class="background"> 
    <div class="shadow"></div> 
    <div class="pattern"> 
     <div class="container"> 
      <div class="clearfix"> 
       <ul> 
        <?php 
        $i = 0; 
        $next_cat_id = 0; 
        foreach ($breadcrumbs as $breadcrumb) { 
         $cats = array(); 
         if($registry->get('request')->get['route'] == 'product/product' || $registry->get('request')->get['route'] == 'product/category'){ 
          if($i == 1){ 
           $cats = $theme_options->getCategories(0); 
          }else if($next_cat_id > 0 && count($breadcrumbs)-1 > $i){ 
           $cats = $theme_options->getCategories($next_cat_id); 
          } 
         } 


        ?> 
        <li class="item <?php echo !empty($cats) ? 'dropdown' : '';?>"> 
         <a <?php echo !empty($cats) ? 'class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false"' : '';?> 
          href="<?php echo $breadcrumb['href']; ?>"><?php if($breadcrumb['text'] != '<i class="fa fa-home"></i>') { echo $breadcrumb['text']; } else { if($theme_options->get('home_text', $config->get('config_language_id')) != '') { echo $theme_options->get('home_text', $config->get('config_language_id')); } else { echo 'Home'; } } ?></a> 

         <?php if(!empty($cats)):?> 
         <ul class="dropdown-menu"> 
          <li> 
           <?php foreach($cats as $cat):?> 
           <?php if($cat['label'] == $breadcrumb['text']):?> 
            <?php $next_cat_id = $cat['category_id']; continue; ?> 
           <?php endif; ?> 
           <a href="<?php echo $cat['href'] ?>"><?php echo $cat['label'] ?></a> 
           <?php endforeach; ?> 
          </li> 
         </ul> 
         <?php endif; ?> 

        </li> 
        <?php $i++; } ?> 
       </ul> 
<!--     <h1 id="title-page"><?php echo $heading_title; ?> 
        <?php if(isset($weight)) { if ($weight) { ?> 
        &nbsp;(<?php echo $weight; ?>) 
        <?php } } ?> 
       </h1> 
       <div class="strip-line"></div>--> 
      </div> 
     </div> 
    </div> 
</div> 

+0

無回答Please !! – vaguemind

+0

これは中核的なオープンコードではありません。 これはカスタムテーマのコードです。 私が言うことができるコードを分析すると: 以下の行にコメントしてください: $ cats = $ theme_options-> getCategories($ next_cat_id); すべてのコードはカスタムテーマから書き込まれます。上のコメントでは、それは次のレベルのカテゴリには行くことはできません、トップのカテゴリのみを表示します。 –

+0

ya、私はそのカスタムコードを知っています、私は次のレベルのカテゴリに行くのを防ぎたいとは思わない、私はドロップダウンを削除する必要があり、デフォルトのopencartブレッドクラムのように正常に動作する? – vaguemind

答えて

0

このコードはそう決算のdivに注意してくださいここで私は知りませんでしたその他のhtml。 コードごとに、他のレベルとドロップダウンを削除しました。私は$ breadcrumbs配列がデフォルトコードとして返されると考えました。彼らがそれを変更した場合は、コントローラの部分でも変更する必要があります。希望は次のとおりです。

<div class="breadcrumb <?php if($theme_options->get('breadcrumb_layout') == 2) { echo 'fixed'; } else { echo 'full-width'; } ?>"> 
<div class="background-breadcrumb"></div> 
<div class="background"> 
    <div class="shadow"></div> 
    <div class="pattern"> 
     <div class="container"> 
      <div class="clearfix"> 
       <ul> 
        <?php 
        foreach ($breadcrumbs as $breadcrumb) { ?> 
         <li class="item"> 
          <a 
           href="<?php echo $breadcrumb['href']; ?>"><?php if($breadcrumb['text'] != '<i class="fa fa-home"></i>') { echo $breadcrumb['text']; } else { if($theme_options->get('home_text', $config->get('config_language_id')) != '') { echo $theme_options->get('home_text', $config->get('config_language_id')); } else { echo 'Home'; } } ?></a>  
         </li> 
         <?php } ?> 
       </ul> 
<!--     <h1 id="title-page"><?php echo $heading_title; ?> 
        <?php if(isset($weight)) { if ($weight) { ?> 
        &nbsp;(<?php echo $weight; ?>) 
        <?php } } ?> 
       </h1> 
       <div class="strip-line"></div>--> 
</div> 
</div> 
</div> 
</div> 
+0

私はあなたのコードを実装し、スクリーンショットとして私にこれを与えました:http://tinypic.com/r/504oj9/9 – vaguemind

+0

$ i ++を削除してください。 –

+0

ya、それは今、多くのおかげで働いた – vaguemind

関連する問題