Как добавить пагинацию рубрик записей в WordPress

Среднее время чтения
19.04.2023

В этой статье мы рассмотрим, как добавить пагинацию рубрик записей в ВордПресс. Для этого мы будем использовать код, который будет размещен в файле function.php.

Шаг 1: Создайте объект для сортировки рубрик

Первым шагом является создание объекта для сортировки рубрик. Мы будем использовать класс wpse_99513_adjacent_category, который мы поместим в файл function.php.

class wpse_99513_adjacent_category {

public $sorted_taxonomies;

/**
* @param string Taxonomy name. Defaults to ‘category’.
* @param string Sort key. Defaults to ‘id’.
* @param boolean Whether to show empty (no posts) taxonomies.
*/
public function __construct( $taxonomy = ‘category’, $order_by = ‘id’, $skip_empty = true ) {

$this->sorted_taxonomies = get_terms(
$taxonomy,
array(
‘get’ => $skip_empty ? » : ‘all’,
‘fields’ => ‘ids’,
‘hierarchical’ => false,
‘order’ => ‘ASC’,
‘orderby’ => $order_by,
)
);
}

/**
* @param int Taxonomy ID.
* @return int|bool Next taxonomy ID or false if this ID is last one. False if this ID is not in the list.
*/
public function next( $taxonomy_id ) {

$current_index = array_search( $taxonomy_id, $this->sorted_taxonomies );

if ( false !== $current_index && isset( $this->sorted_taxonomies[ $current_index + 1 ] ) )
return $this->sorted_taxonomies[ $current_index + 1 ];

return false;
}

/**
* @param int Taxonomy ID.
* @return int|bool Previous taxonomy ID or false if this ID is last one. False if this ID is not in the list.
*/
public function previous( $taxonomy_id ) {

$current_index = array_search( $taxonomy_id, $this->sorted_taxonomies );

if ( false !== $current_index && isset( $this->sorted_taxonomies[ $current_index — 1 ] ) )
return $this->sorted_taxonomies[ $current_index — 1 ];

return false;
}
}

Шаг 2: Использование объекта в файле archive.php

После создания объекта для сортировки рубрик, мы будем использовать его в файле archive.php, который отображает список записей для определенной рубрики. Мы будем использовать следующий код для вывода ссылок на предыдущую и следующую рубрики:

class wpse_99513_adjacent_category {

public $sorted_taxonomies;

/**
* @param string Taxonomy name. Defaults to ‘category’.
* @param string Sort key. Defaults to ‘id’.
* @param boolean Whether to show empty (no posts) taxonomies.
*/
public function __construct( $taxonomy = ‘category’, $order_by = ‘id’, $skip_empty = true ) {

$this->sorted_taxonomies = get_terms(
$taxonomy,
array(
‘get’ => $skip_empty ? » : ‘all’,
‘fields’ => ‘ids’,
‘hierarchical’ => false,
‘order’ => ‘ASC’,
‘orderby’ => $order_by,
)
);
}

/**
* @param int Taxonomy ID.
* @return int|bool Next taxonomy ID or false if this ID is last one. False if this ID is not in the list.
*/
public function next( $taxonomy_id ) {

$current_index = array_search( $taxonomy_id, $this->sorted_taxonomies );

if ( false !== $current_index && isset( $this->sorted_taxonomies[ $current_index + 1 ] ) )
return $this->sorted_taxonomies[ $current_index + 1 ];

return false;
}

/**
* @param int Taxonomy ID.
* @return int|bool Previous taxonomy ID or false if this ID is last one. False if this ID is not in the list.
*/
public function previous( $taxonomy_id ) {

$current_index = array_search( $taxonomy_id, $this->sorted_taxonomies );

if ( false !== $current_index && isset( $this->sorted_taxonomies[ $current_index — 1 ] ) )
return $this->sorted_taxonomies[ $current_index — 1 ];

return false;
}
}

Также читают
12.08.2024
Формирование Title Август 2021, новые обновления Гугл
Август стал интересным. Google официально подтвердил новый алгоритм формирования Titile в Снипите. Многие уже сделали,
12.08.2024
DESIGNRUSH про mkey media и трендах дизайна
DesignRush написал с оповещением, что хочет включить нашу работу и компанию в тренды дизайна. Статья
22.05.2023
Сайт на шаблоне или уникальный дизайн?
Сайт на шаблоне Сайт на шаблоне — это сайт, созданный на основе готового дизайна и
17.05.2023
Важность шрифта в дизайне. Как установить шрифт в Figma?
Важность шрифта в дизайне. Как установить шрифт в Figma?
17.05.2023
Как интегрировать Telegram с Wordpress (CF7)
Инструкция по интеграции Telegram бота с помощью плагина Contact Form 7 Введение: Интеграция Telegram бота
20.04.2023
Как сделать продающий дизайн сайта?
Что такое дизайн сайта? Дизайн сайта — это процесс создания визуального и пользовательского интерфейса для
12.04.2023
DESIGNRUSH упоминает нашу работу как тренд в 2023
Компания MKey Media рада сообщить о том, что наша команда была упомянута в статье «16
31.03.2023
Как сделать прямую ссылку на покупку товара WordPress
Для создания прямой ссылки на покупку товара в WordPress, вам нужно использовать плагин для электронной
13.03.2023
Как подключить CloudFlare к WordPress
Шаг 1: Создайте аккаунт в Cloudflare Если у вас еще нет аккаунта в Cloudflare, создайте
12.03.2023
Как убрать ошибку (блокировку) Your access to this site has been temporarily limited by the site owner
Ранее вы или кто-то поставил модуль Wordfence Если вы читаете эту статью, вероятно вам заблокировал доступ
11.03.2023
Как убрать ошибку после обновления WordPress Fatal error Elementor
У меня возникла эта ошибка после того, как клиент решил обновить свой WordPress и у
03.03.2023
Техническая поддержка сайта(что это и зачем) - 2023 от mkey media
Что такое техническая поддержка сайта Техническая поддержка сайта — это услуга, которая включает в себя
20.02.2023
Как сделать дизайн в Figma?
Figma — это Figma — это онлайн-инструмент для дизайна интерфейсов, который позволяет создавать и редактировать
20.02.2023
Landing Page - продающий лендинг пейдж
Лендинг пейдж (англ. landing page) — это веб-страница, на которую пользователь попадает после нажатия на
20.02.2023
Создание и разработка сайтов
Создание и разработка сайтов — это процесс, который включает в себя несколько этапов. Вот основные
17.08.2021
Как в OpenCart добавить значение атрибута ID в метаданные(Тайтл и Дескрипшен)
Или как убрать дубли с товаров, если товары отличаются только характеристиками. 1) Требуется перейти в
03.08.2021
Что такое ребрендинг
Ребрендинг (rebranding) – это комплекс мер направленных на изменение бренда и его восприятия. Предполагается визуальное
13.07.2021
Разработка и создание нейминга
Нейминг (naming) – это процесс именования бренда или продукта, концепция процесса очень похожа на создание
02.07.2021
Брендинг: что это такое и с чего начать?
Мы не придерживаемся, общепринятых нормативов, мы пишем о том, что считаем действительно нужным и полезным