DedeCMS5.5之后新增了自定義文件名功能,即添加文章時(shí)多了一個(gè)自定義文件名功能,方便用戶按自己喜好對(duì)文章命名,雖然方便了很多做優(yōu)化人的需求,但是出現(xiàn)了文章的自定義文件名重復(fù)會(huì)覆蓋前面相同文件名的文件的問(wèn)題。比如,我們添加一篇自定義文件名為"Linux"的文章后,再次添加同樣名稱的文章時(shí)會(huì)自動(dòng)覆蓋前一篇,dedecms官方也太大意了,這個(gè)對(duì)優(yōu)化來(lái)講簡(jiǎn)直是災(zāi)難。
下面就分享下DedeCMS5.7自定義文件名重復(fù)問(wèn)題的解決辦法,以避免這種覆蓋同名文件名的情況。
先進(jìn)入你的dede后臺(tái)管理目錄(默認(rèn)為dede),分別打開(kāi)article_add.php和article_edit.php,查找以下代碼:
$filename = trim(cn_substrR($filename,40));
接下來(lái),在后面加上:
//DedeCMS自定義文件名重復(fù)解決方法
if(!empty($filename))
{
$checksql = $dsql->GetOne("SELECT * FROM `@__archives` WHERE filename='".$filename."' and arcrank > -2");
if($checksql)
{
ShowMsg("你的自定義文件名已存在,請(qǐng)重寫(xiě)填寫(xiě)!","-1");
exit();
}
}
然后保存article_add.php和article_edit.php,重新測(cè)試一下,是不是已經(jīng)成功解決了DedeCMS自定義文件名重復(fù)覆蓋前面文件的問(wèn)題了?