ホームページ  >  記事  >  バックエンド開発  >  PHPCMS V9 はセカンダリ ナビゲーションを追加します

PHPCMS V9 はセカンダリ ナビゲーションを追加します

高洛峰
高洛峰オリジナル
2016-10-20 11:40:221255ブラウズ

今日 phpcms を調べたところ、ナビゲーション バーの情報をクエリする際に、$r[arrchildid] が返されるという問題が見つかりました。ドキュメントには、サブカラム ID が返されると書かれていました。しかし、それは少し違っていました。

開始アイデア:

    首页       {pc:content action="category" catid="0" num="10" siteid="$siteid" order="listorder ASC"}
          {loop $data $r}
          {if $r[arrchildid]}
                          {$r[catname]}                                   {pc:content action="category" catid="$r[catid]" num="10" siteid="$siteid" order="listorder ASC" return="data2"}
                    {loop $data2 $v}
                      {$v[catname]}                    {/loop}
                  {/pc}
                   
                      {/if}
        {/loop}
     {/pc}

一般的なアイデア: ドキュメントの下にサブ列 ID があるかどうかを確認し、サブ列 ID がある場合は、セカンダリ ナビゲーションを出力します。コードの5行目はカラム配下にサブカラムIDがあるかどうかを判定するものですが、サブカラムがない場合はカレントカラムのIDが返されてしまい、判定が満たされないことが分かりました。期待通りの効果だったので、考えを変えてコードは以下の通りです:

    首页      {pc:content action="category" catid="0" num="10" siteid="$siteid" order="listorder ASC"}
         {loop $data $r}
           {if $r[arrchildid] != $r[catid]}
                            {$r[catname]}                                     {pc:content action="category" catid="$r[catid]" num="10" siteid="$siteid" order="listorder ASC" return="data2"}
                      {loop $data2 $v}
                        {$v[catname]}                      {/loop}
                     {/pc}
                    
                         {else}
              {$r[catname]}           {/if}
        {/loop}
      {/pc}

判定取得 サブカラムIDがカラムIDと等しいかどうか、等しい場合はサブカラムが存在しないことを意味し、等しくない場合はサブカラムが存在しないことを意味します。はサブ列があり、そのサブ列が表示されていることを意味します

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。