2017-12-26 33 views
0

私はすべてのワードプレス投稿を変更日から取得しようとしましたが、変更日から投稿を取得できません。私はpost_dateではなく、post_modifiedでデータを取得しています。投稿は25-12-2017modified dateで、そのpost dateは23-12-2017でした。私は、変更後の日付でデータを取得したい。 更新日のWordpressの投稿投稿

はありがとう

最初のコード:

<?php 
$args = array(
    'posts_per_page' => $Limit, 
    'post_type' => 'post', 
    'orderby' => 'modified', 
    'offset' => ($Page - 1) * $Limit, 
    'year'=>date('Y'), 
    'monthnum'=>date('m'), 
    'day'=> 25, 
    'order'=> 'DESC', 
); 
?> 

セカンドコード:デフォルトのワードプレスによって

<?php 
$args = array(
    'posts_per_page' => $Limit, 
    'post_type' => 'post', 
    'orderby' => 'modified', 
    'offset' => ($Page - 1) * $Limit, 
    'date_query' => array(
     array(
      'after'  => "December 24, 2017",    
     ), 
    ), 
); 
?> 

答えて

1

私は思いませんが、この機能を持っていますこれを達成することができる によってposts_whereフィルター。

ここではサンプルコードです:

書き込みこれはあなたのfunctions.phpファイル

function scopePostModifiedDate($sql) 
{ 
    global $wpdb; 
    $sql .= $wpdb->prepare(" AND DATE($wpdb->posts.post_modified) >= %s ", '2017-12-25'); 
    return $sql; 
} 

そして、あなたが必要とするたびに、このコードで:

add_filter('posts_where', 'scopePostModifiedDate'); 

$args = array(
    'posts_per_page' => $Limit, 
    'post_type' => 'post', 
    'orderby' => 'modified', 
    'offset' => ($Page - 1) * $Limit, 
// 'date_query' => array(
//  array(
//   'after'  => "December 24, 2017",    
//  ), 
// ), 
); 
$custom_query = new WP_Query($args); 
remove_filter('posts_where', 'scopePostModifiedDate'); 
//print_r($custom_query->request); //print SQL query 

がRefrence: