I have a WordPress food site through Woocommerce. The store page is a weekly menu, and I want to show on the store page only the menu for this week. A new list is entered every week. I found the following code and tried to make it do what I wanted, but it never works.

function custom_meta_query( $meta_query ){
$today = current_time('Ymd');
 $args = array (
    'numberposts' => -1,
    'meta_query' => array(
    'relation' => 'AND',
    'start_clause' => array(
        'value' => $today,
        'compare'=> '<=',
     'type' => 'DATE'
         'end_clause' => array(
         'key' => 'flash_sale_end',
     'value' => $today,
         'compare' => '>=',
     'type' => 'DATE'

return $args;

// The main shop and archives meta query
add_filter( 'woocommerce_product_query_meta_query', 'custom_product_query_meta_query', 10, 2 );
function custom_product_query_meta_query( $meta_query, $query ) {
    if( ! is_admin() )
        return custom_meta_query( $meta_query );

I searched the hooks in WooCommerce to find the query I needed, but it was useless.

Please, Is there any suggestion to solve this issue?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.