用了段時間Discuz門戶系統,雖然功能強大,但是需要更改的大問題還是很多,這里講一下比較嚴重的吧。
門戶head盡管用了但是各搜索引型快照都是錯亂的,如CSS、JS、圖片都是死鏈!(主要是二級目錄如:域名/*)
我自己研究了一個方法,不說最合適,但是基本可以解決問題。
首先查看網站源代碼,看看哪些都出現了相對鏈接,把模板對應標簽鏈接加上{$_G['siteurl']},其次對如緩存樣式,這個代碼沒找到對應的文件修改,但是后臺,全局,性能優化,服務器優化,CSS 文件 URL可以修改一下CSS樣式文件的路徑為自定義路徑,路徑的地址加上http://域名/,這樣緩存部分就搞定了。
其次是文章內的圖片鏈接,PHP和JS基礎很差只能在模板內使用str_replace替換函數對對應變量進行字符匹配來解決此問題,打開/source/module/portal/portal_view.php,找到
$article['related'] = array(); if(($relateds = C::t('portal_article_related')->fetch_all_by_aid($aid))) { foreach(C::t('portal_article_title')->fetch_all(array_keys($relateds)) as $raid => $value) { $value['uri'] = fetch_article_url($value); $article['related'][$raid] = $value; } }
在上面加上
if(str_replace("src="你的網址/data/attachment/","src="你的網址/data/attachment/",$content['content'])<1){ $content['content'] =str_replace("src="data/attachment/","src="你的網址/data/attachment/",$content['content']); }
注意還有個方法是在后臺設置附件路徑給絕對地址就好了,但是此方法只對新生成圖片有效,此方法直接將域名寫入數據庫中。
完成后更新緩存就OK了!