Волны (Waves) :: Description

Рассмотрим следующую ситуацию.
Например у нас есть output шаблон:

<html>
<head>
      <title>MegaSite</title>
</head>
<body>
    <?php WBG::content()?>
</body>
</html> 


<?php WBG::content()?> выведет следующее содержание:


<h1>Заголовок документа</h1>
текст документа.

Казалось бы все хорошо. Но тут manager выдаёт гениальную мисль – нужно чтобы в <title> показывался не просто "Mega Site"

А после "Mega Site?" шел бы заголовок документа для лучшей индексации поисковиками. Что делать, ведь <?php WBG::content()?>  обработается после <title>, а получить заголовок мы можем толька из WBG::content.

Варианты
a) написать модуль, который определит который документ будет выведен и заранее получит заголовок и вставить его в <title>
b) выполнить WBG::content в самом начале еще до <title >, создать в нем 2 переменные – одну с заголовком, вторую с содержанием этого WBG::contentа и вывести их в нужных местах.

c) Использовать волны.


Что такое Волна (wаvе)? 1 волна ето 1 проход парсера по коду. Т.е. в нашем случае нужно 2 волны, первая пройдет по коду, проигнорирует <title>, выполнит WBG::content. В WBG::content мы получим все нужные данные. После этого парсер еще раз пройдет по шаблону и вставит полученные данные в <title>. Как это выглядит: 

<html>
<head>
      <title>MegaSite <?php WBG::variable("show_title",1)?></title>
</head>
<body>
    <?php WBG::content()?>
</body>
</html>


С волнами на данный момент умеют работать 2 функции WBG::module(string $module_name, integer $wave) i WBG::variable(string $variable_name, integer $wave)
Если вы указываете второй аргумент – это значит, что они выполнятся только при определенном проходе волны.

Нумерация волн начинается с 0. т.е – самая первая волна будет нести номер 0.
Еще нужно учесть, что если вы передаете болше чем 2 аргумента в WBG::module(),то это не будет работать с волнами. По крайней мере пока.
Позже я это исправлю.

Учтите еще и то, что волны негативно сказываются на производительности и allocated memory. Не сильно, но все время следите за этим. Увлекаться не стоит.

 

Пользователь

Пароль

Поиск по сайту



Ссылка продана за пачку денег
бесплатная CMS