> CMS 튜토리얼 > Dedecms > Dedecms의 범용 태그 루프에 대한 URL을 입력할 수 없으면 어떻게 해야 합니까?

Dedecms의 범용 태그 루프에 대한 URL을 입력할 수 없으면 어떻게 해야 합니까?

藏色散人
풀어 주다: 2019-12-09 09:25:25
원래의
2134명이 탐색했습니다.

Dedecms의 범용 태그 루프에 대한 URL을 입력할 수 없으면 어떻게 해야 합니까?

Dedecms에 범용 태그 루프에 대한 URL을 입력할 수 없으면 어떻게 해야 하나요?

이 기사의 예는 Dedecms의 범용 태그 루프가 URL을 입력할 수 없는 문제에 대한 해결책을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

범용 레이블 루프를 사용하면 Dedecms에서 모든 테이블의 데이터 레이블을 마음대로 호출할 수 있으므로 이를 범용 레이블이라고 합니다. 일반적으로 사용되는 arcurl이 비어 있음을 발견했습니다. 이는 URL이 존재하지 않는다는 의미입니다. 이 문제를 해결해 드리겠습니다.

첫 번째 공식 설명을 살펴보세요. 루프 태그

태그 이름: 루프# 🎜🎜#

기능 설명: 모든 테이블의 데이터 태그 호출

적용 범위: 글로벌 태그

# 🎜🎜#기본 구문, 코드는 다음과 같습니다.

#🎜🎜 #코드는 다음과 같습니다.

{dede:loop table='dede_archives' sort='' row='4' if=''} 
<a href=&#39;[field:arcurl/]&#39;>[field:title/]</a> 
{/dede:loop}
로그인 후 복사

태그 속성:

table: 쿼리 테이블 name

sort: 정렬에 사용되는 필드

#🎜 🎜#row: 반환된 결과 수

if: 쿼리 조건

이에 따라 간단한 예제를 작성했는데 코드는 다음과 같습니다.

#🎜🎜 #코드는 다음과 같습니다.

{dede:loop table=&#39;dede_archives&#39; sort=&#39;&#39; row=&#39;4&#39; if=&#39;&#39;} 
<a href=&#39;[field:arcurl/]&#39;>[field:title/]</a> 
{/dede:loop} 
//输出结果 
你好dedecms
로그인 후 복사

다음과 같습니다. ''가 비어 있으면 URL 주소가 없습니다. Baidu가 해결책을 찾았습니다.# 🎜🎜#

1.Include/common.func.php를 열고 54번째 줄을 추가하세요. 함수 코드는 다음과 같습니다.


코드는 다음과 같습니다.

function IDReturnURL($ID) 
{ 
//lonely 
global $dsql; 
$query = "Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault, 
tp.defaultname,tp.namerule,tp.moresite,tp.siteurl,tp.sitepath 
from dede_archives arc left join dede_arctype tp on arc.typeid=tp.id where arc.id = ".$ID;
$row = $dsql->GetOne($query); 
$ReturnURL = GetFileUrl($row[&#39;id&#39;],$row[&#39;typeid&#39;],$row[&#39;senddate&#39;],$row[&#39;title&#39;],$row[&#39;ismake&#39;], 
$row[&#39;arcrank&#39;],$row[&#39;namerule&#39;],$row[&#39;typedir&#39;],$row[&#39;money&#39;],$row[&#39;filename&#39;],$row[&#39;moresite&#39;],$row[&#39;siteurl&#39;],$row[&#39;sitepath&#39;]); 
return $ReturnURL; 
}
로그인 후 복사

2. 템플릿의 호출 메서드 작성 방법도 다음과 같이 변경되었습니다. :

코드는 다음과 같습니다:

{dede:loop table=&#39;dede_archives&#39; sort=&#39;&#39; row=&#39;4&#39; if=&#39;&#39;} 
<li>·<a href=&#39;[field:id function=IDReturnURL(@me)/]&#39;>[field:title function=cn_substrR(@me,44)/]</a></li> 
{/dede:loop}
로그인 후 복사

문제는 완벽하게 해결되었습니다. 사용자 정의 SQL 태그를 사용하려는 경우에도 마찬가지입니다.

사실 [field:arcurl/] 태그 대신 [field:id function=IDReturnURL(@me)/]을 사용하세요. 이 문제에 대한 내 해결책의 핵심은 [field:id function= IDReturnURL(@me)/] 및 IDReturnURL.


나중에 고민하다가 arclist 태그를 발견했습니다.

코드는 다음과 같습니다.

{dede:arclist flag=&#39;h&#39; typeid=&#39;&#39; row=&#39;&#39; col=&#39;&#39; titlelen=&#39;&#39; infolen=&#39;&#39; imgwidth=&#39;&#39; imgheight=&#39;&#39; listtype=&#39;&#39; orderby=&#39;&#39; keyword=&#39;&#39; limit=&#39;0,1&#39;} 
<a href=&#39;[field:arcurl/]&#39;>[field:title/]</a> 
{/dede:arclist}
로그인 후 복사

따라서 다음 코드를 직접 사용할 수 있습니다.

코드는 다음과 같습니다.

{dede:arclist row=&#39;10&#39; titlelen=&#39;24&#39; orderby=&#39;pubdate&#39; idlist=&#39;&#39; col=&#39;2&#39;} 
•[field:textlink/]([field:pubdate function=MyDate(&#39;m-d&#39;,@me)/])<br/> 
{/dede:arclist}
로그인 후 복사

해결되었습니다.

위 내용은 Dedecms의 범용 태그 루프에 대한 URL을 입력할 수 없으면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿