Я довольно долго работал над личным проектом cms, потому что устал создавать новые слои и компоненты базы данных с нуля для каждого проекта, поэтому я решил начать небольшую cms в фреймворке zend.
Теперь я подошел к моменту, когда я должен позволить пользователям (будущим клиентам) управлять сайтом, создавая свои menus
, routes
и т. Д., И указывать его на реальную страницу, хранящуюся в базе данных.
У меня есть несколько модулей, таких как статьи, контент, галерея и т. д., в моем проекте я разделил статью и страницу. для статьи это довольно просто, я думаю. для страницы это может быть сложно.
Таким образом, страница сохраняется в таблице (с тегами html) и вводится в представление. Поскольку есть задействованные маршруты, я начал путаться в том, как связать меню, созданные с помощью Zend_Navigation
, и фактическую страницу в базе данных. например, меню вроде:
about us products contact us
the team productname 1 local
mission statement productname 2 international
с разными маршрутами, такими как
/about-us /products/list /contact-us
/about-us/team /products/productname1 /contact-us/local
/about-us/mission /products/productname2 /contact-us/international
Имея в виду, что все страницы взяты из одной таблицы и отображаются в одном представлении PageController?
где конкретные вопросы:
Вопрос 1. Может ли этот подход вообще работать?
Вопрос 1.1, если нет, то какой дизайн лучше?
Вопрос 2, где Zend_Navigation сохранена? поскольку должен быть интерфейс, позволяющий пользователям изменять маршруты и меню.
Вопрос 2.1 Можно ли использовать Zend_Config_Xml_Writer?
Вопрос 2.2, если да, то лучшая практика?