PrestaShop:为RMA状态行添加背景颜色

时间:2016-09-01 22:44:45

标签: php override smarty prestashop prestashop-1.5

我希望获得状态颜色以填充prestashop默认RMA中的背景颜色。见图。enter image description here

我试图找到正确的tpl文件但没有成功。我在订单页面上找到的状态颜色代码,我认为这也适用于此。

{if isset($tr.color) && $color_on_bg}style="background-color: {$tr.color}"{/if}

Prestashop 1.5.3.1

1 个答案:

答案 0 :(得分:0)

首先,您必须在OrderReturnStat类中创建一个新方法。我会指导你达到目的。

OrderReturnState.php中创建新文件名prestashop/override/classes/order/

class OrderReturnState extends OrderReturn {
    public static function getOrderStateColor($id_order_return_state) {
        return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue('SELECT color FROM `'._DB_PREFIX_.'order_return_state` WHERE id_order_return_state = '.(int)$id_order_return_state.'');
    }
}

之后你必须创建另一个文件,我不粘贴在这里因为太长,复制并粘贴这个文件

prestashop/youradminfolder/themes/default/template/helpers/list/list_content.tpl

prestashop/youradminfolder/themes/default/template/controllers/return/helpers/list/

现在更改您在

中发布的代码
{if isset($tr.color) && $color_on_bg}style="background-color: {$tr.color}"{elseif $statecolor = OrderReturnState::getOrderStateColor($tr.state)}style="background-color: {$statecolor}"{/if}

执行此操作后,请删除此文件prestashop/cache/class_index.php

现在您的行的背景颜色为返回状态。