上回我們談到Discuz!x2.5設置門戶為首頁去掉portal.php這只是簡單的去掉了portal.php 下面我們更詳細的介紹去掉面包屑的。
discuz有門戶與論壇之分,但是這二個大件都有自己對應的文件名,門戶首頁是portal.php論壇首頁是forum.php,論壇帶有forum.php還說的過去,可是當用戶輸入網址后一般是門戶首頁,但是DZ會多個portal.php尾巴很不美觀。最重要的是這樣會影響SEO效果,百度會降權的。
為什么會自動出現portal.php,這個要從網站的默認文檔開始分析了,一般一個網站都有默認文檔的,這個文件就是輸入網址后自動執行的文件。而DZ里就有個index.php默認文檔。因為DZ后臺有應用啟用功能,不同的設置index.php會執行不同的應用,比如你開啟了論壇關閉了門戶,那么輸入網址會自動跳到forum.php。
之前的DZ版本是可以隱藏portal.php的,而后來的版本不能隱藏。
有二個方法可以實現:
一、修改空間的默認文檔
這樣輸入網址時自動執行portal.php,而網址欄不變。可是網站上還有別的地方還是有index.php的鏈接。我們應該設置為/,這樣會自動的執行默認文檔。
設置方法:
1、將后臺“界面>>導航>>主導航”中將默認門戶取消可用,然后添加一個首頁的菜單(鏈接那里直接輸入/)。
照上面這兩步修改后就實現了直接訪問域名時不跳轉到portal.php了,但還得考慮到門戶的其他頁面中,在面包屑的位置那里仍然有portal.php存在,所以為了改得徹底些,再按照下面的步驟修改吧:
2、修改模板文件template/default/portal/目錄下的list.htm、list_category_onerank.htm、list_category_tworanks.htm、view.htm,三個文件一樣的方法:
查找代碼:
<a href="$_G[setting][navs][1][filename]">{lang
到就近的一個:
<em>›</em>
將其刪除或將鏈接地址改為你需要的。
順便也將含有(有的就改,沒有就不管):
<a href="index.php"
這樣的代碼中的index.php也改為/,要不首頁鏈接就存在文件名了哦。
好了,按照以上幾步修改之后,就徹底去掉了門戶頁中的portal.php文件名了。
二、修改index.php文件代碼
查找代碼:
$url = empty($_ENV['domain']['app']['default']) ? (!empty($_ENV['domain']['defaultindex']) ? $_ENV['domain']['defaultindex'] : 'forum.php') : 'http://'.$_ENV['domain']['app']['default'];
改為:
$_ENV['curapp'] = str_replace('.php', '', $_ENV['domain']['defaultindex']);
方法一與方法二就前面不一樣,后面的index.php設置成/都是一樣的。
評論