Не специфичный для Coldfusion вопрос, поэтому ответьте, однако, вы можете.
Я унаследовал проект 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
Я бы уменьшил переменные в верхней части каждой страницы только до идентификатора страницы, а затем вызвал бы DB дляправильные настройки.
Это хорошая идея?Я ненавижу изобретать велосипед, но это действительно большой проект, который потребовал бы много месяцев для полной миграции контента на CMS.
Какова текущая практика хранения настроек страницы?(например, что делает WordPress? Drupal? и т. д.)
---- Редактировать ----
Добавление новых функций / специфичных для страницы скриптов становится кошмаромтак как я должен открыть каждый файл и добавить / редактировать / удалить переменную.Невозможно определить, какие страницы используют какие переменные, не открывая их или не используя командную строку (что, я уверен, доставит неудобства другим разработчикам).
Кроме того, что произойдет, когда я получу кучу устаревших переменных?Например, в конечном итоге переменная «usePrototype» будет прекращена, и весь сайт будет использовать jQuery.
Другой метод заключался в создании и включении файла с гигантским блоком переключателей, который устанавливает эти переменные.Это уже сделано для некоторых вещей (например, метатеги - switch on request.page.machine title, case xxx <meta tag whatever>
).Это беспорядок.