суббота, 17 января 2015 г.

КАК ОТОБРАЖАТЬ ВИДЖЕТЫ В 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:if cond="data:blog.url ==data:blog.homepageUrl">показ только для главной страницы
<b:if cond='data:blog.pageType ==&quot;item&quot;'>показ только для страниц сообщений
<b:if cond='data:blog.pageType == "archive"'>показ только для страниц архива
<b:if cond='data:blog.url !=data:blog.homepageUrl'>показ для всех страниц, кроме главной
<b:if cond='data:blog.pageType ==&quot;static_page&quot;'>показ только для статичных страниц
<b:if cond='data:blog.pageType == "index"'>показ только для главной и для страниц ярлыков
<b:if cond='data:blog.url == "http://адрес страницы/"'>показ только для определенной пользователем страницы

Если в теге условие равно (==) типу страницы, тогда виджет будет показываться, если не равно (!=), виджет запрещен к показу. На основе этого вы можете регулировать показ виджета на любом типе страниц. Давайте я Вам покажу пример на виджете "Счетчик".

<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>

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

Дорогие друзья, тем кому не понятно я поступлю проще. Вот так:

Показ виджета только на главной странице:
1<b:if cond='data:blog.url == data:blog.homepageUrl'>
2 виджет/код
3</b:if>
Показ только для страниц сообщений:
1<b:if cond='data:blog.pageType == "item"'>
2 виджет/код
3</b:if>
Показ только для страниц архива:
1<b:if cond='data:blog.pageType == "archive"'>
2 виджет/код
3</b:if>
Показ для всех страниц, кроме главной:
1<b:if cond='data:blog.url != data:blog.homepageUrl'>
2 виджет/код
3</b:if>
Показ только для статических страниц:
1<b:if cond='data:blog.pageType == "static_page"'>
2 виджет/код
3</b:if>
Показ только для главной и для страниц ярлыков:
1<b:if cond='data:blog.pageType == "index"'>
2 виджет/код
3</b:if>
Показ на всех страницах, кроме указанной:
1<b:if cond='data:blog.url != "url_страницы"'>
2 виджет/код
3</b:if>
Так как в таблице указаны не все правила, приведу дополнительно ещё.

Показ на определённой странице:
1<b:if cond='data:blog.url == "url_страницы"'>
2 виджет/код
3</b:if>
Показ только на страницах ярлыков:
1<b:if cond='data:blog.searchLabel'>
2 вижет/код
3</b:if>

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

Ваш Сергей.

2 коммент.: