我想在opencart管理员订单页面上添加自定义字段.
oc_order.order_id
= oc_custom_table.order_id
然后显示oc_custom_table.comment
在管理员订单列表中.我在admin_model_order.php页面中添加了一个自定义函数,其中包含所有查询.
public function getCustomTable($order_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "custom_table WHERE order_id = '" . (int)$order_id . "'"); return $query->rows; }
控制器页面非常拥挤,我不知道在哪里添加变量,因此它显示特定于订单的信息.
在语言中,我只需定义语言变量,如$ _text_custom_variable ='test'; 对?和模板文件,我只选择一个显示值的地方.
我正在使用Opencart 2.0版本.
[编辑]:好的,所以我能够通过引用其中一个vqmod来编写VQMOD,但仍然无法提取数据.我收到错误Trying to get property of non-object
我尝试首先在订单列表中添加数据.
<!--Template File -->
<file name="admin/view/template/sale/order_list.tpl">
<operation>
<search position="before"><![CDATA[
<td class="text-left"><?php echo $order['date_added']; ?></td>
]]></search>
<add><![CDATA[
<td class="text-right"><?php echo 'CO'. $order['custom_orders'];?></td>
]]></add>
</operation>
<operation>
<search position="before"><![CDATA[
<td …
Run Code Online (Sandbox Code Playgroud) 我想在opencart 2.0.3.1中使用ocmode添加脚本.
<?xml version="1.0" encoding="utf-8"?>
<modification>
<name>Save and Continue Button in Settings-Category-Product-All Module</name>
<code>save_continue</code>
<version>2.0.3.1</version>
<author>CBA</author>
<link>http://example.com</link>
<file path="admin/view/template/module/account.tpl">
<operation>
<search index='1' trim='true'><![CDATA[
</form>
]]></search>
<add position="after" trim="true"><![CDATA[
<script>var user_id = $('form').attr('id');
$('[type="submit"]').attr('form',user_id);
$('.fa-reply').after('<button type="button" data-toggle="tooltip" title="Save and Continue" class="btn btn-default" onclick="$(my_id).attr('action', '<?php echo $action; ?>&save_continue=1').submit()"><i class="fa fa-repeat"></i></button>');
</script>
]]></add>
</operation>
Run Code Online (Sandbox Code Playgroud)
现在我将此文件保存为test.ocmode.xml并从Extension Installer上传.但不行
我按照以下步骤操作,但仍然收到权限被拒绝错误。我使用的是opencart 2.x
1)在admin/controller/custom/helloworld.php中创建一个新文件
您的文件名和控制器名称的降序顺序应该相同:
你好世界.php
<?
class ControllerCustomHelloWorld extends Controller{
public function index(){
// VARS
$template="custom/hello.tpl"; // .tpl location and file
$this->load->model('custom/hello');
$this->template = ''.$template.'';
$this->children = array(
'common/header',
'common/footer'
);
$this->response->setOutput($this->render());
}
}
?>
Run Code Online (Sandbox Code Playgroud)
2)在admin/view/template/custom/hello.tpl中创建一个新文件
Hello.tpl
<?php echo $header; ?>
<div id="content">
<h1>HelloWorld</h1>
<?php
echo 'I can also run PHP too!';
?>
</div>
<?php echo $footer; ?>
Run Code Online (Sandbox Code Playgroud)
3)在admin/model/custom/hello.php中创建一个新文件
<?php
class ModelCustomHello extends Model {
public function HellWorld() {
$sql = "SELECT x FROM `" . DB_PREFIX . "y`)";
$implode …
Run Code Online (Sandbox Code Playgroud) 我想在主菜单中点击一个按钮同时在一个页面中显示所有产品,还需要在主菜单中显示类别...
预先感谢...!
我是 OpenCart OCMOD 和 VQMOD 系统的新手。所以我需要一些帮助。我的问题是。
据说OCMOD是OC2+默认系统。也有人说我们必须自己编写OCMOD。这是什么意思?如果 OCMOD 带有 OC2+。那我们为什么要自己写呢?如果 OCMOD 是 OC+2 的默认部分。那么我们在OC 3.0.2.0中在哪里可以找到它呢?
如何在不影响核心文件的情况下使用OCMOD在OpenCart中进行更改?
在安装新的 OCMOD.zip 或 OCMOD.xml 和 VQMOD.zip 或 VQMOD.xml 后,如何在不删除这些更改的影响的情况下,在 OpenCart 核心文件中不安装 OCMOD 或 VQMOD 的情况下删除已经进行的更改。
如何使用 OCMOD 或 VQMOD 在升级版本中恢复在 OpenCart 中所做的更改?
如果安装了新的 OCMOD 或 VQMOD,它是否会删除 OpenCart 核心文件中已经进行的所有更改?
真的需要你的帮助来完成这项工作.我正在使用OpenCart 2.0.3.1,我希望侧边栏类别模块默认显示所有类别的所有子类别.目前,模块仅在您单击某个类别时显示子类别,并且仅显示该类别的子类别.你可以看看它的实际效果:
http://demo.opencart.com/index.php?route=product/category&path=20
(这是左侧边栏上的模块)
我只是使用默认模块.我尝试了许多不同的方法来完成这项工作,没有任何帮助实现这一目标.我知道我需要编辑这两个文件:catalog/controller/module/category.php
<?php
class ControllerModuleCategory extends Controller {
public function index() {
$this->load->language('module/category');
$data['heading_title'] = $this->language->get('heading_title');
if (isset($this->request->get['path'])) {
$parts = explode('_', (string)$this->request->get['path']);
} else {
$parts = array();
}
if (isset($parts[0])) {
$data['category_id'] = $parts[0];
} else {
$data['category_id'] = 0;
}
if (isset($parts[1])) {
$data['child_id'] = $parts[1];
} else {
$data['child_id'] = 0;
}
$this->load->model('catalog/category');
$this->load->model('catalog/product');
$data['categories'] = array();
$categories = $this->model_catalog_category->getCategories(0);
foreach ($categories as $category) {
$children_data = array();
if ($category['category_id'] == $data['category_id']) { …
Run Code Online (Sandbox Code Playgroud)我对 OpenCart 相当陌生,但我了解 PHP 和 MVC 平台。我想为 OpenCart 制作一个导入器,以从 CSV 导入一些产品及其照片。
但是,过去 2 个小时我一直在努力尝试在管理员中查看我的模块。我创建了一个admin/controller/module/custom_importer.php
:
<?php
class ControllerModuleCustomImporter extends Controller {
}
Run Code Online (Sandbox Code Playgroud)
和一个语言文件admin/language/en-gb/module/custom_importer.php
:
$_['heading_title'] = 'Custom Importer';
Run Code Online (Sandbox Code Playgroud)
但是,在我的管理员中,我似乎根本找不到该模块。它是最简单、最空的模块。我究竟做错了什么?
Opencart:版本 3.0.2.0
每次我安装新的扩展,我都会收到此错误:
错误:您无权访问此页面,请咨询您的系统管理员.
我已经进入系统>用户组,并添加新扩展模块的权限(访问权限和修改权限),但没有运气.
我试图安装"2checkout""Ajax Quick CheckOut""并得到同样的错误.