En esta entrada vamos a ver como añadir una acción en bulk a un controller, en el ejemplo que vamos a ver va a ser en el controller AdminOrdersController.php
Lo primero que debemos hacer es añadir un fichero en override, debemos crear este fichero con el nombre que queremos cambiar el codigo o añadir algo nuevo como es nuestro caso
/override/controllers/admin/AdminOrdersController.php
Editamos este fichero y añadimos el siguiente codigo
<?php class AdminOrdersController extends AdminOrdersControllerCore { public function __construct() { parent::__construct(); } }
ya tenemos el codigo principal de nuestro fichero override
ahora debemos añadir nuestra modificacion y la nueva action bulk, se recomienda añadir el bulk ya existente
Cambiaremos la function construct() por esta
public function __construct() { parent::__construct(); $this->bulk_actions = array( 'updateOrderStatus' => array('text' => $this->l('Change Order Status'), 'icon' => 'icon-refresh'), 'nueva_accion' => array('text' => 'Texto de la nueva accion', 'icon' => 'icon-refresh'), ); }
Una vez se ha añadido la acción “nueva_accion” deberemos añadir la function que llamara cuando seleccionemos esta acción en el controller
protected function processBulknueva_accion(){ //aqui tu codigo //fin de codigo personalizado }
Una vez hemos añadido el código necesario, se recomienda cambiar el nombre o eliminar el siguiente fichero
/cache/class_index.php
Accederemos al controller que hemos modificado y veremos que ya tenemos nuestra nueva accion bulk