Я знаю, что уже поздно, но может быть полезно для будущих работ.
Просто вы можете добавить функцию к вашему /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>
Вы можете поместить этот код в имени файла your_own_chosen_name.xml
и поместить его в /vqmod/xml
.
Теперь для использования, например, shipping/flat
модель каталога каталога в администрации администратора:
$this->load->catalogModel('shipping/flat');