5 способов использовать виджеты WordPress

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

 

1. Несколько областей для виджетов

Темы, которые имеют большой выбор мест для размещения различных виджетов, нравятся пользователям и удобны для настройки. Первый шаг на пути к использованию виджетов на вашем сайте под управлением WordPress - сделать вашу тему доступной для применения виджетов. Задача достаточно просто решается, если поместить правильный код в правильное место.

Регистрация областей для виджетов

Чтобы получить несколько областей для использования виджетов нужно зарегистрировать их в файле functions.php вашей темы WordPress. Допустим, у вас используется трехколоночная тема, и вы хотите получить две разных боковых панели справа и слева:

<?php
	register_sidebar( array(
		'name' => 'left-sidebar',
		'id' => 'left-sidebar',
		'before_widget' => '<div id="%1$s" class="%2$s widget">',
		'after_widget' => '</div>',
		'before_title' => '<h3 class="widget-title">',
		'after_title' => '</h3>'
	) );
	register_sidebar( array(
		'name' => 'right-sidebar',
		'id' => 'right-sidebar',
		'before_widget' => '<div id="%1$s" class="%2$s widget">',
		'after_widget' => '</div>',
		'before_title' => '<h3 class="widget-title">',
		'after_title' => '</h3>'
	) );
?>

Активация областей для виджетов

Затем нужно поместить код динамической боковой панели в нужный файл. В зависимости от структуры темы, код может быть расположен в файле sidebar.php или другом. Вот пример кода для использования:

<?php if (!dynamic_sidebar("left-sidebar") ) : ?>
Код для левой боковой панели по умолчанию располагается здесь...
<?php endif; ?>

 

<?php if (!dynamic_sidebar("right-sidebar") ) : ?>
Код для правой боковой панели по умолчанию располагается здесь...
<?php endif; ?>

Код между тегами PHP будет выводиться, если не используется никаких виджетов в соответствующей области. Например, если никаких виджетов не подключено к левой боковой панели, то будет выведено "Код для левой боковой панели по умолчанию располагается здесь...".

 

2. Плагин Widget Logic

Иногда не нужно, чтобы один и тот же виджет выводился одинаково на каждой странице вашего блога. В данном случае плагин Widget Logic будет очень полезен.

После установки в окне настройки каждого плагина будет выводится поле “Widget Logic”. В данном поле можно ввести набор условных тегов WordPress для управления выводом виджета.

На рисунке виджет календарь будет выводиться только на странице с названием “evil”. Можно использовать и другие теги условия.

Примеры

  • Выводить только на главной странице: is_home()
  • Выводить только на определенной записи: is_single()
  • Выводить только на определенной странице: is_page()
  • Выводить только на определенной странице архива : is_archive()
  • Выводить только на странице с результатами поиска: is_search()
  • Выводить на всех страницах кроме главной: !is_home()
  • Выводить только на страницах “Advertise” или “Contact”: is_page('advertise') || is_page('contact')

Просто введите условия в поле ввода Widget Logic в зависимости от того, где нужно выводить виджет.

 

3. Виджет Query Posts

Функция WordPress  query_posts является мощным средством для управления процессом вывода записей и страниц в главном цикле.

Но, если ваш уровень владения PHP не достаточно развит для использования функции query_posts, вам может пригодиться виджет Query Posts, с помощью которого вывод содержания будет организован так, как нужно.

После установки и активации плагина станет доступен новый виджет “Query Posts” в меню управления виджетами WordPress.

Что он может

  • Выводить записи в зависимости от меток, категорий, автора, времени/даты или значения пользовательского поля.
  • Выводить такое количество записей, которое нужно.
  • Сортировка записей по дате публикации, заголовку или ID в восходящем и нисходящем порядке.
  • Выводить записи полностью, в сокращенном варианте или в виде списка.
  • Выводить страницы WordPress.

 

4. Шаблоны для страницы 404

Множество тем для WordPress, включая темы по умолчанию, не предлагают ничего полезного для страницы 404.

Есть множество отличных виджетов Wordpress, которые могут оживить страницу 404 и сделать ее полезной для посетителя, который ищет информацию. К таким виджетам относятся "Свежие записи", "Рубрики" и "Архивы".

Код

Сначала нужно зарегистрировать область для виджетов в WordPress. Открываем файл functions.php вашей темы и размещаем в нем следующий код:

<?php
	register_sidebar( array(
		'name' => '404',
		'id' => '404',
		'before_widget' => '<div id="%1$s" class="%2$s widget">',
		'after_widget' => '</div>',
		'before_title' => '<h3 class="widget-title">',
		'after_title' => '</h3>'
	) );
?>

Теперь область виджетов зарегистрирована и можно редактировать файл 404.php вашей темы, добавив в него следующий код:

<?php dynamic_sidebar( '404' ); ?>

Готово. Теперь можно помещать любой виджет в область "404", и он будет выводиться каждый раз, когда посетитель окажется на странице 404. Улучшите ее с помощью  полей поиска, списка последних записей или рубрик.

 

5. Вставляем рекламу между записями

Вы можете изменить код вашей темы так, чтобы вставлять виджет между определённым количеством записей. Некоторые владельцы блогов используют данную технику для размещения рекламы.

Код

Также как и для страницы 404, сначала нужно зарегистрировать область для размещения виджетов. Открываем файл functions.php и вставляем код:

<?php
	register_sidebar( array(
		'name' => 'index-insert',
		'id' => 'index-insert',
		'before_widget' => '<div id="%1$s" class="%2$s widget">',
		'after_widget' => '</div>',
		'before_title' => '<h3 class="widget-title">',
		'after_title' => '</h3>'
	) );
?>

Для изменения основной страницы нужно открыть файл index.php вашей темы, найти директиву “endwhile” в конце файла и разместить следующий код прямо над ней. Код должен будет выглядеть так:

<?php if ($count==2) { 
	dynamic_sidebar('index-insert')
 }
$count = $count + 1;
endwhile; ?>

Мы вставляем область виджетов “index-insert” сразу за второй записью. Вы можете изменить значение в выражении $count==2 на другой число, которое будет соответствовать номеру записи, после которой будет вставляться область для виджетов.

Если вы хотите вставлять область для виджетов в список архива или между рубриками, или метками, то нужно соответствующим образом изменить код файлов  archive.php или category.php, или tag.php. Можно даже контролировать, какая информация будет выводиться, с помощью условных тегов плагина Widget Logic, например, is_archive(), is_category()или is_tag().

Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/eN_2EsIYRu4/lessons.php

Читать комменты и комментировать

Добавить комментарий / отзыв



Защитный код
Обновить

5 способов использовать виджеты WordPress | | 2012-06-19 12:02:46 | | Статьи Web-мастеру | | В арсенале разработчика, который использует WordPress в качестве платформы для своих проектов, имеется мощный инструмент - виджеты. Когда упоминаются виджеты WordPress, обычно, имеют в виду удобный | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: