首先要建立自己的URL規則,首先的理解一些定義和變量含義。首先進入URL規則管理這里,你會看到如下內容(進入方法:“系統設置”-》“RUL規則管理”—》“管理RUL規則”)
在PHPCMS2008中是這樣定義的
一、模塊
二、名稱
三、HTML
四、URL示例
在定義RUL規則之前,你首先要理解上面的四點,然后接下來要理解那些變量的含義了。
1、{$parentdir}{$catdir} ---含義:當前欄目目錄名稱;
2、{$catid} ----含義:欄目ID號;
3、.{$fileext}---含義:.htm(注意這里前面要加個“."號l ;
4、{$year} ----含義:年;
5、{$month} --含義:月;
6、{$day} -----含義:日;
更加詳細的如下:
根據后臺 系統設置->相關設置->URL規則管理所列的URL規則編寫。
以下所用示例,請靈活修改。
示例欄目:
新聞news
|___國內china
|___國際inter
1、URL規則所用變量
{$catid}欄目id。例:形如1,10等
{$categorydir}欄目目錄樹(相對于phpcms安裝目錄)。例:如為一級目錄則為/news/,二級目錄為/news/china/,三級目錄為/news/inter/usa
{$catdir}欄目目錄。例:如為一級目錄則為/news/,二級目錄為/china/,三級目錄為/usa/
{$year}
{$page}頁碼。文章分頁時的頁碼。
{$fileext}靜態頁擴展名。為網站配置->生成的擴展名所定義。
{$contentid}文章id。
以下是專題模塊用的
{$typeid}類別id
{$typedir}類別目錄
{{$filename}專題名稱
{$specialid}專題id
問吧,對于問吧,最好不要修改了
{$action}操作
2、URL規則數據庫字段說明
模塊:所屬模塊,目前有問吧,專題,phpcms。
URL規則名稱:這個名稱應該為URL規則應用的范圍,如用于欄目頁(目錄),內容頁等。一般會用到show(內容頁),category(欄目頁)
生成Html:是否生成html。關系到所寫的URL規則。
URL規則/URL示例:這個就是本文重點要講的了
3、應用示例
特別說明:定義url時,應為分頁網址加上{$page}變量。兩條規則用|隔開。
(1)官方演示
{$catdir}/index.{$fileext}|{$catdir}/{$page}.{$fileext}
{$categorydir}/{$year}/{$month}{$day}/{$contentid}.{$fileext}|{$categorydir}/{$year}/{$month}{$day}/{$contentid}_{$page}.{$fileext}
(2)一個例子
建立形如/news/article_1_2.html的規則
{$catdir}/article_{$contentid}.{$fileext}|{$catdir}/article_{$contentid}_{$page}.{$fileext}
如選目錄樹,則{$catdir}改為{$category}
(3)擴展功能(正式版未測試)
定義為動態時,所以欄目、內容頁都為phpcms目錄下/list.php?,/show?等形式,如果想讓url規則為/news/show.php?id=,/news/index.php這個要怎么操作呢?
首先想到的是定義url規則,如
欄目頁{$catdir}/index.php|{$catdir}/index.php?page={$page}
內容頁{$catdir}/show.php?contentid={$contentid}|{$catdir}/show.php?contentid={$contentid}&page={$page}
定義完之后,問題來了,所建的目錄下并沒有index.php和show.php文件,怎么辦?
把list.php復制到相應目錄下,更名為index.php,show.php也做如上操作,這兩個文件都在phpcms的目錄里。
這時再看已經輸入的內容,會提示出錯,路徑錯誤,改show.php第一句為
require ‘../include/common.inc.php’; 這個是根據一級目錄改的
下面還有幾個require,相應的改動一下就行了,我沒改,也沒有報錯。改完之后再瀏覽(在后臺,點文章標題)就可以打開了。
修改復制進去的index.php
第一句修改同上。因為自定義的URL規則是不帶catid參數的,所以在$catid = intval($catid);改為$catid = 5(這里是你所要改的欄目的id,在欄目管理可以看到)。這時就可以看到了。
新聞熱點
疑難解答