Подскажите, пожалуйста, с какой целью написана данная функция WordPress и насколько она оптимальна?

12
Romanov Roman
На сайте с 21.06.2018
Offline
215
378
function get_previous_posts_in_current_category( $post_id ) {
    $args = array(
        'numberposts' => 5,
        'offset' => 0,
        'category' => get_queried_object_id(),
        'orderby' => 'date',
        'order' => 'DESC'
    );
    $prev_posts = get_posts( $args );
    if ( !empty( $prev_posts ) ) {
        foreach ( $prev_posts as $prev_post ) {
            echo '<a href="' . get_permalink( $prev_post->ID ) . '">' . get_the_title( $prev_post->ID ) . '</a>';
        }
    }
}
add_action( 'loop_start', 'get_previous_posts_in_current_category' );


Всем удачи в продвижении сайтов. Будьте здоровы и счастливы, а остальное - "приложится".
Антоний Казанский
На сайте с 12.04.2007
Offline
747
#1
get_previous_posts_in_current_categor

Получить предыдущие посты в текущей категории.

Насколько я понимаю, рассматриваются 5 постов, которые потом перебираются циклом и выводится 5 ссылок с заголовками на эти страницы как результат.

p.s. Более точно подскажут программисты :) 

√ SEO продвижение ► https://akazansky.ru - экспертный аудит сайтов ( https://akazansky.ru/audit-sajtov ), внедрение эффективных решений цифрового маркетинга. Разговоры о SEO и не только: культурно, вежливо, доброжелательно ► https://t.me/seotusovochka
Romanov Roman
На сайте с 21.06.2018
Offline
215
#2
Антоний Казанский #:
Получить предыдущие посты в текущей категории.

Тоже так считаю) Но хотелось бы уточнить, данная функция выводит 5 предыдущих постов относительно текущего id или, как часто бывает, 5 последних постов из раздела.

S3
На сайте с 29.03.2012
Offline
351
#3
Ну блин тамже четко написано- по дате добавления. И порядок вывода- descending
Romanov Roman
На сайте с 21.06.2018
Offline
215
#4
Sly32 #:
Ну блин тамже четко написано- по дате добавления. И порядок вывода- descending

Извините, пожалуйста, я не программист.

Если я правильно понимаю, данная функция - не что иное, как круговая перелинковка WordPress, замыкаемая в кольцо.

Допустим, есть 10 постов внутри раздела. Вместо цифры 5 можно задать 3.

Тогда получаем, что:

10 ссылается на 9,8,7.
9 на 8,7,6.
8 на 7,6,5.
7 на 6,5,4.
6 на 5,4,3.
5 на 4,3,2.
4 на 3,2,1.
3 на 2,1,10.
2 на 1,10,9.
1 на 10,9,8.

S3
На сайте с 29.03.2012
Offline
351
#5
Вот ты даже ответ прочитать не можешь и выдумываешь какие то кольцевые перелинковки. Я уже все ответил. Не нужно ничего выдумывать
W1
На сайте с 22.01.2021
Offline
306
#6
Romanov Roman #:
Но хотелось бы уточнить, данная функция выводит 5 предыдущих постов относительно текущего id или, как часто бывает, 5 последних постов из раздела

5 последних постов из раздела

Romanov Roman #:
Если я правильно понимаю, данная функция - не что иное, как круговая перелинковка WordPress, замыкаемая в кольцо.

Это какие-то фантазии

Владимир Коток #:
Эта функция WordPress

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

И вообще, код какой-то кривой.

Мой форум - https://webinfo.guru –Там я всегда на связи
S3
На сайте с 29.03.2012
Offline
351
#7
webinfo #:
И вообще, код какой-то кривой.

В чем кривость? Все написано по канонам ВП, минимум кода, легко прочитать даже мне, не заглядывающему в ВП/пхп уже больше 5 лет.

W1
На сайте с 22.01.2021
Offline
306
#8
Sly32 #:
В чем кривость? Все написано по канонам ВП

В том-то и дело, что не по канонам. Например, функция, подключаемая по указанному хуку, никак не ожидает увидеть в качестве аргумента какой-то там идентификатор (а чат жопити даже не заметил этого и написал какую-то чушь. 🤣). И функция get_queried_object_id() работает совершенно определённым образом, что никак не отражено в коде. Я вообще не понимаю, как всё это может корректно работать. Тестить надо. Может быть, там ещё какие-то функции работают.

S3
На сайте с 29.03.2012
Offline
351
#9
webinfo #:
Например, функция, подключаемая по указанному хуку, никак не ожидает увидеть в качестве аргумента какой-то там идентификатор

что значит "какойто?" там идентификатор функции, приведенной выше. Все правильно. 

webinfo #:
И функция get_queried_object_id() работает совершенно определённым образом, что никак не отражено в коде.

как это должно было быть отражено? Простая функция, которая получает айди категории  и потом для этой категории получаются последние 5 постов от более нового к страому. Куда уж проще, даже для меня это не секрет.

G6
На сайте с 12.07.2007
Offline
187
#10
А чем плоха wp_get_recent_posts()? Если в аргументах задать ограничение по периоду, скажем в неделю или в месяц, чтобы не по всей таблице постов ударять, вообще как метеор работает и не грузит, ресурсов минимум.
Очистите трафик сайта от ботов и накруток ПФ https://antibot.worldwebinfo.ru
12

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