• Авторизация


Показ виджетов на выбранных страницах в блоге на Blogger 16-04-2018 15:10 к комментариям - к полной версии - понравилось!

Это цитата сообщения Иннушка Оригинальное сообщение

Показ виджетов на выбранных страницах в блоге на Blogger

















По желанию автора, ведущего блог (блогера), можно управлять показами любых виджетов (гаджетов) в шаблоне блога так, чтобы гаджеты отображались только на заданных страницах блога. Это достаточно удобно и функционально. Каждый блогер рано или поздно задумывается о чем-то подобном. Разве нужен гаджет похожих статей на странице оглавления?





Изменения придётся делать в самом шаблоне блога. Поэтому нужно будет сделать его резервную копию.

После всех приготовлений приступим к “готовке”. Первым делом наметим цель и определим тот гаджет, показ которого собираемся регулировать. Чтобы легче ориентироваться в шаблоне, обязательно зададим ему название, если таковое у него отсутствует. В нашем случае будем рассматривать пример виджета “Архив”. Озаглавливаем его, допустим, как “Календарь” в настройках элемента. В дальнейшем, после переделок, название можно будет убрать, при отсутствии необходимости в нем. Далее переходим во вкладку “Изменить шаблон”. Так как потребуется содержание виджетов, отметим галочкой “Расширить шаблоны виджетов”.



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



view plainprint?



    <b:widget [id, название и тип виджета] /> 

    <b:includable id='main'> 

        [содержимое виджета] 

    </b:includable> 

    </b:widget>
 


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

view plainprint?



    <b:widget id='BlogArchive1' locked='false' title='Календарь' type='BlogArchive'> 




  Эта строка является началом архива. Чтобы виджет отображался на нужной странице, в его код достаточно добавить теги:



view plainprint?



    <b:widget [id, название и тип виджета] /> 

    <b:includable id='main'> 

     

    <b:if cond='data:blog.pageType == "тип страницы"'> 

     

        [содержимое виджета] 

     

    </b:if> 

     

    </b:includable> 

    </b:widget> 




В случае с гаджетом  “Календарь” это будет выглядеть так:



view plainprint?

    <b:widget id='BlogArchive1' locked='false' title=Календарь' type='BlogArchive'>  

    <b:includable id='main'>

    <b:if cond='data:blog.pageType == "тип страницы"'>

    <b:if cond='data:title'>  

    <h2><data:title/></h2>  

    </b:if>  

    <div class='widget-content'>  

    <div id='ArchiveList'>  

    <div expr:id='data:widget.instanceId + &quot;_ArchiveList&quot;'>  

    <b:if cond='data:style == &quot;HIERARCHY&quot;'>  

    <b:include data='data' name='interval'/>  

    </b:if>  

    <b:if cond='data:style == &quot;FLAT&quot;'>  

    <b:include data='data' name='flat'/>  

    </b:if>  

    <b:if cond='data:style == &quot;MENU&quot;'>  

    <b:include data='data' name='menu'/>  

    </b:if>  

    </div>  

    </div>  

    <b:include name='quickedit'/>  

    </div>

    </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 == "тип страницы"'>, служащего образцом, воспользуйтесь строкой кода из таблицы ниже:














































№

Условие для определенных страниц

Обозначение

1

<b:if cond='data:blog.url == data:blog.homepageUrl'>

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

2

<b:if cond='data:blog.pageType == &quot;item&quot;'>

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

3

<b:if cond='data:blog.pageType == "archive"'>

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

4

<b:if cond='data:blog.url != data:blog.homepageUrl'>

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

5

<b:if cond='data:blog.pageType == &quot;static_page&quot;'>

показ только для статичных страниц

6

<b:if cond='data:blog.pageType == "index"'>

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

7

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

показ только для определенной пользователем страницы


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








 



Серия сообщений "***УРОКИ по BLOGGER и ЖЖ":

Часть 1 - Полезные советы и подсказки по работе в Живом интернете
Часть 2 - Все гаджеты для Blogger
...
Часть 36 - Используем PHP-скрипт в блоге на Blogger
Часть 37 - На главной странице блога располагаем первым выбранное сообщение
Часть 38 - Показ виджетов на выбранных страницах в блоге на Blogger


вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Показ виджетов на выбранных страницах в блоге на Blogger | вера_шубина - Дневник вера_шубина | Лента друзей вера_шубина / Полная версия Добавить в друзья Страницы: раньше»