it-swarm.com.de

Erhalten Sie Beiträge für die letzte Arbeitswoche in WP_Query

Mit der date_query in WordPress habe ich versucht, Beiträge für die letzte Arbeitswoche (Montag bis Freitag) zu bekommen.

Ich habe benutzt:

$base_array        = array(
    'posts_per_page'    => -1,
    'fields'            => 'ids',
    'post_type'         => 'cpt',
    'post_status'       => array('publish'),
    'date_query'        => array(
            'before'    => 'next Saturday',
            'after'     => 'last Monday'
    )
);

 $base = get_posts($base_array);

Aber heute, an einem Donnerstag, werden folgende Werte zurückgegeben:

Vom 31.10.2016 bis zum 28.10.2016

Was macht bei den "letzten" Tagen Sinn, aber gibt es eine Möglichkeit, wie ich den letzten Montag zum letzten Freitag bringen kann? Unabhängig davon, an welchem ​​Tag die WP_Query abgefragt wird.

1

Versuchen Sie es mit dem folgenden Code:

$base_array        = array(
    'posts_per_page'    => -1,
    'fields'            => 'ids',
    'post_type'         => 'cpt',
    'post_status'       => array('publish'),
    'date_query'        => array(
            'after'     => strtotime( 'previous week Monday' ),
            'before'    => strtotime( 'previous week Friday' )
    )
);

$base = get_posts($base_array);

Ich habe es nicht getestet. Aber ich habe getestet, dass der folgende Code das perfekte Datum zurückgibt.

date('Y-m-d',strtotime('previous week Monday'));
date('Y-m-d',strtotime('previous week Friday'));

Es kehrt zurück-

2016-10-24 und 2016-10-28

1
CodeMascot