Новое в блоге
Loading...
12 нояб. 2011 г.

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

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

<b:widget [id, название и тип виджета] />
<b:includable id='main'>
    [содержимое виджета]
</b:includable>
</b:widget>
С помощью комбинации клавиш CTRL+F находим название нашего элемента. Продолжая взятый выше пример, название архива, а именно “Архив2”, будет находиться примерно вот в такой строке (для этого мы и давали ему название):
<b:widget id='BlogArchive1' locked='false' title='Архив2' type='BlogArchive'>
Это строка является началом архива. Для того, чтобы отрегулировать показ виджета, в его код достаточно добавить теги:

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


<b:if cond='data:blog.pageType == "тип страницы"'>
    [содержимое виджета]
</b:if>


</b:includable>
</b:widget>
В случае с архивом это будет выглядеть так:

<b:widget id='BlogArchive1' locked='false' title=Архив2' 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 == "тип страницы"'>, служащего образцом, воспользуйтесь строкой кода из таблицы ниже:


Условие для определенных страницОбозначение
<b:if cond="data:blog.url == data:blog.homepageUrl"></b:if> показ только для главной страницы
<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://адрес страницы/"'> показ только для определенной пользователем страницы
Если в теге условие равно (==) типу страницы, тогда виджет будет показываться, если не равно (!=), виджет запрещен к показу. На основе этого вы можете регулировать показ виджета на любом типе страниц.

Вот наверное всё. Думаю было понятно. Всем пока. До новых встреч. Желаю удачи.

Ух ты кнопочки! Понравилась статья? Поделитесь с друзьями:

0 коммент. :

Отправить комментарий

 
Footer