Maison > Article > Tutoriel CMS > Comment DedeCMS implémente les fonctions de navigation en chinois et en anglais
Comment DedeCMS implémente-t-il les fonctions de navigation en chinois et en anglais ?
Aujourd'hui, j'ai vu un ami dans le groupe qui avait besoin d'implémenter la fonction de noms de colonnes en chinois et en anglais (comme indiqué ci-dessous). Voyons comment implémenter le puissant CMS Dreamweaver !
Apprentissage recommandé : Dreamweaver cms
Ajoutez d'abord un champ à la table dede_arctype dans la base de données. Le préfixe de la table précédente est The. le nom de votre site n'est pas nécessairement dede_
L'effet après l'ajout est celui indiqué ci-dessus. La méthode d'ajout spécifique ne sera pas détaillée à nouveau. Parmi eux, typenameng est le champ que j'ai ajouté. Le nom est un peu long. Bien sûr, vous pouvez également le changer en un nom que vous aimez.
Trouver le catalog_edit.htm dans le répertoire dedetemplets
Trouver le code
comme suit :
<tr> <td class='bline' height="26" style="padding-left:10px;"><font color='red'>栏目名称:</font></td> <td class='bline'><input name="typename" type="text" id="typename" size="30" value="<?php echo $myrow['typename']?>" class="iptxt" /></td> </tr>
Ajouter
Le code est le suivant :<tr> <td class='bline' height="26" style="padding-left:10px;">栏目英文名称:</td> <td class='bline'><input name="typenameng" type="text" id="typenameng" size="30" value="<?php echo $myrow['typenameng']?>" class="iptxt" /></td> </tr>Enfin on ouvre dedecatalog_edit.php et on trouve Le code est le suivant :
$upquery = "UPDATE `#分隔符@__arctype` SET issend='$issend', sortrank='$sortrank', typename='$typename', typenameng='$typenameng', typedir='$typedir', isdefault='$isdefault', defaultname='$defaultname',Ajoutez la partie rouge et supprimez les 3 caractères de séparateur. Maintenant l'ajout est terminé. Méthode d'appel : {dede:field name='typenameng'/} Vous souhaitez l'utiliser dans le canal , par exemple, le code est le suivant :
{dede:channel type='son' row='10' typeid='1'} <li><a href='[field:typeurl/]'>[field:typename/][field:typenameng/]</a></li> {/dede:channel}Ensuite, vous devez modifier un fichier et trouver includetaglibchannel.lib.php Première place :
Le code est le suivant :
if($type=='top') { $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `#分隔符@__arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line "; } else if($type=='son') { if($typeid==0) return ''; $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `#分隔符@__arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line "; } else if($type=='self') { if($reid==0) return ''; $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#分隔符@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; }Deuxième place : Le code est le suivant :
//如果用子栏目模式,当没有子栏目时显示同级栏目 if($type=='son' && $reid!=0 && $totalRow==0) { $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#分隔符@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; $dsql->SetQuery($sql); $dsql->Execute(); }Ajouter le champ de requête et vous pouvez l'utiliser dans le canal. Il existe également des pages à onglet telles que type, channelartlist, etc. qui ajoutent des champs de requête aux classes lib correspondantes. En raison des limitations d'espace, il est préférable de les décrire en détail ici. //Gérer le style de la colonne actuelle dans la même colonne de niveau. Appelez dans currentstyle, includetaglibchannel.lib.php ligne 140 $linkOkstr = str_replace("~typename~",$row['typename'],$linkOkstr); ajouter ci-dessous $linkOkstr = str_replace("~ typenameeng); ~",$row['typenameeng'],$linkOkstr); c'est tout.
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!