Запросы Orderby, вызывающие некоторые проблемы - PullRequest
0 голосов
/ 17 января 2020

Я использую следующий код в моих функциях. php файл для отображения результатов в определенном порядке ...

function my_pre_get_posts( $query ) {
        if( is_admin() ) {
        return $query;
    }
    if( isset($query->query_vars['post_type']) && $query->query_vars['post_type'] == 'book' ) {
        $query->set('orderby', 'meta_value');   
        $query->set('meta_key', 'start_date');   
        $query->set('order', 'DESC');   
    }
    return $query;
}
add_action('pre_get_posts', 'my_pre_get_posts');



function wpse139657_orderby($query){ 

    $query->set( 'orderby', 'meta_value' ); 
    $query->set( 'order', 'DESC' ); 
    $query->set( 'meta_key', 'book_release_date' ); 
    $query->set( 'meta_type', 'NUMERIC' );

        if (is_admin() || $query->query_vars['post_type'] != 'book') return $query;
} 
add_filter('pre_get_posts','wpse139657_orderby');

Проблема в том, что приведенный выше код вызывает какой-то конфликтов с другими запросами функций, которые перестали работать.

Я почти уверен, что должен исправить эту часть кода: if (is_admin() || $query->query_vars['post_type'] != 'book') return $query;, но, тем не менее, я не могу понять, как правильно его напечатать. Можете ли вы мне помочь?

РЕДАКТИРОВАТЬ: следующий запрос прерывается приведенным выше кодом по странным причинам. Раньше он работал, пока я не использовал вышеупомянутую функцию, которая каким-то образом отключила эту функцию:

function haruki($post_id) {
global $post;
$thumbnail_ID = get_post_thumbnail_id();
$images = get_children( array('post_parent' => $post_id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID') );
if ($images) :
foreach ($images as $attachment_id => $image) :
if ( $image->ID != $thumbnail_ID ) :
$img_alt = get_post_meta($attachment_id, '_wp_attachment_image_alt', true); //alt
if ($img_alt == '') : $img_alt = $image->post_title; endif;
$big_array = image_downsize( $image->ID, 'large' );
$img_url = $big_array[0];
echo $img_url;
endif; endforeach; endif; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...