DedeCMS는 어떻게 다단계 열과 콘텐츠 목록을 반복하고 호출합니까?
다단계 열 및 콘텐츠 목록을 호출하는 DedeCMS 루프
추천 학습: Dream Weaver cms
Dedecms는 물론 포럼의 기술적인 답변 속도를 제외하면 여전히 꽤 좋습니다! ! 오늘은 하위 열과 해당 콘텐츠 목록을 주기적으로 호출하는 비교적 실용적인 작은 코드를 공유하겠습니다. 사실 태그 매뉴얼을 보면 알 수도 있지만 결국 여전히 게으른 사람들이 있습니다!
태그 매뉴얼에 따르면 DedeCMS 시스템에서는 Channelartlist 태그를 사용하여 하위 열과 해당 열 데이터를 순환할 수 있다고 합니다. DedeCMS 시스템에서 태그 중첩을 지원하는 유일한 호출 태그이기도 합니다. 기본적으로 사용법은 다음과 같으며 필요에 따라 수정할 수 있습니다:
<div> {dede:channelartlist} <dl> <dt><strong><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a></strong> <span><a href="{dede:field name='typeurl'/}">更多...</a></span></dt> <dd> <ul> {dede:arclist titlelen='60' row='8'} <li><span>[field:pubdate function="MyDate('m-d',@me)'/]</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='id'/}与{dede:field name='typeid'/} 均表示循环中的栏目ID; {dede:global name='itemindex'} 表示循环递增变量,从1开始; {dede:global name='itemparity'} 表示循环魔法变量,单数为1,双数为2;
위의 내용은 채널아트 목록에 직접 적용될 수 있습니다. 이 두 변수에는 특별한 주의가 필요합니다. 변수, 행마다 열 색상을 변경하는 등 매우 개인화된 다양한 효과를 쉽게 만들 수 있습니다.
이 칼럼의 하이라이트와 관련하여,channelartlist.lib.php는 함께 제공되지 않지만, 다음 DIY를 통해 현재 칼럼을 하이라이트할 수 있습니다. 방법(dedecms 5.6을 예로 사용):
channelartlist.lib.php 파일을 열고 다음 코드를 찾습니다.
$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);
다음 줄에 다음 코드를 추가합니다.
if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id']){ $pv->Fields['currentstyle'] = ' id="pic_focus"'; } else{ $pv->Fields['currentstyle'] = ''; }
그런 다음 {dede:field를 사용할 수 있습니다. 템플릿 이름='currentstyle'/}에서 호출됩니다.
위 내용은 DedeCMS는 다중 레벨 열과 콘텐츠 목록을 어떻게 순환적으로 호출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!