>CMS 튜토리얼 >Dedecms >DedeCMS는 다중 레벨 열과 콘텐츠 목록을 어떻게 순환적으로 호출합니까?

DedeCMS는 다중 레벨 열과 콘텐츠 목록을 어떻게 순환적으로 호출합니까?

藏色散人
藏色散人원래의
2020-01-03 09:07:542647검색

DedeCMS는 다중 레벨 열과 콘텐츠 목록을 어떻게 순환적으로 호출합니까?

DedeCMS는 어떻게 다단계 열과 콘텐츠 목록을 반복하고 호출합니까?

다단계 열 및 콘텐츠 목록을 호출하는 DedeCMS 루프

추천 학습: Dream Weaver cms

Dedecms는 물론 포럼의 기술적인 답변 속도를 제외하면 여전히 꽤 좋습니다! ! 오늘은 하위 열과 해당 콘텐츠 목록을 주기적으로 호출하는 비교적 실용적인 작은 코드를 공유하겠습니다. 사실 태그 매뉴얼을 보면 알 수도 있지만 결국 여전히 게으른 사람들이 있습니다!

태그 매뉴얼에 따르면 DedeCMS 시스템에서는 Channelartlist 태그를 사용하여 하위 열과 해당 열 데이터를 순환할 수 있다고 합니다. DedeCMS 시스템에서 태그 중첩을 지원하는 유일한 호출 태그이기도 합니다. 기본적으로 사용법은 다음과 같으며 필요에 따라 수정할 수 있습니다:

<div> 
{dede:channelartlist}  
<dl> 
<dt><strong><a href="{dede:field name=&#39;typeurl&#39;/}">{dede:field name=&#39;typename&#39;/}</a></strong>
<span><a href="{dede:field name=&#39;typeurl&#39;/}">更多...</a></span></dt> 
<dd> 
<ul> 
{dede:arclist titlelen=&#39;60&#39; row=&#39;8&#39;}  
<li><span>[field:pubdate function="MyDate(&#39;m-d&#39;,@me)&#39;/]</span><a href="[field:arcurl /]">
[field:title /]</a></li> 
{/dede:arclist}  
</ul> 
</dd> 
</dl> 
{/dede:channelartlist}  
</div>

위 코드는 홈 페이지에서 하위 열 및 하위 열 콘텐츠 목록 호출을 실현할 수 있습니다! 목록 페이지와 콘텐츠 페이지에서 Channelartlist 태그를 사용하는 방법에 대해 이야기해 보겠습니다.

1. 매개변수 소개

channelartlist 태그는 다음과 같은 세 가지 매개변수를 일시적으로 지원합니다.

typeid='0'은 상위 수준 열 ID를 제한하기 위해 ","를 지원하는 top을 사용하여 여러 열을 나타낼 수도 있습니다.

row='20 '순환할 열 수, 기본값은 20입니다.

cacheid = '' 태그 캐시 ID, 일반적으로 비어 있음

하지만 위 코드를 그대로 복사하여 최종 열 페이지에 붙여넣거나 콘텐츠 페이지에는 어떤 호출 결과도 나타나지 않습니다. 채널아트리스트 태그에서 typeid가 비어 있으면 현재 열을 의미하지만 최종 열 목록과 콘텐츠 페이지에는 하위 열이 없으므로 오류가 발생하기 때문입니다!

2. 호출 예시

최종 목록 페이지 또는 콘텐츠 페이지에서 올바른 호출 방법은 다음과 같아야 합니다.

{dede:channelartlist typeid='top'}

여기에는 상단에 typed='top'이 있습니다. value 원하는 상위 컬럼ID로 변경할 수 있으나, 반드시 비워둘 수는 없습니다. 모두가 이것에 주목해야합니다!

3. 열 강조 및 특수 효과 호출

이 레이블 아래에서 {dede:field name='typename'/} 및 {dede:field name='typeurl'/}을 직접 사용하여 열 이름과 열을 나타낼 수 있습니다. 물론, 여기에 소개된 몇 가지 다른 특수 변수도 있습니다.

{dede:field name=&#39;id&#39;/}与{dede:field name=&#39;typeid&#39;/} 均表示循环中的栏目ID;
{dede:global name=&#39;itemindex&#39;} 表示循环递增变量,从1开始;
{dede:global name=&#39;itemparity&#39;} 表示循环魔法变量,单数为1,双数为2;

위의 내용은 채널아트 목록에 직접 적용될 수 있습니다. 이 두 변수에는 특별한 주의가 필요합니다. 변수, 행마다 열 색상을 변경하는 등 매우 개인화된 다양한 효과를 쉽게 만들 수 있습니다.

이 칼럼의 하이라이트와 관련하여,channelartlist.lib.php는 함께 제공되지 않지만, 다음 DIY를 통해 현재 칼럼을 하이라이트할 수 있습니다. 방법(dedecms 5.6을 예로 사용):

channelartlist.lib.php 파일을 열고 다음 코드를 찾습니다.

$pv->Fields[&#39;typeurl&#39;] = GetOneTypeUrlA($typeids[$i]);

다음 줄에 다음 코드를 추가합니다.

if($typeids[$i][&#39;id&#39;] == $refObj->TypeLink->TypeInfos[&#39;id&#39;]){  
$pv->Fields[&#39;currentstyle&#39;] = &#39; id="pic_focus"&#39;;  
}  
else{  
$pv->Fields[&#39;currentstyle&#39;] = &#39;&#39;;  
}

그런 다음 {dede:field를 사용할 수 있습니다. 템플릿 이름='currentstyle'/}에서 호출됩니다.

위 내용은 DedeCMS는 다중 레벨 열과 콘텐츠 목록을 어떻게 순환적으로 호출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.