오늘 phpcms를 보다가 보조 네비게이션 작성 시 문제점을 발견했습니다. 네비게이션 바 정보를 쿼리할 때 반환된 $r[arrchildid]가 제가 상상한 것과 일치하지 않습니다. 돌아왔지만 좀 달랐다.
시작 아이디어:
首页 {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가 있는지 확인하고, 있으면 보조 탐색을 출력합니다. 코드의 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와 같은지 확인합니다. 동일하면 하위가 없다는 의미입니다. -column. 같지 않으면 하위 열이 있다는 의미이며 해당 하위 열이 표시됩니다