Hola! os comparte este código que funciona muy bien, sirve para los que usamos woocommerce nos permita filtrar por días o por un rango seleccionado de fechas, ya que actualmente sólo filtra por meses enteros.
Agrega este código en tu plugin de fragmentos de código o en el archivo functions.php de tu tema hijo:
// Agrega los campos de filtro de fecha
add_action(‘restrict_manage_posts’, ‘filtro_fecha_pedidos’);
function filtro_fecha_pedidos() {
global $typenow;
if ($typenow == ‘shop_order’) {
?>
<input type=»date» name=»start_date» id=»start_date» placeholder=»<?php esc_attr_e(‘Fecha inicio’, ‘woocommerce’); ?>» value=»<?php echo esc_attr($_GET[‘start_date’] ?? »); ?>»/>
<input type=»date» name=»end_date» id=»end_date» placeholder=»<?php esc_attr_e(‘Fecha fin’, ‘woocommerce’); ?>» value=»<?php echo esc_attr($_GET[‘end_date’] ?? »); ?>»/>
<?php
}
}
// Modifica la consulta de pedidos para filtrar por fecha
add_filter(‘request’, ‘filtrar_pedidos_por_fecha’);
function filtrar_pedidos_por_fecha($vars) {
global $typenow, $wpdb;
if ($typenow == ‘shop_order’ && isset($_GET[‘start_date’]) && $_GET[‘start_date’] && isset($_GET[‘end_date’]) && $_GET[‘end_date’]) {
$vars[‘date_query’] = array(
‘after’ => sanitize_text_field($_GET[‘start_date’]),
‘before’ => sanitize_text_field($_GET[‘end_date’]),
‘inclusive’ => true,
);
}
return $vars;
}