Wordpress Сортировать по дате в метаполе или дате последнего изменения - PullRequest
1 голос
/ 03 марта 2020

Мне нравится сортировать по дате. В то время как мета-ключ pdate существует, мне нравится использовать его как дату. Если мета-ключ pdate не существует, я хотел бы использовать дату последнего изменения.

Этот код показывает отсортированные сообщения по pdate. Оно работает. Теперь мне интересно, как я могу добавить дату последнего изменения в этот код.

<?php
$paged = (int) get_query_var('paged');
$args = array(
    'paged'       => $paged,
    'order'       => 'DESC',
    'post_type'   => 'post',
    'post_status' => 'publish',
    'meta_key'    => 'pdate',
    'type'        => 'DATE',
    'orderby'     => 'meta_value',
);
?> 

Теперь, я думаю, я мог бы установить данные даты в $ date.

Кто-нибудь, пожалуйста, научите меня, как я могу пусть он сортирует по $ date ... или как я могу позволить ему считать $ date датой для него.

<?php
if(get_post_meta($post->ID, 'pdate',true)):
$date = get_post_meta( $post->ID, 'pdate', true );
else
$date = get_the_modified_date(); 

        $paged = (int) get_query_var('paged');
        $args = array(

            'paged' => $paged,
            'order' => 'DESC',
            'post_type' => 'post',
            'post_status' => 'publish',
            'type'  => 'DATE',

);?>      

Ответы [ 2 ]

0 голосов
/ 03 марта 2020

Попробуйте этот метод

<?php    
$text_content = new WP_Query( array( 
    'posts_per_page' => '10' ,
    'post_type'      => 'text_content ',
    'orderby'        => 'meta_value',
    'meta_key'       => 'text_content_date ',
    'order'          => 'DESC'
) );
?>
0 голосов
/ 03 марта 2020

Вы пытаетесь вызвать $ date в ключе arg, который не будет работать. Если вы пытаетесь упорядочить по дате, почему бы просто не позвонить 'orderby' => 'date'

В противном случае, судя по тому, что вы пытаетесь сделать, структура его неверна. Если вы пытаетесь указать конкретную c дату, вам нужно позвонить по следующему номеру в $args = array()

'date_query' => array(
  array (
    'year' => 2020,
    'month' => 03,
    'day' => 03,
 )
);

Слишком выполнено sh, это может потребовать деструктуризации даты, возвращенной в пределах $ Дата и применить результаты к массиву 'date_query'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...