最近公司官網是使用 DedeCMS 做的,這個項目中要使用到為導航欄目添加英文標題,就查找資料把它實現了。
根據設計圖寫成靜態頁面后是這樣的效果:
操作步驟如下:
1. 修改數據表,添加英文字段
影響該導航字段類型的是數據表 dede_arctype(我的數據表為zx_arctype),所以該表中需要新增一個字段(英文標題)。
如上圖所示, typenameen 為我的英文菜單字段名字。
2. 修改 catalog_edit.htm 文件,添加英文欄目名稱
catalog_edit.htm 文件在 dede\templets 目錄下,它是后台欄目管理的模板文件。
在 catalog_edit.htm 文件中找到"欄目名稱"版塊,在后面添加"英文欄目名稱"。
在
<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>
后面添加
<tr> <td class='bline' height="26" style="padding-left:10px;"><font color='red'>欄目英文名稱:</font></td> <td class='bline'><input name="typenameen" type="text" id="typenameen" size="30" value="<?php echo $myrow['typenameen']?>" class="iptxt" /></td> </tr>
3. 修改 catalog_edit.php 文件
catalog_edit.php 文件在 dede 目錄下。
找到 typename='$typename' ,在其后添加 typenameen='$typenameen' ,用於修改數據表操作。
一共有兩處。
4. 修改 channel.lib.php 文件
channel.lib.php 文件在 include\taglib 目錄下,用於獲取欄目列表標簽
找到 $type=='top',$type=='son' , $type=='self' 部分,在其中的 sql 語句中 typename 后面添加 typenameen:
更改完成后,在后台欄目管理中就出現了:
調用方法 [field:typenameen].
我的靜態 html 寫法如下:
<ul class="nav-list" id="navList"> <li class="nav-item"> <a href="/" title="首頁"> <span>首頁</span> <span>Home page</span> </a> </li> <li class="nav-item"> <a href="/industry" title="行業應用"> <span>行業應用</span> <span>Industry application</span> </a> </li> <li class="nav-item"> <a href="javascript:void(0)" title="關於早尋" class="active"> <span>關於早尋</span> <span>About foresight</span> </a> </li> <li class="nav-item"> <a href="/hcc" title="HCC日常健康管理體系"> <span>HCC日常健康管理體系</span> <span>HEALTH CONTEXT CLOUD</span> </a> </li> <li class="nav-item"> <a href="/contact" title="聯系我們"> <span>聯系我們</span> <span>Contact us</span> </a> </li> </ul>
調用后寫法如下:
<ul class="nav-list" id="navList"> <li class="nav-item"> <a href="/" title="{dede:global.cfg_indexname/}"> <span>{dede:global.cfg_indexname/}</span> <span>Home page</span> </a> </li> {dede:channel type='top' row='4' currentstyle=" <li class='nav-item'> <a href='~typelink~' title='~typename~' class='active'>~typename~ <span>~typename~</span> <span>~typenameen~</span> </a> </li>"} <li class="nav-item"> <a href="[field:typelink/]" title="[field:typename/]"> <span>[field:typename/]</span> <span>[field:typenameen/]</span> </a> </li> {/dede:channel} </ul>