Цитата |
---|
Денис Логинов написал: не понимаю почему такая сложность из-за простого вывода нельзя сделать просто: если заголовок пустой то далее весь блок не выводить, иначе выводить. ? |
Вы не вникнули в суть функций отложенного контента. Они нужны тогда, когда тебе нужно вывести некий контент выше по HTML верстке, но содержимое этого контента ты будешь знать только когда отработается вся страница и ее компоненты. Типичный пример - цепочка навигации. Ты не знаешь, что у тебя будет за цепочка навигации, пока не отработают все компоненты ниже по коду. Тоже самое и с метатегами. На момент срабатывания функции ShowTitle нельзя сделать валидную проверку на содержимое title через условия, так как он еще не сформирован. ShowTitle не выводит непосредственно текст, она только добавляет буферную метку в контент, говорящую о том, что на это место нужно будет проставить уже сформированный тайтл, после того как завершат работу компоненты. Подстановка реального контента на место буферных меток осуществляется движком. На этот момент уже сформирован весь HTML код хэддера, футера и контентной части и проверки, которые вы сделаете в хэддере не отрабатывают на момент подстановки буферного контента .Гарантировано можно получить title только в футере или на событие onEpilog. И единственный вариант здесь добавить к конечному title обертку h2, и там где вы ее добавите сделать проверку на то, что title не пустой.