CMS постоянная ссылка и система шаблонов, как? - PullRequest
2 голосов
/ 07 июня 2011

Я хочу понять, как использовать систему шаблонов и постоянные ссылки на сайтах php: D! ..

Позвольте мне описать себя больше,

1.В настоящее время у меня есть 20 файлов, каждыйего собственная логика php (index.php, wizard.php, search.php и т. д.) ВСЕ используют один и тот же класс и включают в себя (install.php включает все необходимые для всех классов в моем проекте, кроме require_once (install.php) во всех файлах).)

я хочу переделать мой сайт в.

Analyze URL requested ---> IDENTIFY requested page ---> GET TEMPLATE for THIS PAGE -->MODIFY header(meta) and footer(javascript) ---> add logic ---> display page :D.

может кто-нибудь поставить меня на правильный путь обучения: D!.Потому что я полностью закодировал мой сайт в oop и загрузил весь его контент динамически из MYSQL (простая маленькая CMS), но я понятия не имею, как присоединить шаблон и php к индексу, не повторяя себя и создавая разные файлы для каждой страницы в моей сети!(каждый файл, конечно, выполняет разные задачи, например, файл users.php выполняет вход в систему, регистрацию, userprofile и т. д.)

Надеюсь, мой английский был слишком плохим, и вы могли понять мой вопрос: D!

Myтекущий подход на данный момент:

Mysql таблица: page_tbl столбцы: pagename, LogicFile, templateFile, MetaTag.

index.php? pagename

проверит, если еще не кешируется или нетв списке для поиска будет:

Mysql:SELECT * WHERE pagename='$_GET['page']'

loginfiles = cars.php, search.php (будет взорван и включен) Файлы шаблонов = будуттакже взорван и модифицирован в соответствии с MetaTag. Metatag : Сериализированный ассоциированный массив с ['name'] = ['value'];

Затем я запускаю вывод буфера, заменяю шаблон новыми описаниями, а ключевые слова (автоматически генерируемые) включают логические файлы.include footer.php (который включает в себя скрипты)

Я близок к правильному маршруту или все еще далеко?или я потерял свой след и перебил

Ответы [ 2 ]

2 голосов
/ 07 июня 2011

Если вы не уверены, хотите ли вы написать свой или использовать уже существующий.

  • Это будет весьма полезный опыт, но очень трудоемкий, чтобы написать свой собственный.
  • Если у вас есть задача, которую нужно решить, используйте существующую.

Сказано, что существует множество шаблонных систем, smarty - самая долгоживущая. Вы можете найти краткое обсуждение 5 популярных на phpbuilder .

У вас также есть целые фреймворки, которые вы можете рассмотреть. Они представляют собой нечто большее, чем просто систему шаблонов, в которую включены вещи из базы данных, помощники по ajax и т. Д. Zend , CakePHP и Codeigniter - популярные. Вы можете сравнить их на phpframeworks.

1 голос
/ 07 июня 2011

Лучший способ - пройти по этому маршруту:

  • данные запроса на анализ
  • определить контроллер, который будет использоваться
  • в контроллере выберите макет и шаблон [макет «включает» шаблон, он содержит содержимое, общее для всех страниц, а шаблон имеет специфичный для запроса контент]
  • в контроллере также извлекает данные из базы данных [путь MVP]
  • присваивает данные массиву и передает их в макет, данные передаются в шаблон
  • в макете и шаблоне использовать данные из этого массива и представления конструкции
  • передать все в браузер

Так работают фреймворки, и это не так уж плохо. ;]

...