Насколько хороша система шаблонов WordPress? - PullRequest
0 голосов
/ 20 октября 2011

В настоящее время я работаю над проектом PHP, используя CodeIgniter в качестве моей платформы.Я взглянул на несколько шаблонных систем, которые, возможно, мог бы использовать - шаблонную систему Строгена (в настоящее время используется в PyroCMS - если я не ошибаюсь), Twig, Smarty и т. Д.

Но я решил пойти на своюсобственный, чтобы построить один с нуля.Поскольку у меня есть опыт работы с шаблонами Wordpress, я думал о создании чего-то подобного.

Чтобы дать вам представление о том, как работают темы Wordpress - Wordpress имеет набор функций (функций тем), которые помогают собирать данные.Мне было интересно, будет ли следовать тому же примеру хорошей идеей и для моего проекта?

Если бы я создал такие шаблонные функции, которые я бы вызывал в своих представлениях, будет ли это работать против принципов MVC?И как-нибудь это повлияет на производительность?

1 Ответ

0 голосов
/ 20 октября 2011

Ну, с MVC, модели взаимодействуют с БД, представления отображают данные, а контроллеры являются посредником.Если бы вы создали свои «шаблонные функции» в контроллерах, я полагаю, что вы будете соблюдать MVC.Если вы хотите сказать, создайте библиотеку или помощников для сбора / обработки данных, вы не будете соблюдать соглашение MVC.AFAIK, это вопрос предпочтения, какой путь вы выберете.Что касается производительности, вы можете использовать профилирование для проверки, что лучше.

Однако, если ваша цель - создать систему шаблонов для CI, похожую на WP, только потому, что вы знакомы с тем, как работают шаблоны WP, я бы предпочел, чтобы это заняло у вас значительно меньше времени.узнать новый, чем строить свой собственный.Я также предположил бы, что освоение нового заняло бы гораздо меньше времени, чем изучение WP.

Кроме того, я думаю, что пиро использует комбинацию шаблонов и умностей Фила, но не позитивно.У Фила есть система шаблонов, доступная для CI здесь: https://github.com/philsturgeon/codeigniter-template Может быть стоит проверить.

ура.

...