Avisos
Vaciar todo

[Resuelto] ¿Cómo puedo filtrar en el listado de pedidos por código postal?  

 
Pablo
 Pablo
Usuario activo

Hay algún plugin o poniendo algún campo personalizado que me permita contar con una opción donde tener un campo input y metiendo el código postal que salgan todos los pedidos realizados para ese código postal o algo similar?

Gracias!

Contenido solo visible a usuarios registrados

Respondido : 25/01/2023 9:12 pm
Argenis
 Argenis
Soporte CMS Webempresa Moderator

Hola Pablo,

Los plugins que se acercan a esto están muy desactualizados, al menos dos años que no se actualizan:

https://wordpress.org/plugins/additional-order-filters-for-woocommerce/

Igualmente, puedes verificar agregando este código a tu archivo functions.php:

// Agregar columna personalizada
add_filter( 'manage_edit-shop_order_columns', 'add_custom_shop_order_column' );
function add_custom_shop_order_column( $columns ) {
$order_actions = $columns['order_actions'];
unset($columns[ 'order_actions' ]);

// agregar columna
$columns['postcode'] = __('Zip Code', 'woocommerce');

// insertar orden
$columns['order_actions'] = $order_actions;

return $columns;
}

// gestion
add_action( 'manage_shop_order_posts_custom_column', 'shop_order_column_meta_field_value' );
function shop_order_column_meta_field_value( $column ) {
global $post, $the_order;

if ( ! is_a( $the_order, 'WC_Order' ) ) {
$the_order = wc_get_order( $post->ID );
}

if ( $column == 'postcode' ) {
echo $the_order->get_shipping_postcode();
}
}

// hacer seleccionable
add_filter( "manage_edit-shop_order_sortable_columns", 'shop_order_column_meta_field_sortable' );
function shop_order_column_meta_field_sortable( $columns )
{
$meta_key = '_shipping_postcode';
return wp_parse_args( array('postcode' => $meta_key), $columns );
}

// hacer elegible a filtro
add_action('pre_get_posts', 'shop_order_column_meta_field_sortable_orderby' );
function shop_order_column_meta_field_sortable_orderby( $query ) {
global $pagenow;

if ( 'edit.php' === $pagenow && isset($_GET['post_type']) && 'shop_order' === $_GET['post_type'] ){

$orderby = $query->get( 'orderby');
$meta_key = '_shipping_postcode';

if ('_shipping_postcode' === $orderby){
$query->set('meta_key', $meta_key);
$query->set('orderby', 'meta_value_num');
}
}
}

// buscable
add_filter( 'woocommerce_shop_order_search_fields', 'shipping_postcode_searchable_field' );
function shipping_postcode_searchable_field( $meta_keys ){
$meta_keys[] = '_shipping_postcode';
return $meta_keys;
}

El archivo lo encuentras en Panel > administrador de archivos > public_html > Dominio > wp-content > themes > tema utilizado > archivo functions.php

Verifica y nos comentas. Un saludo 🖐️ 

Esta publicación ha sido modificada el hace 1 año por Argenis
Respondido : 25/01/2023 10:13 pm

Pablo
 Pablo
Usuario activo

Perfecto me sirve.

Muchas gracias y cierro ticket.

Respondido : 26/01/2023 9:59 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Pablo.

Genial !!! Me alegra que lo solucionaras.

Cualquier consulta que tengas no dudes en comunicarlo.

 

Un saludo

Respondido : 26/01/2023 11:14 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress