Я был бы очень признателен, если бы кто-нибудь мог мне помочь в этом вопросе :)
Я хочу знать, можно ли создать собственную семантическую разметку в PHP, как и в BB-кодах, но я хочу иметь возможность использовать ее в моей системе движков шаблонов, поэтому я мог бы использовать ее для вызова настраиваемых модулей, таких как система голосования, добавление комментарии, форму входа, регистрационную форму и т.д....
Позвольте мне разъяснить вам, ребята, о том, что я имею в виду;
Я работаю над своей собственной CMS, чтобы не использовать ее в производственных целях, но лучше изучать PHP; Поэтому у меня возникла идея называть определенные модули на странице на основе их положения и для того, чтобы иметь возможность делать;
Например, у нас есть модуль входа в систему, который является просто формой входа в систему, ничто не слишком сумасшедшим, однако вы хотите, чтобы он мог динамически включать этот модуль на любую страницу, использующую бэкэнд, и не касаясь какого-либо кода;
Таким образом, все, что вы делаете на странице шаблона, использует мои коды bb, о которых я вам говорил ранее; Что-то вроде этого;
Помните, что это только идея;
<zone name="left_sidebar"></zone>
И вы добавляете эту разметку зоны на свою боковую панель, и если какой-либо из вашего модуля должен отображаться на левой боковой панели, он просто будет иметь эту разметку и не более того...
И у вас есть множество этих семантических разметок, основанных на том, сколько редактируемых блоков у вас на вашей странице; так что у вас может быть одна для правой боковой панели, одна для нижнего колонтитула и одна для заголовка... и т.д.
Поэтому мне теперь нужно знать, как можно искать открывающие и закрывающие теги, в этом случае это будет <zone></zone>
, тогда ему нужно искать его атрибут и его значение, в этом случае name="right_sidevar"
....
У кого-нибудь есть представление о том, как я могу это сделать...
Заранее спасибо :)
Вы можете проверить TWIG; в то время как он не поддерживает эту функцию (поскольку он использует специальный синтаксис для своих собственных элементов), он имеет очень хорошую поддержку для создания собственных элементов, тегов, подзапросов и других фанковых элементов в бэкэнд.
Существует также ряд систем, которые выполняют эту задачу в интерфейсе; это означало бы, что подстановка выполняется Javascript в браузере. В дополнение к уже упомянутому Полимеру есть также Google framework, Angular.
Возможно, вы можете использовать модуль php libxml для анализа вашего XML файла.