之前給大家分享了修改Discuz帖子/文章被刪除后跳轉至404頁面,并返回404狀態,讓大家知道了如何設置帖子或者文章被刪除了后返回404狀態,從而對404更有利。(修改404的重要性就不再贅述了,懂的自然懂。)

那么如果插件被刪了,出現“插件不存在或已關閉”

“插件不存在或已關閉”404

那么如何使這樣一個頁面也返回404代碼呢?

在解決這樣一個問題之前我也百度了一下,這個問題關注的人并不多,有人有這樣的疑問,但是沒有解決,所以沒有從度娘那里找到答案。在苦苦折騰一番之后終于找到了代碼在哪里修改,特此給大家分享一下。

解決步驟

1、打開網站根目錄,找到“plugin.php”文件,最好使用專業點的軟件打開,比如editplus、dreamweaver等。

2、找到第37行代碼,具體位置:

 

if(empty($identifier) || !preg_match("/^[a-z0-9_\-]+$/i", $module) || !in_array($identifier, $_G['setting']['plugins']['available'])) {
	showmessage('plugin_nonexistence');

 將其中的

showmessage('plugin_nonexistence');

替換成:

header('HTTP/1.1 404 Not Found');
header('status: 404 Not Found');
include("404/index.html");
exit();

因為“showmessage('plugin_nonexistence');”這一段在文件里出現比較多,37行的替換掉對于seo效果是最好的,其他的可以不用管,

其中“404/index.html”為自己設置的404頁面的路徑。

效果演示:

修改之前:

插件不存在或已關閉404

修改之后:

插件不存在或已關閉404

您的支持將鼓勵我們繼續創作!

[微信] 掃描二維碼打賞

[支付寶] 掃描二維碼打賞