## URL生成
FOHEARTCMF遵循ThinkPHP的url生成方法:
U方法的定義規則如下(方括號內參數根據實際應用決定):
U('地址表達式',['參數'],['偽靜態后綴'],['是否顯示域名'])
~~~
U('Blog/Index/index') // 生成Blog應用Index控制器的index操作的URL地址
U('Portal/Article/index?id=1') // 生成Portal應用Article控制器的index操作 并且參數id為1的URL地址
U('Portal/Article/index',array('id'=>1) // 生成Portal應用Article控制器的index操作 并且參數id為1的URL地址
U('User/index') // 生成當前應用的User控制器的index操作的URL地址
~~~
參數:
U方法的第二個參數支持數組和字符串兩種定義方式,如果只是字符串方式的參數可以在第一個參數中定義,例如:
~~~
U('Blog/Index/index',array('cat'=>1,'status'=>1))
U('Blog/Index/index','cat=1&status=1')
U('Blog/Index/index?cat=1&status=1')
~~~
添加生成帶域名的 url,只要把第四個參數設置為 true
`U('Blog/Index/index','cat=1&status=1',true,true)`
**leuu/UU方法:**
為了配合后臺設置的 url 美化規則,cmf 增加了 leuu/UU兩個方法,UU方法只是 leuu 的別名用法一樣;
leuu 的參數列表和 U 方法一樣,只是要配合后臺設置的 url美化規則才能生效,如沒有規則,leuu 其實就是 U 方法;
**url的美化規則設置:**
> 進入ThinkCMF后臺,設置->網站信息->URL美化
原始網址規則:應用名(小寫)/控制器名/操作名?參數 如:portal/list/index?id=1 顯示網址:英文字母加數字,不帶后綴;
如:
原始網址規則:portal/list/index?id=1
顯示網址:cases
`leuu("portal/list/index",array('id'=>1)) //生成的 url為/cases.html`
列出常用的優化方案:
~~~
portal/list/index?id=1 news http://demo.foheart.com/news.html
portal/list/index?id=2 discovery http://demo..foheart.com/discovery.html
portal/page/index?id=2 contacts http://demo..foheart.com/contacts.html
portal/page/index?id=14 about http://demo..foheart.com/about.html
portal/article/index article/:id\d http://demo..foheart.com/article/1.html
portal/list/index list/:id\d http://demo..foheart.com/list/1.html
~~~
注意:進行URL美化之后,要進入FOHEARTCMF后臺,進行清除緩存操作后,刷新前臺,才能看到美化效果。