国产午夜爽爽爽男女免费动漫AV-爽死你个放荡粗暴婬故事-欧美在线观看大屁股视频-免费 无码 国产在线观看观

內(nèi)容優(yōu)化

內(nèi)容優(yōu)化

Products

當(dāng)前位置:首頁(yè) > 內(nèi)容優(yōu)化 >

xunrui迅睿cms怎么設(shè)置URl規(guī)則,內(nèi)容頁(yè)獲取內(nèi)容標(biāo)題拼音首字母作為url規(guī)則

96SEO 2025-07-19 17:52 122


在創(chuàng)建定義URL規(guī)則的時(shí)候,畢竟系統(tǒng)自帶的通配符變量有限,如果發(fā)現(xiàn)通配符變量沒法滿足你的實(shí)際需求

image.png

我們可以使用自定義函數(shù)來做,當(dāng)然需要有PHP基礎(chǔ)的人才行~


比如,我在模塊內(nèi)容的url中想把標(biāo)題title字段轉(zhuǎn)換為拼音,

/news/標(biāo)題拼音.html

作為url的這種情況,就沒辦法使用默認(rèn)的通配符了,實(shí)現(xiàn)步驟


1、定義函數(shù)返回url規(guī)則代碼

函數(shù)文件是config/custom.php,定義個(gè)名字,隨便自己取,xxxurl

function xxxurl($data) {
    $py = \Phpcmf\Service::L('pinyin')->result($data['title']); // 把標(biāo)題轉(zhuǎn)換拼音
    $url = "/news/".$py.".html"; // url規(guī)則:news/pinyin.html
    dr_mkdirs(WRITEPATH.'myid/'); // 創(chuàng)建id緩存存儲(chǔ)目錄
    file_put_contents(WRITEPATH.'myid/'. md5(trim($url, '/')).'.txt', $data['id']); // 將id號(hào)存儲(chǔ)緩存文件
    return $url; //返回我自己的
}


2、在規(guī)則里面填寫新標(biāo)簽:

{xxxurl($data)}

image.png


3、然后更新內(nèi)容url地址,使url地址生效

4、編寫偽靜態(tài)解析規(guī)則,因?yàn)檫@是你自己寫的函數(shù),所以無法用系統(tǒng)生成的代碼了

5、打開config/rewrite.php,加入代碼

// 判斷url是否是來自自定義函數(shù)
if (CMSURI) {
    $myfile = WRITEPATH.'myid/'.md5(urldecode(CMSURI)).'.txt';
    if (is_file($myfile)) {
        $id = file_get_contents($myfile);
        if ($id) {
            return [
                CMSURI => 'index.php?c=show&id='.$id, // 這里寫內(nèi)容的地址
            ];
        }
    }
}

最終效果:

使用自定義函數(shù)作為URL規(guī)則

本文轉(zhuǎn)自:https://www.xunruicms.com/doc/659.html

以上是以標(biāo)題的全拼作為url,要想只提取標(biāo)題首字母的話,需要將result函數(shù)第二個(gè)參數(shù)設(shè)置為0,完整代碼如下:

function xxxurl($data) {
$py = \Phpcmf\Service::L('pinyin')->result($data['title'],0); // 把標(biāo)題轉(zhuǎn)換拼音首字母
$url = "/blogs/".$py.".html"; 
dr_mkdirs(WRITEPATH.'myid/'); 
file_put_contents(WRITEPATH.'myid/'. md5(trim($url, '/')).'.txt', $data['id']); 
return $url;
}


標(biāo)簽:

提交需求或反饋

Demand feedback