1. 確定不修改discuz代碼;
2. 繼承discuz template類,重載parse_template 方法;由于discuz在模版引擎這一塊沒有考慮擴充性,對标簽的解析全部寫在一個方法中,是以隻能重複大量代碼進行重載;其中調用到的createurl方法放在idx.php 入口檔案中,其實這裡也可以直接調用原始的靜态方法 - Mvc_Router::creatUrl();
https://gitcafe.com/web3d/uxf/blob/master/upload/source/class/mvc/mvc_template.php
3. 不覆寫discuz的結果,就是這些擴充的東西隻能在uxf體系裡使用
統一路由構造與解析 說明
比如模版中統一的url寫法
參數說明:
api:子產品,預設子產品common可不用添加,如 /news/list/id/10
main:控制器
list:動作
其他:都是參數
在普通url模式下,上述寫法将會生成
這樣的完整的url。
在pathinfo的模式下,将會生成
在Diy的模式下,将根據自己定義的方式生成,如