Условные теги позволяют отображать элементы только на определённых веб-страницах, не задействовав весь блог в целом. И в отличии от свойства
display: none;, не просто их скрывают, а удаляют из исходного кода.
Для того, чтобы понять что такое условные теги, я приведу простой пример
<b:if cond='погода == дождливая'>
я остаюсь дома
<b:else/>
иду гулять
</b:if>
Что можно интерпретировать как: "Если (
b:if cond) погода дождливая, то я остаюсь дома, иначе (
b:else) иду гулять".
Когда мы вместо равенства указываем
!=, то получается наоборот:
<b:if cond='погода != дождливая'>
я остаюсь дома
<b:else/>
иду гулять
</b:if>
"Если погода
недождливая, то я остаюсь дома, иначе иду гулять".
Может быть как больше ситуаций (несколько раз употребляться
b:else), так и только одна:
<b:if cond='погода == дождливая'>
я остаюсь дома
</b:if>
Обязательно должно присутствовать окончание условия
</b:if>.
Наиболее полезные условия Blogger
Для Blogger есть много разных условий, но наиболее интересными является тип групп страниц (
data:blog.pageType). Он может принимать пять значений:
- Cтраницы
<b:if cond='data:blog.pageType == "static_page"'>
- Сообщения
<b:if cond='data:blog.pageType == "item"'>
- архив
<b:if cond='data:blog.pageType == "archive"'>
- 404 ошибка
<b:if cond='data:blog.pageType == "error_page"'>
- остальные страницы, в том числе Главная, ярлыки и навигация
<b:if cond='data:blog.pageType == "index"'>
Чтобы задать условие одной конкретной странице используем
data:blog.url:
<b:if cond='data:blog.url == "http://адрес_вашей_строницы/"'>
При этом
http://адрес_вашей_строницы/
должен быть с доменом .com (см.
про региональные домены в Blogger):
http://zarabotokiinternet.blogspot.ru/2011/02/uslovnye-tegi-v-blogger.html
http://zarabotokiinternet.blogspot.com/2011/02/uslovnye-tegi-v-blogger.html
Другие более сложные выражения (
+, -, <, >, <=, >= и
b:elseif, b:switch, b:case, b:eval и b:with) не так часто имеют место быть, но более функциональны. Если вы справитесь и с ними, то можно смело изучать JavaScript :)
Разный фон на разных страницах
Рассмотрим как сделать фон статистических страниц отличный от основного.
В
шаблоне перед
</head> добавляем:
<b:if cond='data:blog.pageType == "static_page"'>
<style>
body {
background: url(адрес_изображения);
}
.body-fauxcolumns .cap-top {
background: transparent;
}
.widget ul li, .widget #ArchiveList ul.flat li {
border-top: none;
}
</style>
</b:if>
Строку
.widget ul li, .widget #ArchiveList ul.flat li {border-top: none;}
нужно указывать не для всех шаблонов, а только для тех, у кого есть пунктирные линии - разделители в гаджетах.
Как убрать с Главной конкретную страницу в Blogspot
Каждое сообщение имеет свой id. Его можно узнать на странице публикации поста в строке браузера
В
шаблоне есть такой участок кода:
<b:includable id='post' var='post'>
........содержание........
</b:includable>
его мы заменяем на
<b:includable id='post' var='post'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<b:if cond='data:post.id != "1873004851645451173"'>
........содержание........
</b:if>
<b:else/>
........содержание........
</b:if>
</b:includable>
1873004851645451173 - это
id из скриншота выше.
Поскольку мы поставили условие
data:blog.url == data:blog.homepageUrl
, то страница, уйдя с Главной, будет видна по ссылке "Предыдущие". Если определить условие как
data:blog.pageType == "index"
, то мы не увидим сообщение ни на Главной, ни по ссылке "Предыдущие", ни на страницах ярлыка, таких как
http://shpargalkablog.ru/search/label/feed
. А если —
data:blog.pageType != "item"
, то пост найдём лишь по его адресу, например,
http://shpargalkablog.ru/2011/02/uslovnye-tegi-v-blogger.html
.
Источник: http://shpargalkablog.ru/2011/02/uslovnye-tegi-v-blogger.html
Полезные ссылки:
0 коммент.:
Примечание. Отправлять комментарии могут только участники этого блога.