从管理端使用前端模型功能

Cha*_*h M 0 php opencart

我正在开发 opencart版本 1.5.1.3。在一个阶段,我想在管理端控制器文件中使用前端模型功能。

谁能帮帮我吗。?将不胜感激。

Hos*_*ebi 5

我知道现在很晚了,但可能对未来的工作有用。
只需将一个函数添加到您的/system/engine/loader.php. 但是您可能知道直接这样做可能会在将来伤害您。所以通过vqmod. 我会告诉你如何:

<?xml version="1.0" encoding="UTF-8"?>
<modification>
    <id>Loadin Catalog Models</id>
    <version>1.0</version>
    <vqmver>2.X</vqmver>
    <author>Hossein Shahsahebi</author>  
    <file name="system/engine/loader.php">
        <operation info="Add function which I could access catalog models from admin">
            <search position="after"><![CDATA[
                 protected $registry;
            ]]></search>
            <add><![CDATA[
                public function catalogModel($model) {
                    $file = DIR_CATALOG . 'model/' . $model . '.php';
                    $class = 'Model' . preg_replace('/[^a-zA-Z0-9]/', '', $model);

                    if (file_exists($file)) {
                       include_once($file);

                       $this->registry->set('model_' . str_replace('/', '_', $model), new $class($this->registry));
                    } else {
                       trigger_error('Error: Could not load model ' . $model . '!');
                       exit();               
                    }
                }
            ]]></add>
        </operation>
    </file>
</modification>  
Run Code Online (Sandbox Code Playgroud)

您可以将此代码放在文件名中your_own_chosen_name.xml并将其放在/vqmod/xml.
现在shipping/flat在管理员中使用例如目录目录模型,请使用:

$this->load->catalogModel('shipping/flat');
Run Code Online (Sandbox Code Playgroud)