(Последнее обновление: 10.09.2017)

Привет дорогие друзья! Сегодня я покажу Вам как отображать виджеты Blogger на определённой странице блогаПо вашему желанию Вы сможете управлять показами любых виджетов/гаджетов, заставляя их отображаться строго на определенных страницах блога. Очень нужная и важная для всех хитрость. В первую очередь наметим цель и определимся с тем гаджетом, показ которого собираемся регулировать. Чтобы легче ориентироваться в шаблоне, обязательно зададим ему название, если таковое у него отсутствует.

Блог Blogger

Как отображать виджеты Blogger на определённой странице блога

В дальнейшем, после всех манипуляций, название можно будет убрать, при отсутствии необходимости в нем.

И так давайте проделаем фокус с виджетом или кодом. Перейдите на вкладку Шаблон - Изменить HTML. Так как нам потребуются  “внутренности” виджетов, отмечаем галочкой “Расширить шаблоны виджета”. Как правило, все виджеты в шаблоне Blogger выглядят так:

<b:widget (id, название и тип виджета)/>
<b:includable id='main'>
(содержимое виджета)
</b:includable>
</b:widget>

С помощью комбинации клавиш CTRL+F (в правом верхнем углу браузера появится окошко) находим название нашего виджета. Для того, чтобы настроить показ виджета, в его код достаточно добавить теги:

<b:widget (id, название и тип виджета)/>
<b:includable id='main'>
<b:if cond='data:blog.pageType == "тип страницы"'>
(содержимое виджета)
</b:if>
</b:includable>
</b:widget>

Сам по себе тег <b:if cond='data:blog.pageType == "тип страницы"'> не имеет функциональности, в данном контексте это условие, обозначающее тип страниц для показа виджета либо для его запрещения и обозначено для примера.

В Blogger существуют следующие типы страниц:

homepageUrl – главная страница
static_page – статичные страницы, например, страница контактов, содержания блога и т.д.
item – страницы сообщений
index – страницы ярлыков
archive – страницы архива

Чтобы вывести или наоборот скрыть виджет на определенной странице вместо открывающего тега <b:if cond='data:blog.pageType == "тип страницы"'>, служащего образцом, воспользуйтесь кодами ниже. На основе этого вы можете регулировать показ виджета на любом типе страниц.

Давайте я Вам покажу пример на виджете "Счетчик".

b:widget id='HTML7' locked='false' title='Счетчик' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != &quot;&quot;'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
</b:if>
<b:include name='quickedit'/>
</b:includable>
</b:widget>

Теперь виджет "Счетчик" будет показан только на главной странице блога.

Теперь сами коды:

Показ виджета Blogger только на главной странице:

<b:if cond='data:blog.url == data:blog.homepageUrl'>
виджет/код
</b:if>

Показ только для страниц сообщений:

<b:if cond='data:blog.pageType == "item"'>
виджет/код
</b:if>

Показ только для страниц архива:

<b:if cond='data:blog.pageType == "archive"'>
виджет/код
</b:if>

Показ для всех страниц, кроме главной:

<b:if cond='data:blog.url != data:blog.homepageUrl'>
виджет/код
</b:if>

Показ только для статических страниц:

<b:if cond='data:blog.pageType == "static_page"'>
виджет/код
</b:if>

Показ только для главной и для страниц ярлыков:

<b:if cond='data:blog.pageType == "index"'>
виджет/код
</b:if>

Показ на всех страницах, кроме указанной:

<b:if cond='data:blog.url != "url_страницы"'>
виджет/код
</b:if>

Показ на определённой странице:

<b:if cond='data:blog.url == "url_страницы"'>
виджет/код 
</b:if>

Показ только на страницах ярлыков:

<b:if cond='data:blog.searchLabel'>
вижет/код
</b:if>

Вот вроде всё. Если что упустил из виду, прошу писать в комментариях. Всем пока. Удачи.

Ваш Сергей