Maison > Tutoriel CMS > DEDECMS > Comment dede récupère-t-il le nom de la colonne de troisième niveau et la liste de contenu sous la colonne ?

Comment dede récupère-t-il le nom de la colonne de troisième niveau et la liste de contenu sous la colonne ?

藏色散人
Libérer: 2019-12-21 10:24:18
original
2488 Les gens l'ont consulté

Comment dede récupère-t-il le nom de la colonne de troisième niveau et la liste de contenu sous la colonne ?

Comment dede récupère-t-il le nom de la colonne de troisième niveau et la liste de contenu sous la colonne ?

Le site Web divise la région en une structure hiérarchique province-ville-article en fonction des besoins. Comme le titre l'indique, comment dede récupère-t-il le nom de la colonne de troisième niveau et la liste de contenu sous la colonne. La mise en œuvre spécifique est la suivante, les amis intéressés peuvent se référer à

Étude recommandée : Dreamweaver cms

Le site Web divise la région en structure hiérarchique provinces-villes-articles selon besoins, page d'accueil des colonnes Ce qui doit être affiché est

Le code est le suivant :

{dede:channelarclist} <!--省显示--> 
<a href="">省级标题:{dede:field name=&#39;name&#39;/}</a> 
{dede:channel type=&#39;son&#39;} 
<a href="">市级标题:[field:name/]</a> 
{dede:arclist} 
该市文章{field:title/} 
{/dede:arclist} 
{/dede:channel} 
{/dede:channelarclist}
Copier après la connexion

C'est-à-dire que les colonnes provinciales sont classées par villes et les titres des articles de chaque ville sont affichés. Cependant, la balise {dede:channel} ne peut pas être imbriquée, donc la balise {dede:arclist} sera affichée telle quelle. La solution :

Le code est le suivant :

$typeid = $row[&#39;id&#39;]; 
if((class_exists(&#39;PartView&#39;))) 
{ 
$pv = new PartView($typeid); 
$text = $likeType; 
$text= str_replace(array(&#39;{field&#39;, &#39;/}&#39;), array(&#39;[field&#39;, &#39;/]&#39;), $text); 
$pv->SetTemplet($text,&#39;string&#39;); 
$artlist = $pv->GetResult(); 
$likeType = $artlist; 
}
Copier après la connexion

. Recherchez if($col>1) dans /include/taglib/channel.lib.php $likeType .= "rn" (v5.6 fait 125 lignes, v5.7 fait 156 lignes) Ajoutez le code ci-dessus à cette phrase

Le problème est résolu.

Certaines personnes ont signalé qu'après avoir ajouté ce code, la page de l'article ne peut pas être mise à jour lorsqu'elle contient {dede:channel} {/dede:channel}, vous pouvez donc jeter un œil au code et le remplacer par celui-ci. :

Le code est le suivant :

if($sanji) 
{ 
$typeid = $row[&#39;id&#39;]; 
if((class_exists(&#39;PartView&#39;))) 
{ 
$pv = new PartView($typeid); 
$text = $likeType; 
$text= str_replace(array(&#39;{field&#39;, &#39;/}&#39;), array(&#39;[field&#39;, &#39;/]&#39;), $text); 
$pv->SetTemplet($text,&#39;string&#39;); 
$artlist = $pv->GetResult(); 
$likeType = $artlist; 
} 
}
Copier après la connexion

Puis ajoutez $sanji = $ctag->GetAtt('sanji'); le fichier channel.lib.php 🎜>Lorsqu'il est appelé, il devient :

Le code est le suivant :

{dede:channelartlist} 
{dede:field name=&#39;typeurl&#39;/} {dede:field name=&#39;typename&#39;/} //外框架 
{dede:channel type=&#39;sun&#39; sanji=&#39;1&#39;}//子框架 
<h3><a href="[field:typelink/]" target="_blank">[field:typename/]</a></h3> 
{dede:arclist row=&#39;5&#39; titlelen=&#39;39&#39;} //调用文章 
连接: {field:arcurl/} 
标题: {field:title/} 
{/dede:arclist} 
{/dede:channel} 
{/dede:channelartlist}
Copier après la connexion

Problème résolu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal