Maison  >  Article  >  développement back-end  >  Méthodes et étapes d'implémentation des fonctions de navigation en chinois et en anglais dans DedeCMS (images)

Méthodes et étapes d'implémentation des fonctions de navigation en chinois et en anglais dans DedeCMS (images)

黄舟
黄舟original
2017-04-01 09:51:371782parcourir

Cet article présente principalement les étapes de DedeCMS pour réaliser les fonctions de Navigation en chinois et en anglais. Cet article donne les étapes de fonctionnement détaillées et les codes de mise en œuvre associés. Les amis dans le besoin peuvent s'y référer

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 l'implémenter avec le puissant CMS Dreamweaver !

Adresse de téléchargement du modèle dedecms : www.php.cn/xiazai/code/dedecms

Ajoutez d'abord un champ à la table dede_arctype dans la base de données, comme indiqué ci-dessus Le préfixe du tableau est le nom de votre site, 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. encore. 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.
Recherchez catalog_edit.htm dans le répertoire dedetemplets

Recherchez

avec le code suivant :

<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>

Ajoutez

ci-dessous avec le code 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 retrouve le code

comme suit :

$upquery = "UP
DATE
 `#分隔符@arctype` 
SET
     iss
end
=&#39;$issend&#39;,
     
sort
rank=&#39;$sortrank&#39;,
     typename=&#39;$typename&#39;,
    typenameng=&#39;$typenameng&#39;,
     type
dir
=&#39;$typedir&#39;,
     isdefault=&#39;$isdefault&#39;,
     defaultname=&#39;$defaultname&#39;,

Ajouter la partie rouge, et le séparateur est de 3 caractères. Supprimez-le et l'ajout est terminé.

Méthode d'appel :

{dede:field name=&#39;typenameng&#39;/}

Si vous souhaitez l'utiliser dans un 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 requête pour l'utiliser dans le canal, et le type, Channelartlist et d'autres pages à onglet sont dans Ajouter des champs de requête à la classe lib correspondante. 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 le style actuel, 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