WordPress. Как сделать вывод определённого количества постов на странице?

12 3
A
На сайте с 10.09.2016
Offline
20
1690

Здравствуйте уважаемые пользователи форума. Помогите пожалуйста решить следующую проблему.

Есть страница Tags в шаблоне с следующим кодом в functions.php:

     

function wp_tube_tags_letters_list (){

$res = array();
$chars = range('A', 'Z');

$term_args=array(
'orderby' => 'name',
'order' => 'ASC'
);

$terms = get_terms('post_tag', $term_args);

foreach ($terms as $term) {
foreach ($chars as $char) {
if (substr($term->name, 0, 1) === $char) {
if (!in_array($char, $res))
$res[] = $char;
}
}
}
return $res;
}

Как изменить количество отображаемых постов на странице? Чтобы вместо полного списка сообщений\тегов на странице, стало отображаться произвольно заданное количество сообщений\тегов, к примеру: 10 или 20

---------- Добавлено 20.04.2019 в 18:35 ----------

Извините недоступны "Опции темы", в первом сообщении ошибка, где: $res***91;***93; = $char;

следует читать как =>

$res[ ] = $char;

HM
На сайте с 14.01.2012
Offline
218
#1

 $term_args=array( 
'orderby' => 'name',
'order' => 'ASC' ,
'number' => 10
);
number(число)
Максимальное количество элементов, которые будут получены. Лимит.
По умолчанию: все.
A
На сайте с 10.09.2016
Offline
20
#2

Извините, это не работает. Пробовал этот способ прежде чем создавать тему.

HM
На сайте с 14.01.2012
Offline
218
#3

Adadx, проверил у себя - работает.


function wp_tube_tags_letters_list (){

$res = array();
$chars = range('A', 'Z');

$args = array(
'taxonomy' => 'post_tag',
'orderby' => 'name',
'order' => 'ASC',
'number' => 1
);
$terms = get_terms( $args );

// print_r($terms);

foreach ($terms as $term) {
foreach ($chars as $char) {
if (substr($term->name, 0, 1) === $char) {
if (!in_array($char, $res))
$res[] = $char;
}
}
}
return $res;
}
A
На сайте с 10.09.2016
Offline
20
#4
hakuna matata:
Adadx, проверил у себя - работает.

Ваш способ работает частично. В целом он отображает всё тот же полный список. Если есть желание могу дать доступ в админку сайта для экспериментов.

S
На сайте с 30.09.2016
Offline
469
#5
Adadx:
Извините, это не работает. Пробовал этот способ прежде чем создавать тему.

Кэш вордпрессовый почистили?

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
HM
На сайте с 14.01.2012
Offline
218
#6

Adadx, что значит частично? Функция работает так: берет n тегов и выводит массив из их первых букв.

A
На сайте с 10.09.2016
Offline
20
#7

Ваш код некорректно отображает всё тот же полный список тегов. Привожу функцию полностью:

if ( ! function_exists( 'wptube_post_thumbnail') ) {

function wptube_post_thumbnail (){
$image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'wptube-tumbs');
?>
<img src="<?php echo get_stylesheet_directory_uri() . '/img/grey.gif'; ?>"
id="<?php echo get_the_ID(); ?>"
width="100%"
class="lazy wp-post-image"
alt="<?php echo get_the_title(); ?>"
title="<?php echo get_the_excerpt();?>"
style="display: inline;"
data-original="<?php echo $image_url[0]; ?>">
<?php
}
}
function wp_tube_tags_letters_list (){

$res = array();
$chars = range('A', 'Z');

$term_args=array(
'orderby' => 'name',
'order' => 'ASC'
);

$terms = get_terms('post_tag', $term_args);

foreach ($terms as $term) {
foreach ($chars as $char) {
if (substr($term->name, 0, 1) === $char) {
if (!in_array($char, $res))
$res[] = $char;
}
}
}
return $res;
}
S
На сайте с 30.09.2016
Offline
469
#8
Adadx:
Здравствуйте уважаемые пользователи форума.

Здоровались уже.

---------- Добавлено 20.04.2019 в 20:32 ----------

Adadx:
список тегов. Привожу функцию полностью
Эта функция не выводит список тегов. Она выводит список первых букв имён.
A
На сайте с 10.09.2016
Offline
20
#9
Sitealert:

Эта функция не выводит список тегов. Она выводит список первых букв имён.

Всё верно. На странице отображается всё тот же полный список, только вместо сортировки от A до Z по alphabetycal отображается сортировка по заданному количеству букв.

S
На сайте с 30.09.2016
Offline
469
#10
Adadx:
вместо сортировки от A до Z по alphabetycal отображается сортировка по заданному количеству букв.

1. Этого не может быть.

2. Это утверждение лишено смысла.

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий