不是一個coldfusion特定的問題,所以你可以回答。構建自定義CMS,如何處理頁面設置?
我繼承,其中在每個頁面的頂部不同頁面設置特定的變量設置一個ColdFusion項目,如:
<cfset request.page.title = "Example Page">
<cfset request.page.machineTitle = "example_page">
<cfset request.page.isJQueryEnabled = 1>
<cfset request.page.showNavigation = 1>
<cfset request.page.SWFObjectVersion = 2.2>
我想只有
創建數據庫表integer page_id
varchar key
varchar value
我會將每頁頂部的變量減少到頁面ID,然後調用DB進行正確的設置。
這是個好主意嗎? 我討厭重新發明輪子,但這是一個非常大的項目,需要數月的時間才能完成向CMS的內容遷移。
當前存儲頁面設置的做法是什麼? (例如,是什麼WordPress的嗎?Drupal的?等等)
---- ----編輯
增加新功能/頁特定腳本變成了一場噩夢,因爲我不得不打開每個文件和添加/編輯/刪除一個變量。沒有辦法知道哪些頁面正在使用哪些變量而無需打開它們或使用命令行(我確信會給其他開發人員帶來不便)。
另外,當我收到一堆陳舊的變量時會發生什麼?例如,最終「usePrototype」變量將被淘汰,整個網站將使用jQuery。
另一種方法是創建一個包含設置這些變量的巨型開關塊的文件。這已經完成了一些事情(例如元標記 - switch on request.page.machine title, case xxx <meta tag whatever>
)。一團糟。
你想解決什麼問題?目前的方法有什麼問題?重構所有現有的(工作)頁面以使用不同的方法會給您帶來什麼樣的好處? – 2010-06-12 22:00:32
在eclipse中,您可以搜索並以秒爲單位替換所有出現的字符串。我會把它放在Application.cfc中的onRequest方法中。每次調用數據庫獲取SWFObjectVersion對我來說似乎都有點兒麻煩。 application.config.request.SWFObjectVersion是其中一個選項。 – 2010-06-13 09:02:24