我有一个放在Opencart根目录(2.0.1.1)中的php文件。
我想用OC方法添加一种新语言。
根据 admin / index.php 和模型|| controller / localization / language.php 我将调整
require_once($root . 'admin/config.php');
require_once($root . 'system/startup.php');
// Registry
$registry = new Registry();
// Loader
$loader = new Loader($registry);
$registry->set('load', $loader);
// Config
$config = new Config();
$registry->set('config', $config);
// Database
$db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE, DB_PORT);
$registry->set('db', $db);
// Settings
$query = $db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE store_id = '0'");
foreach ($query->rows as $setting) {
if (!$setting['serialized']) {
$config->set($setting['key'], $setting['value']);
} else {
$config->set($setting['key'], json_decode($setting['value'], true));
}
}
//STARTING NOW, $langu instead of $this
$data = array("name"=>"slovak","code"=>"sk","lokal"=>"sk-SK",..);
$langu = new Language();
$langu->load->model('localisation/language');
$langu->model_localisation_language->addLanguage($data);
这不起作用。它导致
注意:使用未定义的常量DB_PORT - 假设' DB_PORT'在 /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php 的 在线 21
通知:未定义的属性: 语言:: $加载 /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php 的 在线 108
致命错误:致电会员 函数language()在非对象中 /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php 的 在线 108
致命错误发生在 $ langu-> load->模型('本地化/语言');
答案 0 :(得分:0)
Language类有一个加载函数,但你正在使用它,就像它是Language类的属性一样。您似乎正在尝试使用Controller类使用的编码样式。