Некоторые примеры «легких» систем управления контентом:
Их объединяет то, что вы просто добавляете определенное имя класса к частям вашей веб-страницы, которые хотите сделать редактируемыми.
В серверной части они каким-то образом сохраняют отредактированные фрагменты обратно в файл, который вы редактировали (без базы данных).
Пример исходного контента и отредактированного контента:
Оригинальный код HTML
<div class="editable">
<ul>
<li>an</li>
<li>unordered list</li>
</ul>
</div>
Отредактированный HTML-код
<div class="editable">
<ol>
<li>an</li>
<li>ordered list</li>
</ol>
</div>
Интерфейс для меня довольно понятен, но как мне лучше использовать бэкэнд (PHP)?
Мне нужно убедиться, что динамический код PHP продолжает работать, поэтому я не могу просто обновить весь файл.
Любые ресурсы или указатели очень приветствуются, так как я искал эту технику, но не смог найти какие-либо глубокие идеи или способы сделать это.
Перечисленные выше системы управления легким контентом не являются открытыми, поэтому обучение из источника также не вариант.
EDIT
Я заявил, что не хочу использовать PHP DOM, но все изменилось. И Surreal CMS, и CushyCMS используют его, что является хорошим показателем того, что это путь.
Проблема с PHP DOM, с которой я сталкиваюсь, заключается в том, что я не могу заменить только частью оригинального документа, отредактированного пользователем.
При загрузке исходного файла PHP DOM будет делать нежелательные вещи с документом, такие как изменение метатега, преобразование одинарных кавычек в двойные кавычки, ...
Теперь, для отредактированной части это хорошо, но для остальной части документа это неприемлемо, поскольку это должно остаться нетронутым (пользователь не отредактировал это, верно).
Кажется, что Cushy и Surreal знают, как остановить PHP DOM от прикосновения к остальной части документа, но я не знаю. Так что, если вы знаете, дайте мне знать.