Привет дорогие друзья! Сегодня я покажу Вам как отображать виджеты Blogger на определённой странице блога. По вашему желанию Вы сможете управлять показами любых виджетов/гаджетов, заставляя их отображаться строго на определенных страницах блога. Очень нужная и важная для всех хитрость. В первую очередь наметим цель и определимся с тем гаджетом, показ которого собираемся регулировать. Чтобы легче ориентироваться в шаблоне, обязательно зададим ему название, если таковое у него отсутствует.
В дальнейшем, после всех манипуляций, название можно будет убрать, при отсутствии необходимости в нем.
И так давайте проделаем фокус с виджетом или кодом. Перейдите на вкладку Шаблон - Изменить HTML. Так как нам потребуются “внутренности” виджетов, отмечаем галочкой “Расширить шаблоны виджета”. Как правило, все виджеты в шаблоне Blogger выглядят так:
<b:includable id='main'>
(содержимое виджета)
</b:includable>
</b:widget>
С помощью комбинации клавиш CTRL+F (в правом верхнем углу браузера появится окошко) находим название нашего виджета. Для того, чтобы настроить показ виджета, в его код достаточно добавить теги:
<b:includable id='main'>
<b:if cond='data:blog.pageType == "тип страницы"'>
(содержимое виджета)
</b:if>
</b:includable>
</b:widget>
Сам по себе тег <b:if cond='data:blog.pageType == "тип страницы"'> не имеет функциональности, в данном контексте это условие, обозначающее тип страниц для показа виджета либо для его запрещения и обозначено для примера.
В Blogger существуют следующие типы страниц:
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 != ""'>
<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>
Вот вроде всё. Если что упустил из виду, прошу писать в комментариях. Всем пока. Удачи.
Ваш Сергей
Здравствуйте. А есть возможность сделать виждет «популярные сообщения» так, что бы он отображался только внизу статей и отображал не статьи со всего блога, а только с ярлыка, на статье которого он и находиться в данный момент. . . Получилась бы некая альтернатива «популярным сообщениям», коды которой мне так и не удалось вставить так как не нашел нужных ссылок((( А все потому что 3 день в «блоговодстве»))
Надеюсь откликнитесь) Если нужна еще инфа от меня — пишите на мыло — буду ждать с нетерпением)
Привет, Андрей!
Может вы имеете ввиду виджет похожих сообщений. Он как раз отображает похожие записи по ярлыкам и располагается после каждой статьи вашего блога. Если он, тогда у меня на блоге данные виджеты есть. 🙂
Сергей, спасибо! полезная статья 🙂 Пригодилась сегодня, когда скрывал виджет от engageya что бы он показывался только в сообщениях-статьях. Почему разработчики этих виджетов сразу не делают подобные коды для виджетов — не понимаю.
Ничего не понятно, что куда вставить, чтобы виджет популярные сообщения был на отдельной странице.