wp_list_bookmarks() WP 2.1.0

Відобразить список посилань, зазначених на сторінці “Адміністрування > посилання”.

Цей тег шаблону дозволяє контролювати, які посилання виводити, як їх сортувати і т.д.

Примітка: wp_list_bookmarks() повністю замінює нині заборонені функції get_links_list() та get_links().

Хуки з функції

Повертає

null|Строку. або виводить на екран HTML код списку посилань.

Шаблон використання

<?php $ args = array ( 'orderby' => 'name', 'order' => 'ASC', 'limit' => -1, 'category' => '', 'exclude_category' => '', 'category_name' => '', 'category_orderby' => 'name', 'category_order' => 'ASC', 'categorize' => 1, 'title_li' => __('Bookmarks'), 'class' => 'linkcat', 'show_private' => 0 , 'include' => '', 'exclude' => '', 'before' => '<li>', 'after' => '</li>', 'category_before' => '<li id=%id class=%class>', 'category_after' => '</li>' , 'title_before' => '<h2>', 'title_after' => '</h2>', 'link_before' => '', 'link_after' => '', 'between' => '', 'show_images' => 1, 'show_description' => 0, 'show_name' => 0, 'show_rating' => 0, 'hide_invisible' => 1, 'echo' => 1 , ); wp_list_bookmarks ($ args); ?>

Використання

<?php wp_list_bookmarks( $args ); ?>
$args
(рядок/масив)
Масив аргументів, відповідно до яких буде сформовано список (див.нижче).


За замовчуванням: параметри за замовчуванням

Аргументи параметра $args

категорія
(логічний)
Розділяти посилання за категоріями чи ні. За умовчанням “так” (true), тобто. якщо посилання мають 2 або більше категорій, то вони будуть візуально розбиті.


Типово: true
категорії
(рядок)
ID категорій (через кому), посилання яких потрібно показати. За промовчанням відображаються посилання з усіх категорій.


За замовчуванням: ”
exclude_category
(рядок)
ID категорій (через кому), посилання яких потрібно виключити з показу. За промовчанням виводяться всі посилання.


За замовчуванням: ”
category_name
(рядок)
Назву категорії посилання якої потрібно показати.


За замовчуванням: ”
category_before
(рядок)
Текст, який слід показати перед кожною категорією. За промовчанням: ‘<li id=”[category id]” class=”linkcat”>’.


За замовчуванням: ‘<li id=”[category id]” class=”linkcat”>’
category_after
(рядок)
Текст, який буде показано після кожної категорії. За замовчуванням: ‘</li>’.


За замовчуванням: ‘</li>’
class
(рядок)
Клас, який буде вказаний для кожної категорії посилань.


За замовчуванням: ‘linkcat’
category_orderby
(рядок)

Ключ за яким сортувати категорії посилань. Може бути:

  • name– сортувати за назвою – за умовчанням;
  • id– сортувати за ID категорій;
  • slug– за складом (альтернативною назвою);
  • count– за кількістю посилань у категорії;
  • term_group(не використовується).

За замовчуванням: ‘name’

category_order
(рядок)

Напрямок сортування, можливо:

  • ASC– по порядку;
  • DESC– в зворотньому напрямку.

За замовчуванням: ‘ASC’

title_li
(рядок)
Текст перед заголовком списку посилань. За промовчанням __(‘Bookmarks’). __(”) використовується для локалізації.

Використовується тільки, коли параметр “categorize” встановлений у false (інакше заголовками стануть назви категорій).

Якщо встановити цей параметр у false, то заголовок не буде використовуватися, так само список не буде “обгорнутий” тегами <ul>, </ul> (цей ефект також працює тільки коли параметр “categorize” встановлений у false).


За замовчуванням: ‘__(‘Bookmarks’)’
title_before
(рядок)
Текст перед заголовком. Працює, якщо “categorize=1” або встановлений текст для параметра title_li.


За замовчуванням: ‘<h2>’
title_after
(рядок)
Текст після заголовка. Працює, якщо “categorize=1” або встановлений текст для параметра title_li.


За замовчуванням: ‘</h2>’
show_private
(логічний)
Категорія та посилання мають бути показані, навіть якщо категорія має статус “особиста”. За промовчанням посилання з особистих категорій не будуть показані (false).


Типово: false
include
(рядок)
ID посилань (через кому). Наприклад, ‘include=1,3,6’ означає список складатися з посилань 1,3,6.

Цей параметр вимикає параметри category, category_name та exclude.


За замовчуванням: ”
exclude
(рядок)
ID посилань, які потрібно виключити з показу у списку.


За замовчуванням: ”
orderby
(рядок)

Ключ за яким сортуватиметься список посилань. Можна вказувати кілька ключів через кому. Можливі значення:

  • id– Сортування за ID;
  • url– за значенням поля url;
  • name– на ім’я – за умовчанням;
  • target
  • description– за описом;
  • owner– По користувачеві, який додав посилання на сторінці управління посиланнями;
  • rating– за рейтингом;
  • updated
  • rel
  • notes
  • rss
  • length– за довжиною назви посилання;
  • rand– Вивести посилання у випадковому порядку.

За замовчуванням: ‘name’

order
(рядок)
Напрямок сортування посилань. ASC – по дядьку, DESC – у зворотному порядку.


За замовчуванням: ‘ASC’
limit
(число)
Максимальна кількість посилань, яка буде показана. -1 – знімає обмеження та відображаються всі посилання.


За замовчуванням: ‘-1’
before
(рядок)
Текст, який буде показано перед кожним посиланням. За промовчанням <li>.


За замовчуванням: ‘<li>’
after
(рядок)
Текст, який буде показано після кожного посилання. За промовчанням </li>.


За замовчуванням: ‘</li>’
link_before
(рядок)
Текст, який буде показаний перед анкором кожного посилання. Всередині тега <a>. Параметр додано до версії 2.7.


За замовчуванням: ”
link_after
(рядок)
Текст, який буде показано після анкору кожного посилання. Всередині тега <a>. Параметр додано до версії 2.7.


За замовчуванням: ”
between
(рядок)
Текст, який буде розташований між кожним посиланням/картинкою та описом посилання. За замовчуванням n (новий рядок).


За замовчуванням: n
show_images
(логічний)
Показувати (1) зображення до посилання чи ні (0). За замовчуванням зображення відображається, якщо воно є – 1/true.


За замовчуванням: ‘1’
show_description
(логічний)
Показувати опис до посилання (1) чи ні (0). Справді, коли
show_images= 0 чи картинка не визначена. За замовчуванням 0 не показувати опис.
show_name
(логічний)
Показувати текст посилання (1) чи ні (0). Працює, коли
show_images= 1. (додано у версії 2.7).
show_rating
(логічний)
Показувати рейтинг (1) чи ні (0).
show_updated
(логічний)
Показувати (1) чи ні (0) дату оновлення. (Як працює цей параметр я не розібрався).


За замовчуванням: ”
hide_invisible
(логічний)
Показувати посилання, навіть якщо у параметрі “видимість” встановлено “ні”. Показ керується настройками адмін-панелі (1) чи ні (0).


За замовчуванням: 1 – показ керується з адмін-панелі
echo
(логічний)
Виводити результат на екран (1) або повертати для обробки (0).


Типово: true

Приклади

0

#1 Звичайний список посилань

Показати список посилань, заголовком якого буде “Посилання”, пункти списку будуть “обгорнуті” в тег <li>, заголовок у тег <h2>.

<?php wp_list_bookmarks('title_li=&category_before=&category_after='); ?>
0

#2 Видалення заголовка у списку посилань

Приклад видалення заголовка у списку. Корисно, коли необхідно встановити свій заголовок.

<?php wp_list_bookmarks('title_li=&categorize=0'); ?>
0

#3 Посилання із зазначеної категорії

Приклад виведення посилань з категорії посилань 2 (category=2), загорнутих у тег span (before=<span>&after=</span> ), з використанням картинок для кожного посилання (show_images=1), вимкненим показом опису (show_description=0 ) і відсортованих за посиланням (orderby=url).

<?php wp_list_bookmarks('categorize=0&category=2&before=<span>&after=</span>&show_images=1&show_description=0&orderby=url'); ?>
0

#4 Заміна заголовка картинкою

Приклад того, як можна замінити заголовок списку картинкою.

<?php wp_list_bookmarks('categorize=0&title_before=&title_after=&title_li=<img src="'.get_bloginfo("stylesheet_directory").'/images/blogroll.gif" alt="blogroll" />'); ?>

З версії 2.2.0 додано параметр class.
З версії 2.7.0 додані параметри link_before, link_after та show_name.

нотатки

список змін

З версії 2.1.0Введено.

wp list bookmarks WP 6.0.2

function wp_list_bookmarks( $args = '' ) { $defaults = array( 'orderby' => 'name', 'order' => 'ASC', 'limit' => -1, 'category' => '', 'exclude_category' => '', 'category_name' => '', 'hide_invisible' => 1, 'show_updated' => 0, 'echo' => 1, 'categorize' => 1, 'title_li' => __( 'Bookmarks' ), 'title_before' => '<h2>', 'title_after' => '</h2>', 'category_orderby' => 'name', 'category_order' => 'ASC', 'class' => 'linkcat', 'category_before' => '<li id="%id" class="%class">', 'category_after' => '</li>', ); $parsed_args = wp_parse_args($args, $defaults); $output = ''; if ( ! is_array( $parsed_args['class'] ) ) { $parsed_args['class'] = explode( ' ', $parsed_args['class'] ); } $parsed_args['class'] = array_map( 'sanitize_html_class', $parsed_args['class'] ); $parsed_args['class'] = trim( implode( ' ', $parsed_args['class'] ) ); if ( $parsed_args['categorize'] ) { $cats = get_terms( array( 'taxonomy' => 'link_category', 'name__like' => $parsed_args['category_name'], 'include' => $parsed_args['category'], 'exclude' => $parsed_args['exclude_category'], 'orderby' => $parsed_args['category_orderby'], 'order' => $parsed_args['category_order'], 'hierarchical' => 0, ) ); if (empty($cats)) { $parsed_args['categorize'] = false; } } if ( $parsed_args['categorize'] ) { // Split bookmarks в ul's для кожної категорії. foreach ((array) $cats as $cat) { $params = array_merge( $parsed_args, array( 'category' => $cat->term_id ) ); $bookmarks = get_bookmarks($params); if (empty($bookmarks)) { continue; } $output .= str_replace( array( '%id', '%class' ), array( "linkcat-$cat->term_id", $parsed_args['class'] ), $parsed_args['category_before'] ); /** * Filters the category name. * * @ Since 2.2.0 * * @param string $cat_name category name. */ $catname = apply_filters( 'link_category', $cat->name); $output .= $parsed_args['title_before']; $output.=$catname; $output .= $parsed_args['title_after']; $output .= "nt<ul class='xoxo blogroll'>n"; $output .= _walk_bookmarks( $bookmarks, $parsed_args ); $output .= "nt</ul>n"; $output .= $parsed_args['category_after'] . "n"; } } else { // Output one single list using title_li for the title. $bookmarks = get_bookmarks($parsed_args); if ( ! empty( $bookmarks ) ) { if ( ! empty( $parsed_args['title_li'] ) ) { $output .= str_replace( array( '%id', '%class' ), array( 'linkcat-' . $parsed_args['category'], $parsed_args['class'] ), $parsed_args['category_before'] ); $output .= $parsed_args['title_before']; $output .= $parsed_args['title_li']; $output .= $parsed_args['title_after']; $output .= "nt<ul class='xoxo blogroll'>n"; $output .= _walk_bookmarks( $bookmarks, $parsed_args ); $output .= "nt</ul>n"; $output .= $parsed_args['category_after'] . "n"; } else { $output .= _walk_bookmarks( $bookmarks, $parsed_args ); } } } /** * Filters bookmarks list перед тим, як він echoed або returned. * * @ Since 2.5.0 * * @param string $html The HTML list of bookmarks. */ $html = apply_filters( 'wp_list_bookmarks', $output ); if ( $parsed_args['echo'] ) { echo $html; } else { return $html; } }

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *