phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接

通常情况下使用PHPCMS在频道页调用子栏目很简单,只要把下列的catid=”0″换成$catid 即可。可经常父栏目和子栏目都调用一个小碎片的时候就需要做一下逻辑判断。

{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
	<li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li>
{/loop}
{/pc}

官方提供的方法不尽人意

{pc:content action="category" catid="$CATEGORYS[$catid][parentid]" num="25" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
	<li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li>
{/loop}
{/pc}

这样子父栏目使用这个代码就会获取到$CATEGORYS[$catid][parentid]等于0,即获取整个网站下面的所有一级栏目,可这样子并不是我想要的。我们想要的是当前栏目如果是频道页(父栏目)的时候获取当前的子栏目。当是子栏目的时候获取自己兄弟栏目,正是在这种需求下新一给当前栏目进行了逻辑判断就变成下面的phpcms标签代码呢。

<?php $diyCatid = $catid; if($CATEGORYS[$catid][parentid] != 0){$diyCatid = $CATEGORYS[$catid][parentid];}?>
{pc:content action="category" catid="$diyCatid" num="25" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
	<li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li>
{/loop}
{/pc}

转载请注明来源:新一 » phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接

赞 (0) 评论 (0) 分享 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址