Почему не все шаблоны Вордпресс работают

19.02.2009 | Рубрики: WordPress | Комментарии (9)
Тэги:

Иногда бывает находишь интересную темку для Вордпресс в сети, скачиваешь ее, ставишь у себя на блоге, а она либо совсем не работает, либо работает, но как-то криво, совсем не так, как на красивой картинке. Зачастую это происходит из-за того, что изначально в шаблоне предполагается установка некоторых плагинов. И если у вас они не установлены, то шаблон может работать с ошибками. Зная эту проблему, многие авторы шаблонов пытаются решить ее, вставляя код необходимых плагинов прямо в файл function.php, имеющийся в каждом шаблоне.

Что делать, если шаблон нравится, но работает с ошибками? Искать! Искать эти самые ошибки и править их, пока все не заработает :) Обычно, подсказка выдается прямо на странице блога, при попытке запустить его с установленной кривой темой. В том месте, где что-то не так, выпадает Error с описанием в какой именно строке кода этот самый error можно обнаружить. Чаще всего такое происходит в сайдбаре и вот почему: там сосредоточено наибольшее количество всевозможных вспомогательных блоков, выводящих ссылки, последние комменты, облако тэгов и т.п.

Из-за чего, собственно, ошибка? Кстати, в моей теме Icepepper, которая идет в комплекте с книгой о верстке 3-х колоночного шаблона, это так же имело место быть, но теперь исправлено. Дело в том, что код вывода какой-либо фишки можно написать полно, а можно сокращенно. Например, возьмем вывод облака тэгов. Изначально в теме Icepepper этот блок выводился так:

<h3>tag cloud</h3>
<p class="tags"><?php wp_tag_cloud('smallest=8&largest=18&number=0'); ?></p>

То есть, сразу пишем функцию вывода (может я неправильно это обзываю, поправьте меня ежели что). В этом случае у нас должен быть УЖЕ включен плагин simple-tags. Если его нет, то блог выдаст ошибку, так как не распознает данный код и не примет к действию. Чтобы такого не происходило, нужно блок оформить дополнительным условием, которое как бы говорит: “Если плагин simple-tags включен, то выполнить указанный далее код. Если же нет — игнорировать”. Поэтому правильная запись будет следующая:

<h3>tag cloud</h3>
<?php if ( function_exists('wp_tag_cloud') ) : ?>
<p class="tags"><?php wp_tag_cloud('smallest=8&largest=18&number=0'); ?></p>
<?php endif; ?>

Здесь явно видно, что задано условие (английское слово if). Причем важна как первая часть — <?php if ( function_exists…, так и “добавка” снизу — <?php endif; ?>. Если забыть про этот “хвост”, то тоже появится сообщение об ошибке. Кстати, такая ошибка возникает часто при перекройке чужих шаблонов, когда необходимые концовки теряются.

Что нам все это дает? Если мы не используем какие-то плагины, то проверять нужно файлы шаблона на наличие вставок кода, выводящего данные для этих плагинов. То есть, попросту говоря, убираем весь лишний код. И тогда можно практически любой шаблон заточить под собственные нужды.

Вебсовет

Как прижать подвал к низу экрана

15.02.2009 | Рубрики: Верстка | Комментарии (54)
Тэги: , ,

footer-up.gif

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

В своей книге о верстке 3-х колоночного шаблона для ВП я уже рассказывал, как этого можно добиться. Но решил вынести темку в отдельный пост, так как вопрос этот довольно частый. Рецепт был найден у вебмастера с кувалдой. Респект ему и уважуха!

Итак, принцип следующий: если мы верстаем страницу, помещая все блоки в один общий контейнер, то блок футера нужно вынести за пределы контейнера. При этом нужно обоим блокам задать относительное позиционирование (position: relative;), в блоке контейнера добавить внизу пустую блок-распорку по высоте равную высоте футера, а футеру, в свою очередь, задать отрицательный верхний отступ на то же значение. В листе стилей у блока контейнера будет задана минимальная высота в 100%. Получится, что контейнер у нас распространится на всю высоту экрана. Но чтобы подвал не потерялся за нижним краем монитора, мы его “подтянем” вверх на отрицательную высоту. То есть, чтобы проделать этот трюк, надо заранее знать, какой высоты будет подвал. Ну, а так как мы это уже знаем, то нет ничего проще.

Читать полностью →

Стр. 41 из 67«...«38394041424344»...»