Иногда необходимо, чтобы некоторые виджеты отображались только на определённых страница (или на страницах определённого типа).
Это можно легко сделать с помощью тега b:if
следующим образом (открываем Дизайн -> Изменить HTML (отметить 'Расширить шаблоны виджета')):
Однако такой трюк не проходит с такими виджетами как Постоянные читатели (Followers)
и Архив блога (Blog Archive)
. При сохранении шаблона изменения, сделанные внутри этих виджетов, исчезают по непонятным причинам!
Опишу решение для новых шаблонов blogger. За основу взята эта статья. Задача - показывать виджет Постоянные читатели
только на главной странице.
Открываем Дизайн -> Изменить HTML (НЕ отмечать 'Расширить шаблоны виджета') и находим следующий код (в случае, если виджет расположен в правой колонке ищем div с классом column-right-inner
):
И добавляем следующий код:
Сохраняем шаблон и прокручиваем до конца исходного кода. После секции <b:section-contents id='sidebar-left-1'></b:section-contents>
должна появиться секция <b:section-contents id='sidebar-left2-1' />
. Перемещаем <b:widget id='Followers1' locked='false' title='Участники' type='Followers'/>
из первой секции во вторую. Должно получиться примерно следующее:
Минусом данного решения является то, что скрываемый виджет должен находиться либо в начале списка виджетов, либо в конце. Но если очень хочется, то можно создать ещё одну секцию <macro:include id='main-column-left-sections3' name='sections'>
и переместить в неё виджеты которые должны идти после скрываемого виджета.
Источник: В этой статье описывается решение для старых шаблонов blogger (Cached version)
Материалы:
Layouts Data Tags (перевод)
Widget Tags for Layouts (перевод)
Иногда необходимо, чтобы некоторые виджеты отображались только на определённых страница (или на страницах определённого типа).
Это можно легко сделать с помощью тега b:if
следующим образом (открываем Дизайн -> Изменить HTML (отметить 'Расширить шаблоны виджета')):
<b:widget id='HTML5' locked='false' title='Искать на блоге' type='HTML'>
<!-- отображать виджет только на главной странице -->
<b:if cond='data:blog.pageType == "index"'>
<b:includable id='main'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<strong class='title'><data:title/></strong>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>
</b:includable>
</b:if>
<!-- закрываем тег -->
</b:widget>
Однако такой трюк не проходит с такими виджетами как Постоянные читатели (Followers)
и Архив блога (Blog Archive)
. При сохранении шаблона изменения, сделанные внутри этих виджетов, исчезают по непонятным причинам!
Опишу решение для новых шаблонов blogger. За основу взята эта статья. Задача - показывать виджет Постоянные читатели
только на главной странице.
Открываем Дизайн -> Изменить HTML (НЕ отмечать 'Расширить шаблоны виджета') и находим следующий код (в случае, если виджет расположен в правой колонке ищем div с классом column-right-inner
):
<div class='column-left-inner'>
<aside>
<macro:include id='main-column-left-sections' name='sections'>
<macro:param default='0' name='num' value='1'/>
<macro:param default='sidebar-left' name='idPrefix'/>
<macro:param default='sidebar' name='class'/>
<macro:param default='true' name='includeBottom'/>
</macro:include>
<!-- сюда добавим кое-что -->
</aside>
</div>
И добавляем следующий код:
<b:if cond='data:blog.pageType == "index"'>
<macro:include id='main-column-left-sections2' name='sections'>
<macro:param default='0' name='num' value='1'/>
<macro:param default='sidebar-left2' name='idPrefix'/>
<macro:param default='sidebar' name='class'/>
<macro:param default='true' name='includeBottom'/>
</macro:include>
</b:if>
Сохраняем шаблон и прокручиваем до конца исходного кода. После секции <b:section-contents id='sidebar-left-1'></b:section-contents>
должна появиться секция <b:section-contents id='sidebar-left2-1' />
. Перемещаем <b:widget id='Followers1' locked='false' title='Участники' type='Followers'/>
из первой секции во вторую. Должно получиться примерно следующее:
<b:section-contents id='sidebar-left2-1'>
<b:widget id='Followers1' locked='false' title='Участники' type='Followers'/>
</b:section-contents>
Минусом данного решения является то, что скрываемый виджет должен находиться либо в начале списка виджетов, либо в конце. Но если очень хочется, то можно создать ещё одну секцию <macro:include id='main-column-left-sections3' name='sections'>
и переместить в неё виджеты которые должны идти после скрываемого виджета.
Источник: В этой статье описывается решение для старых шаблонов blogger (Cached version)
Материалы:
Layouts Data Tags (перевод)
Widget Tags for Layouts (перевод)
http://blogs.rodgor.ru/post/show/3240/
http://www.gidrm.ru/blog/golyi/post/dumaesh_privlech_k_sebe_novuyu_znakomuyu