El tema de hoy es muy interesante y solicitado por los usuarios de Prestashop, se trata de saber como añadir columnas en la lista de pedidos de Prestashop. Es un recurso muy útil que nos facilitará el trabajo a la hora de buscar determinados pedidos en nuestro backoffice.
Nosotros vamos a realizar un ejemplo que consiste en añadir el email de cliente en el listado de pedidos de Prestashop para que podamos filtrar todos nuestros pedidos para un mismo email. Creemos que la columna email de cliente ya debería venir por defecto en la página de pedidos pero parece que Prestashop no piensa igual. Haremos la prueba en Prestashop 1.7.4.4, si tenéis otra versión de Prestashop podrían existir algunas diferencias.
Añadir Email en lista de pedidos
Para conseguir añadir la columna de email de clientes a la página de pedidos de Prestashop tenemos que editar (mejor crear override) el archivo AdminOrdersController.php que encontraréis en la ruta;
/controllers/admin/AdminOrdersController.php
Tenemos que añadir el siguiente código:
‘email’ => array(
‘title’ => $this->trans(‘Email address’, array(), ‘Admin.Global’)
),
entre la siguiente sección;
$this->fields_list = array(
‘id_order’ => array(
‘title’ => $this->trans(‘ID’, array(), ‘Admin.Global’),
‘align’ => ‘text-center’,
‘class’ => ‘fixed-width-xs’
),
‘reference’ => array(
‘title’ => $this->trans(‘Reference’, array(), ‘Admin.Global’)
),
‘new’ => array(
‘title’ => $this->trans(‘New client’, array(), ‘Admin.Orderscustomers.Feature’),
‘align’ => ‘text-center’,
‘type’ => ‘bool’,
‘tmpTableFilter’ => true,
‘orderby’ => false,
),
‘customer’ => array(
‘title’ => $this->trans(‘Customer’, array(), ‘Admin.Global’),
‘havingFilter’ => true,
),
‘products’ => array(
‘title’=> $this->l(‘products’)
)
);
Guardamos y comprobamos en nuestro backoffice que ya visualiza la columna Email en el listado de pedidos.
Y si lo quieres es eliminar alguna de las columnas que hay en el listado de pedidos de Prestashop 1.7 puedes leer el siguiente post;
https://vegaweb.es/eliminar-columna-en-listado-de-pedidos-en-backoffice-de-prestashop-1-7/
Interesante entrada! Gracias por compartir. ¿Podría añadirse, en lugar de la dirección de correo electrónico, el transportista que lleva cada pedido? Nosotros tabajamos la preparación y embalaje de forma muy diferente para cada uno de los dos transportistas que tenemos disponibles, entonces nos ahorraría un montón de tiempo disponer de esta información en la lista de pedidos y poder ordenarlos en función de esta característica. ¡Muchísimas gracias!
Hola, podéis probar con un módulo como el siguiente:
https://mypresta.eu/modules/administration-tools/quick-order-preview.html
¿Entonces no es posible ver esta información en una columna? Así poder saber cuántos pedidos tenemos pendientes con cada repartidor, sin tener que desplegarlos todos para verlos como hace el módulo que comentas. Poder contar con esta información en la misma pantalla, y además poder ordenar los pedidos en base a ese criterio, que solo se podría hacer si es una columna por sí mismo. He encontrado información para la versión 1.6, pero no funciona para la 1.7. ¡Gracias!
Hola, prueba con el siguiente código;
‘carrier’ => array(
‘title’ => $this->trans(‘Carrier’, array(), ‘Admin.Global’)
),
No olvides hacer copia de seguridad de tu sitio o del archivo a modificar antes de hacer cualquier cambio.
Hola, me gustaría añadir la columna de mensajeros ¿como se haría?
Gracias!
Hola Sara, puedes probar con el código:
‘carrier’ => array(
‘title’ => $this->trans(‘Carrier’, array(), ‘Admin.Global’)
),
Te recomendamos hacer una copia de seguridad antes de hacer cualquier cambio. Nosotros no hemos hecho la prueba, confirma si te funciona.