我已经在互联网上进行了一些挖掘,但没有什么让自己变得明显。
我正在寻找将自定义 CMS 与骨干网集成,以便可以使用原始 http 请求或通过骨干网的“状态”开关加载页面。CMS 目前专注于通过 htaccess/mod-rewrite 为其路由/url 自动重写规则,但是骨干网对其内部路由使用不同的格式结构。
我希望 CMS 可以将其重写规则转换为骨干格式,以便每当将页面添加到 CMS 时,骨干就会意识到它并自动更新。例如,CMS 将这样的页面负载输出到全局 SiteMap 对象:
....
"contact" => array(
"key" => "contact",
"url" => "^(en|fr|de)/contact/$",
"type" => "page",
"template" => "contact",
"method" => "contact",
"sitemap" => TRUE,
//other page config vars etc
),//..and so on
...
然后有一个解析器,它向 .htaccess 写入规则,如下所示:
RewriteRule ^(en|fr|de)/contact$ index.php?page=contact&lang=$1§ion=$2
问题:
显然,主干路由器格式有点不同,需要在 PHP 中完成大量的翻译工作才能输出干净整洁的路由器配置。我不敢相信我是第一个遇到这种情况的人,因为这似乎是尝试将 Backbone 应用程序集成到 CMS 的必要步骤。谁能指出一些翻译这些字符串格式的方法的方向?也许我以错误的方式接近这个?
确实非常感谢。