Prestashop 8.0订单列表页单独显示订单日期时间的实现咨询
解决Prestashop 8.0订单列表单独显示日期+时间的问题
要实现仅在后台订单列表页显示带时间的日期(格式如2024-02-17 17:20:05),不影响全站其他地方的日期格式,有两种可靠的实现方式:
方法一:直接修改后台订单列表模板(最简单)
- 找到后台订单列表的模板文件,路径为:
admin-dev/themes/new-theme/templates/controllers/orders/list/list_row.tpl
(若后台使用旧主题,路径改为admin-dev/themes/default/controllers/orders/list/list_row.tpl) - 在文件中找到显示订单日期的代码行,通常是:
{$order.date_add|date:$date_format_short} - 将其替换为自定义的日期时间格式:
{$order.date_add|date:'Y-m-d H:i:s'} - 保存文件后,进入后台高级参数 > 性能页面,清除所有缓存,刷新订单列表页即可生效。
方法二:重写后台订单控制器(无模板修改,更安全)
如果不想直接修改模板文件,可通过重写控制器来单独控制该页面的日期格式:
- 在Prestashop根目录下创建(或修改)重写文件:
override/controllers/admin/AdminOrdersController.php - 写入以下代码:
<?php class AdminOrdersController extends AdminOrdersControllerCore { public function renderList() { // 遍历列表列,找到日期列并修改格式 foreach ($this->_list_columns as &$column) { if ($column['id'] === 'date_add') { $column['date_format'] = 'Y-m-d H:i:s'; break; } } return parent::renderList(); } } - 保存文件后,同样进入后台清除缓存,系统会自动加载重写的控制器,订单列表的日期将显示为带时间的格式。
注意:无论用哪种方法,修改后必须清除Prestashop的缓存,否则修改可能不会立即生效。
内容的提问来源于stack exchange,提问作者velso
相关产品推荐
相关产品推荐

