PHP程序里面
模塊表單如何設(shè)置偽靜態(tài)并且繼承內(nèi)容的自定義URL
現(xiàn)在文章內(nèi)容URL是 www.xxx.com/myurl
偽靜態(tài)規(guī)則是 "(.+)" => "index.php?s=school&c=show&field=myurl&value=$1", 這里是生效的。
現(xiàn)在想要格式 www.xxx.com/myurl/news 這樣的地址表單news繼承上級內(nèi)容的目錄
發(fā)現(xiàn)模塊表單這里無論怎樣寫偽靜態(tài)都不會生效
"(.+)\/news" => "index.php?s=school&c=news&m=index&cid=$1",
希望大神幫我設(shè)置下
實現(xiàn)內(nèi)容下模塊表單的列表頁 www.xxx.com/myurl/news
實現(xiàn)內(nèi)容下模塊表單的內(nèi)容頁 www.xxx.com/myurl/news/1.html
這樣的規(guī)則 謝謝了
模塊表單的url是必須傳入模塊的內(nèi)容id才能實現(xiàn),你這種思路框架是實現(xiàn)不了的,必須開發(fā)
開發(fā)思路我建議這樣
1、新建一個中間控制器來幫助url找到文章的id,再定向到模塊表單
2、在rewrite.php識別文件中轉(zhuǎn)向到新的中間控制器
開源是一種精神,但不是義務(wù),幫忙是情分,不幫也不要抱怨,建議大家多研究代碼、多閱讀代碼、多翻閱社區(qū)歷史問題!
1 表單控制器打開,把函數(shù)體改加一句
public function _Home_List() { $myurl = $_GET['myurl']; $data = $this->content_model->get_data(0, 0, ['field'=>'myurl', 'value'=>$myurl]); $_GET['cid'] = $data['id'] parent::__construct(...$params); parent::_Home_List(); }2 rewrite.php這樣寫
回復@易學習 好難啊哥 這個加進去有點報錯 現(xiàn)在就不加那個自定義的url了
這個模塊表單的偽靜態(tài)規(guī)則 "school\/news\/([0-9]+)\.html" => "index.php?s=school&c=news&m=index&cid=$1",
直接訪問地址 www.xxx.com/school/news/1.html 生效了
但是從內(nèi)容點擊下面這個鏈接入口進去還是動態(tài)頁面 ,我很納悶
<li><a href="{router::mform_list_url("news", "$id", "school")}">院校資訊</a></li>/index.php?s=school&c=news&m=index&cid=1
大哥幫忙看看
<li><a target="_blank" href="/school/news/{$id}.html ">院校資訊</a></li>