Maison  >  Article  >  Tutoriel CMS  >  Comment DedeCMS implémente les fonctions de navigation en chinois et en anglais

Comment DedeCMS implémente les fonctions de navigation en chinois et en anglais

藏色散人
藏色散人original
2019-12-17 09:41:022049parcourir

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

Comment DedeCMS implémente les fonctions de navigation en chinois et en anglais

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_

Comment DedeCMS implémente les fonctions de navigation en chinois et en anglais

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=&#39;bline&#39; height="26" style="padding-left:10px;"><font color=&#39;red&#39;>栏目名称:</font></td>
<td class=&#39;bline&#39;><input name="typename" type="text" id="typename" size="30" value="<?php echo $myrow[&#39;typename&#39;]?>" class="iptxt" /></td>
</tr>

Ajouter

Le code est le suivant :

<tr>
<td class=&#39;bline&#39; height="26" style="padding-left:10px;">栏目英文名称:</td>
<td class=&#39;bline&#39;><input name="typenameng" type="text" id="typenameng" size="30" value="<?php echo $myrow[&#39;typenameng&#39;]?>" class="iptxt" /></td>
</tr>

Enfin on ouvre dedecatalog_edit.php

et on trouve

Le code est le suivant :

$upquery = "UPDATE `#分隔符@__arctype` SET
issend=&#39;$issend&#39;,
sortrank=&#39;$sortrank&#39;,
typename=&#39;$typename&#39;,
typenameng=&#39;$typenameng&#39;,
typedir=&#39;$typedir&#39;,
isdefault=&#39;$isdefault&#39;,
defaultname=&#39;$defaultname&#39;,

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=&#39;son&#39; row=&#39;10&#39; typeid=&#39;1&#39;}
<li><a href=&#39;[field:typeurl/]&#39;>[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==&#39;top&#39;)
{
$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==&#39;son&#39;)
{
if($typeid==0) return &#39;&#39;;
$sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `#分隔符@__arctype` WHERE reid=&#39;$typeid&#39; And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type==&#39;self&#39;)
{
if($reid==0) return &#39;&#39;;
$sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#分隔符@__arctype` WHERE reid=&#39;$reid&#39; And ishidden<>1 order by sortrank asc limit 0, $line ";
}

Deuxième place :

Le code est le suivant :

//如果用子栏目模式,当没有子栏目时显示同级栏目
if($type==&#39;son&#39; && $reid!=0 && $totalRow==0)
{
$sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#分隔符@__arctype` WHERE reid=&#39;$reid&#39; 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!

Déclaration:
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