Условные теги позволяют отображать элементы только на определённых веб-страницах, не задействовав весь блог в целом. И в отличии от свойства display: none;, не просто их скрывают, а удаляют из исходного кода.
Для того, чтобы понять что такое условные теги, я приведу простой пример
<b:if cond='погода == дождливая'> я остаюсь дома <b:else/> иду гулять </b:if>Что можно интерпретировать как: "Если (b:if cond) погода дождливая, то я остаюсь дома, иначе (b:else) иду гулять".
Когда мы вместо равенства указываем !=, то получается наоборот:
<b:if cond='погода != дождливая'> я остаюсь дома <b:else/> иду гулять </b:if>"Если погода недождливая, то я остаюсь дома, иначе иду гулять".
Может быть только один результат:
<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"'>
- отдельно для ярлыков
<b:if cond="data:blog.searchLabel" >
- отдельно для Главной
<b:if cond='data:blog.url == data:blog.homepageUrl'>
- отдельно для ярлыков
Чтобы задать условие одной конкретной странице используем data:blog.url:
<b:if cond='data:blog.url == "http://адрес_вашей_строницы/"'>При этом
http://адрес_вашей_строницы/ должен быть с доменом .com (см. про региональные домены в Blogger):
http://zarabotokiinternet.blogspot.ru/2011/02/uslovnye-tegi-v-blogger.htmlhttp://zarabotokiinternet.blogspot.com/2011/02/uslovnye-tegi-v-blogger.html
Другие более сложные выражения приведены на этой странице. Если вы справитесь и с ними, то можно смело изучать 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.
68 комментариев:
а что означает следующее:
.body-fauxcolumns .cap-top {
background: transparent;
}
я поняла, что полностью сей элемент удалятся в таком месте
.header-outer {
margin: $(header.margin.top) 0 $(header.margin.bottom) 0;
background: $(header.background.color) $(header.background.gradient) repeat scroll 0 0;
}
просто удалением background.
в указанную Вами конструкции надо вписать .header-outer {} с убранным там background? у меня не выходит :(
.header-outer {
background: transparent;
}
на одной странице -слева
а на другой - справа
http://design-mania.ru/web-design/html-css/css-background/
оказывается это называется настройки для background
но все равно спасибо за статью и скорость реагирования на вопрос)
1) только для страниц, которые выводятся по ярлыкам
2)для всех страниц, кроме главной и статичных
2) <b:if cond='data:blog.pageType != "static_page"'><b:if cond='data:blog.url != data:blog.homepageUrl'>.....</b:if></b:if>
!= все, кроме Главной
background: green url(....) fixed;
Но я все равно не понимаю как это сделать.
Шаблон simple.
условно url: prdeved.blogspot.com
похожая строка:
http://s017.radikal.ru/i443/1305/3a/641d9f7d8646.jpg
<b:if cond='data:post.includeAd'>
<b:if cond='data:post.isFirstPost'>
<data:defaultAdEnd/>
<b:else/>
<data:adEnd/>
</b:if>
<div class='inline-ad'>
<data:adCode/>
</div>
<data:adStart/>
</b:if>
и окружайте его кодом
<b:if cond='data:blog.url != "http://адрес_вашей_строницы/"'>
................
</b:if>
большой кусок код.
большой кусок код.
</b:if
со скриншотом проще
http://4.bp.blogspot.com/-E2YlixWv5V0/Ts38O5I1vGI/AAAAAAAAHOo/2xciE3KWQ4M/s1600/template-editor-blogger2.jpe
b:include тоже в условие можно добавить, а то болтается ни к тому, ни к сему.
вывод 1-ого значения
вывод 2-ого значения
Отдельно вывожу dir='ltr'>().
При переходе на "http://ereminartem.blogspot.ru/search/label/drawing" всегда выводит "2". Подскажите, пожалуйста, в чём может быть ошибка
1
2
</b:if
Поняла, что нужно именно к нему сделать этот тег, но не поняла как...
<b:if cond="data:blog.searchLabel == ''" >
код Linkwithin
</b:if>
подскажите, а можно ли установить linkedwithin и на статичных страницах блога ??
на главной странице у меня будут посты по двум темам, а на статичных каждая тема имеет свою страницу и вот я бы хотела избавить читателей от прокрутки ползунка вниз если он зайдёт не на главную, где есть всё, а в статичную страницу по теме!
Если я правильно объяснила, подскажите пжл, это можно сделать???
Буду благодарна за ответ)
Возможно, вы имеете ввиду:
1) http://shpargalkablog.ru/2011/04/krasivoe-oglavlenie-blogger.html
2) http://shpargalkablog.ru/2011/03/soderzhanie-bloga-na-blogger.html
Если он стоит transparent то выглядит красиво картинка под ним, но текст читать тяжело, а в настройках шаблона можно выбрать только или определенный цвет без прозрачности или полностью прозрачный. Искал в интернете решения, пробовал их применять, но ничего не получилось, блог отображается только по настройкам шаблона.
.post-outer {
background-color: #44444c;
border: solid 1px #666666;
-moz-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
-goog-ms-border-radius: 0;
padding: 15px 20px;
margin: 0 -20px 20px;
}
.post-outer {
background-color: rgba(68,68,76,.8);
border: solid 1px #666666;
border-radius: 0;
padding: 15px 20px;
margin: 0 -20px 20px;
}
Теория http://shpargalkablog.ru/2013/02/opacity-css.html
В настройках установить 1 сообщение, с Главной убрать ссылку на "Предыдущие записи".
Alexander Bogomolov,
<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.url == "http://адрес_1/"'
b:if cond='data:blog.url == "http://адрес_2/"
стили
/b:if
/b:if
Приходится для каждой отдельно прописывать.
- labels;
- archive;
- Newer Posts /Older Posts (search?updated-max=),
выводилось определённое заданное пользователем количество сообщений, например одно, или два?
И, заодно, такой вопрос. Чтобы не ошибиться в кодах CSS, можно ли добавлять сверху этих кодов какие-то свои записи (пару слов). Если - да, то как это можно сделать?
Это тот же самый CSS ( http://shpargalkablog.ru/2012/10/kommentarii-html-css-javascript-php.html ):
/* ваш комментарий */
.selector {
color: green;
}
Назовите блог СПАМ блог, это будет соответствовать истине.
По Blogger я могу сделать многое, но это многое требует времени. Я знаю как тех, кто продолжает вести блог, как и тех, кто бросает его спустя короткое время. Я не готова тратить время на последних. А первые, как правило, начинают со статей. И когда ко мне обращаются уже имеют некоторое число посетителей.
Тут вопрос в том, что либо услуга оплачивается и тогда мне всё равно что будет дальше. Либо у человека большое желание и старание, и тогда при наличии свободного времени я рада помочь безвозмездно. Либо человек сам старается искать информацию, а я лишь направляю в нужную сторону (вот у таких всё получается!).