На самом деле, возвращение к странице списка, на которой находится товар, при сохранении или отмене редактирования, предусмотрено по-умолчанию, просто там, видать, баг (по крайней мере в версии 1.5.5.1.2). Его можно самостоятельно исправить в файле admin/controller/catalog/product.php. Нужно найти фрагмент текста
if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}
$data = array(
'filter_name' => $filter_name,
'filter_category_id' => $filter_category_id,
'filter_manufacturer_id' => $filter_manufacturer_id,
'filter_model' => $filter_model,
'filter_price' => $filter_price,
'filter_quantity' => $filter_quantity,
'filter_status' => $filter_status,
'sort' => $sort,
'order' => $order,
'start' => ($page - 1) * $this->config->get('config_admin_limit'),
'limit' => $this->config->get('config_admin_limit')
);
и после
if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}
добавить
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
чтобы получилось так
if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
$data = array(
'filter_name' => $filter_name,
'filter_category_id' => $filter_category_id,
'filter_manufacturer_id' => $filter_manufacturer_id,
'filter_model' => $filter_model,
'filter_price' => $filter_price,
'filter_quantity' => $filter_quantity,
'filter_status' => $filter_status,
'sort' => $sort,
'order' => $order,
'start' => ($page - 1) * $this->config->get('config_admin_limit'),
'limit' => $this->config->get('config_admin_limit')
);
Данное решение подходит для версии ocStore 1.5.5.1.2, для других не проверялось.