Теги шаблонов WordPress - Общие теги(начало).
- bloginfo
- bloginfo_rss
- get_bloginfo
- get_bloginfo_rss
- wp_title
- wp_get_archives
- get_archives (Запрещено в 2.1)
- get_calendar
- get_posts
bloginfo
Выводит информацию о вашем блоге, из настроек WordPress и вашего профиля. Может использоваться в любом месте шаблона. Тег всегда выводит результат. Если вы хотите возвратить, а не вывести результат используйте get_bloginfo().
Параметры:
- show
- (string) Информация о вашем блоге. Значения:
- 'name' – Название блога; устанавливается в настройках WordPress. (По умолчанию)
- 'description' – Краткое описание блога; устанавливается в настройках WordPress.
- 'url' – адрес вашего блога.
- 'rdf_url' – URL вашей RDF/RSS 1.0 ленты.
- 'rss_url' – URL вашей RSS 0.92 ленты.
- 'rss2_url' – URL вашей RSS 2.0 ленты.
- 'atom_url' – URL вашей Atom ленты.
- 'comments_rss2_url' – URL вашей RSS 2.0 ленты комментариев.
- 'pingback_url' – URL для Pingback(файл XML-RPC).
- 'admin_email' – email адрес администратора; устанавливается в настройках WordPress.
- 'charset' – Кодировка вашего блога; устанавливается в настройках WordPress.
- 'version' – Версия WordPress на которой работает ваш блог.
- 'text_direction' – Возвращает ‘rtl’ для направления текста справа на лево или ‘ltr’ для направления текста слева на право(По умолчанию).
- Работающие только в WordPress версии 1.5 или старше:
- 'html_type' – “Content-type”для вашего блога.
- 'wpurl' – URL для папки куда инсталлирован WordPress.
- 'template_url' – URL для используемого шаблона.
- 'template_directory' – URL для папки с шаблоном.
- 'stylesheet_url' – URL для основного CSS файла. Возвращает: http//example.com/wp-content/themes/ + имя+вашей-текущей-темы(значение из wp_options, поле “stylesheet” ) + “/style.css”
- 'stylesheet_directory' – URL для папки с CSS. (Не поддерживается с версии 2.3.1)
Примеры:
Вывод названия блога:
<h1><?php bloginfo('name'); ?></h1>
Вывод кодировки блога:
<p>Кодировка: <?php bloginfo('charset'); ?> </p>
Вывод описания блога:
<p><?php bloginfo('description'); ?> </p>
bloginfo_rss
Выводит информацию о блоге, идентичен bloginfo(), отличается лишь тем, что на выходе формирует HTML разметку для использования в фид лентах.
- show
- (string) Информация о вашем блоге. Значения:
- 'name' – Название блога; устанавливается в настройках WordPress. (По умолчанию)
- 'description' – Краткое описание блога; устанавливается в настройках WordPress.
- 'url' – адрес вашего блога.
- 'rdf_url' – URL вашей RDF/RSS 1.0 ленты.
- 'rss_url' – URL вашей RSS 0.92 ленты.
- 'rss2_url' – URL вашей RSS 2.0 ленты.
- 'atom_url' – URL вашей Atom ленты.
- 'comments_rss2_url' – URL вашей RSS 2.0 ленты комментариев.
- 'pingback_url' – URL для Pingback(файл XML-RPC).
- 'admin_email' – email адрес администратора; устанавливается в настройках WordPress.
- 'charset' – Кодировка вашего блога; устанавливается в настройках WordPress.
- 'version' – Версия WordPress на которой работает ваш блог.
- Работающие только в WordPress версии 1.5 или старше:
- 'html_type' – “Content-type”для вашего блога.
- 'wpurl' – URL для папки куда инсталлирован WordPress.
- 'template_url' – URL для используемого шаблона.
- 'template_directory' – URL для папки с шаблоном.
- 'stylesheet_url' – URL для основного CSS файла. Возвращает: http//example.com/wp-content/themes/ + имя+вашей-текущей-темы(значение из wp_options, поле “stylesheet” ) + “/style.css”
- 'stylesheet_directory' – URL для папки с CSS.
Пример:
Выводит название блога и его url в тегах title и link rss ленты:
<title><?php bloginfo_rss('name'); ?></title><link><?php bloginfo_rss('url') ?></link>
get_bloginfo
Возвращает информацию о блоге для дальнейшего использования в PHP. Работает так же как и bloginfo(), только в отличие от нег не выводи, а возвращает информацию.
Параметры:
- show
- (string) Информация о блоге. Значения:
- '' – (По умолчанию) возвращает название блога, установленное в настройках WordPress.
- 'name' – Возвращает то же самое что и '' (которое по умолчанию).
- 'description' – Возвращает краткое описание блога, установленное в настройках WordPress.
- 'url' – Возвращает адрес вашего блога.
- 'home' – Возвращает то же самое что и ‘url’.
- 'siteurl' – Возвращает то же самое что и ‘url’.
- 'wpurl' – адрес куда установлен WordPress.
- 'rdf_url' – URL для ленты RDF/RSS 1.0 которые состоит из url вашего блога с прибавлением строки */feed/rfd*.
- 'rss_url' – URL для ленты RSS 0.92 которые состоит из url вашего блога с прибавлением строки */feed/rss*.
- 'rss2_url' – URL для ленты RSS 2.0 которые состоит из url вашего блога с прибавлением строки */feed*.
- 'atom_url' – URL для ленты Atom которые состоит из url вашего блога с прибавлением строки */feed/atom*.
- 'comments_rss2_url' – URL для RSS 2.0 ленты комментариев которые состоит из url вашего блога с прибавлением строки */comments/feed*.
- 'pingback_url' – URL для Pingback (файл XML-RPC) которые состоит из url вашего блога с прибавлением строки */xmlrpc.php*.
- 'stylesheet_url' – URL для основного CSS файла которые состоит из url вашего блога с прибавлением строки */wp-content/themes* плюс имя текущей темы, плюс строка */style.css*. Для примера, http://www.sample.com/wordpress/wp-content/themes/default/style.css
- 'stylesheet_directory' – Локальный путь к папке с стилями. Для примера, /home/you/public_html/wordpress/wp-content/themes/default.
- 'template_directory' – Локальный путь к папке с шаблонами. Для примера, /home/you/public_html/wordpress/wp-content/themes/default.
- 'template_url' – То же самое что и ‘template_directory’.
- 'admin_email' – email администратора.
- 'charset' – Кодировка блога.
- 'version' – *Версия WordPress*.
- 'html_type' – “Content-type” для вышего блога.
Пример:
Использование по умолчанию присваивает переменной $blog_title название вашего блога.
<?php $blog_title = get_bloginfo(); ?>
get_bloginfo_rss
Возвращает информацию о блоге, идентичен get_bloginfo(), формирует HTML разметку для использования в фид лентах. Не выводит информацию, а возвращает ее.
wp_title
Выводит или возвращает заголовок страницы. Можно использовать разделитель, с версии 2.5 можно указать располагать разделитель после или до заголовка. Можно использовать в любом месте шаблона вне Цикла, обычно используется в элементе <title>
.
Текст заголовка зависит от типа страницы:
- Одно сообщение на странице
- заголовок сообщения (или Страницы)
- Архив в виде календаря
- дата (например, “2006″, “Январь – 2006″)
- Категория
- название категории
- Страница автора
- публичное имя автора
Параметры:
- sep
- (string) Текст который выводится до или после заголовка (разделитель). По умолчанию (если разделитель пуст) выводится символ » (») который располагается перед или после (устанавливается параметром **seplocation**) заголовка.
- echo
- (boolean) Выводить заголовок (True) или возвратить (False). Значения:
- 1 (True) – По умолчанию
- 0: (False)
- seplocation
- (string) начиная с версии 2.5, этот параметр может использоваться для указания где будет выведен разделитель: до(слева) или после(справа) заголовка. Любое значение кроме ‘right’, выведет разделитель до(слева) заголовка. Если указано значение ‘right’ то разделитель будет выведен после(справа) заголовка.
wp_get_archives
Выводит список архива в виде дат, работает также как и get_archives(). Единственное отличие – параметры аргументов выводятся в формате строкового запроса. Этот тег можно использовать в любом месте шаблона.
Параметры:
- type
- (string) Тип списка архива для вывода. По умолчанию как в настройках WordPress. Значения:
- yearly
- monthly (По умолчанию)
- daily
- weekly
- postbypost
- limit
- (integer) Количество архивов для вывода. По умолчанию без ограничений.
- format
- (string) Формат списка архивов. Значения:
- html – В виде HTML списка (
<li>
). По умолчанию. - option – В виде выпадающего списка
<option>
или<select>
. - link – В виде ссылок (
<link>
). - custom – Другой список используя строки before и after.
- html – В виде HTML списка (
- before
- (string) Текст для вывода перед ссылкой в формате html или custom. Нет значения по умолчанию.
- after
- (string) Текст для вывода после ссылки в формате html или custom. Нет значения по умолчанию.
- show_post_count
- (boolean) Выводить количество сообщений в архиве(1 – true) или нет (0 – false). Для использования со всеми типами кроме 'postbypost'. По умолчанию 0.
Примеры:
Использование по умолчанию:
<?php $defaults = array(type' => 'monthly',limit' => ,format' => 'html',before' => ,after' => ,show_post_count' => false); ?>
По умолчанию выводит:
- Ежемесячный архив
- Выводит все архивы (без ограничений)
- Выводит архивы в HTML списке
<li>
- Ничего не отображает до или после каждой ссылки
- Не выводит число сообщений
Выводит последние 12 месяцев:
<?php wp_get_archives('type=monthly&limit=12'); ?>
Последние 15 дней:
<?php wp_get_archives('type=daily&limit=15'); ?>
Последние 20 сообщений:
<?php wp_get_archives('type=postbypost&limit=20&format=custom'); ?>
Выводит выпадающий список помесячно в теге select с выводом числа сообщений:
<select name="archive-dropdown" onChange='document.location.href=this.options[this.selectedIndex].value;'>
<option value=""><?php echo attribute_escape(__('Select Month')); ?></option>
<?php wp_get_archives('type=monthly&format=option&show_post_count=1'); ?>
</select>
get_archives
Не поддерживается. Заменено на wp_get_archives(), работает так же, параметры те же.
get_posts
Этот тег используется для цикла вывода сообщений.
Параметры:
- $numberposts
- (integer) (optional) Количество возвращаемых сообщений.
- По умолчанию: 5
- $offset
- (integer) (optional) Смещение от последнего сообщения.
- По умолчанию: 0
- $category
- (integer) (optional) Показывать сообщения только этой категории.
- По умоланию: None
- $orderby
- (string) (optional) Сортирует сообщения в зависимости от значения:
- 'post_title' – Сортировка в алфавитном порядке по заголовку страницы или сообщения.
- 'post_date' – Сортировка по дате создания.
- 'post_modified' – Сортировка по дате последнего изменения.
- 'ID' – Сортировка по ID сообщений.
- 'post_author' – Сортировка по ID авторов.
- 'post_name' – Сортировка в алфавитном порядке по короткому имени сообщения.
- По умолчанию: post_title
- $order
- (string) (optional) Как сортировать по $orderby. Значения:
- 'ASC' – В порядке возрастания (снизу вверх).
- 'DESC' – В порядке убывания (сверху вниз).
- По умолчанию: ASC
- $include
- (string) (optional) ID сообщений которые вы хотите вывести, разделенные запятыми и/или пробелами. Например:- ’45,63, 78 94 ,128 , 140′
Note: Использование этого параметра отменит действие параметров numberposts, offset, category, exclude, meta_key, meta_value, and post_parent.
- По умолчанию: *None*
- $exclude
- (string) (optional) ID любых сообщений которые вы хотите исключить, разделенных запятыми и/или пробелами (смотри параметр $include).
- По умолчанию: None
- $meta_key и $meta_value
- (string) (optional) Выводит сообщения которые содержат в дополнительном поле этот ключ и значение. Оба параметра должны быть указаны, иначе работать не будут.
- По умолчанию: None
- $post_type
- (string) (optional) Тип сообщения для вывода. Значения:
- post – По умолчанию(Сообщение)
- page – (Страница)
- attachment – (Прикрепления)
- (blank) – Все типы сообщений
- По умолчанию: post
- $post_status
- (string) (optional) Показывает сообщения со статусом. Значения:
- publish – По умолчанию(Опубликовано)
- private – (Личное)
- draft – (Черновик)
- future – (Ожидает утверждения)
- (blank) – Все типы сообщений
- По умолчанию: publish
- $post_parent
- (integer) (optional) Показывает только потомков сообщения с указанным ID
- По умолчанию: None
Примеры:
Список сообщений со смещением:
Если вы настроили свой блог для показа одного сообщения на главной странице, то вы можете вывести список ссылок на предыдущие 5 сообщений из категории с ID 1:
<ul>
<?php
global $post;
$myposts = get_posts('numberposts=5&offset=1&category=1');
foreach($myposts as $post) :
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
Доступ ко всем данным сообщения:
Некоторые связанные с сообщениями данные по умолчанию не доступны через get_posts, содержание сообщения the_content(), или через ID. Это решается путем вызова внутренней функции setup_postdata(), с массивом $post в виде его параметра:
<?php
$lastposts = get_posts('numberposts=3');
foreach($lastposts as $post) : setup_postdata($post);
?>
<h2><a href="<?php the_permalink(); ?>" id="post-<?php the_ID(); ?>"><?php the_title(); ?></a></h2>
<?php the_content(); ?>
<?php endforeach; ?>
Для доступа к ID сообщений или к содержанию без вызова setup_postdata(), или к любым данным относящихся к сообщению(данные хранятся в таблице the posts), вы можете использовать $post->COLUMN, где COLUMN название столбца в таблице. Так $post->ID содержит ID, а $post->post_content содержание, и т.д. Для вывода этих данных используйе команду PHP echo, вот так:
<?php echo $post->ID; ?>
Последние записи отсортированные по заголовку:
Для вывода последних 10 сообщений с датой, заголовком и кратким содержанием отсортированных в алфавитном порядке по возрастанию, используйте:
<?php
$postslist = get_posts('numberposts=10&order=ASC&orderby=post_title');
foreach ($postslist as $post) : setup_postdata($post);
?>
<div> <?php the_date(); ?> <br /> <?php the_title(); ?> <?php the_excerpt(); ?> </div>
<?php endforeach; ?>
Вывести список из 5 сообщений случайным образом, с использованием функции MySQL RAND():
<ul>
<li>
<h2>A random selection of my writing</h2>
<ul>
<?php
$rand_posts = get_posts('numberposts=5&orderby=RAND()');
foreach( $rand_posts as $post ) :
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
</li>
</ul>
Показать все прикрепления:
Напишите это вне любых Циклов вашего шаблона.
<?php
$args = array(
'post_type' => 'attachment',
'numberposts' => null,
'post_status' => null,
'post_parent' => null,// any parent );
$attachments = get_posts($args);
if ($attachments) {
foreach ($attachments as $post) {
setup_postdata($post);
the_title();
the_attachment_link($post->ID, false);
the_excerpt();
}
}
?>
Показать прикрепления к текущему сообщению:
Напишите это внутри Цикла(где $post->ID определен).
<?php
$args = array(
'post_type' => 'attachment',
'numberposts' => null,
'post_status' => null,
'post_parent' => $post->ID );
$attachments = get_posts($args);
if ($attachments) {
foreach ($attachments as $attachment) {
echo apply_filters('the_title', $attachment->post_title);
the_attachment_link($attachment->ID, false);
}
}
?>