vQmod (全称 Virtual Quick Mod),是 OpenCart (PHP 开源电商网站系统)上一个可以以虚拟方式修改原文件内容而设计的一个插件系统。它的使用很简单,我们先用 xml 的方式编写出要搜索的代码行,和要被替换的新代码,然后 vQmod 会按照这些规则将系统对应的原始文件动态地代码,并保存为缓存文件。然后系统将会执行这些缓存文件,而不是原来的原始文件。这样的好处是我们不用直接在原始代码上直接做更改。这样我们后期升级 OpenCart 版本时,就不用再修改一次原文件了。

为什么我们需要 vQmod?

我们知道开源系统是一个不断升级的过程。OpenCart 的发展非常快,不定期的就会有新的版本出现。相信大部分的 OpenCart 用户都或多或少需要对原系统的文件做一些定制。不可避免地需要修改一些 php 和 tpl 文件。如果没有一个虚拟修改系统,我们对原文件的修改在我们升级了或者重新安装了 OpenCart 后将全部丢失,然后又需要把原来做的修改工作在新的版本上再修改一遍。这就成了一个硬伤。

对于第三方插件开发者来说,如果没有 vQmod,插件将没办法动态修改原始文件。必须要手动去修改内容,这会使得插件的开发和安装都非常不方便。毫无疑问地说,OpenCart 的成功 vQmod 功不可没。vQmod 的出现使得插件开发的二次开发变得很容易。开发者可以开发出功能千奇百怪的插件。而用户也可以很方便地安装和升级这些插件。

vQmod 功能特点

  • 不直接更改源文件内容。所有的的修改都是“虚拟”的,正如 vQmod 名称里的 Virtual;
  • 源文件在被执行时被动态修改,并使用原文件名生成新的缓存文件;
  • 将 xml 放在 vqmod/xml 下即可生效,移除文件即恢复原文件;
  • 不用担心升级系统源文件后丢失定制的代码;
  • 安装方便、编写 xml 规则简单易学;
  • 支付替换、前插入、后插入、行内替换等多种修改方式;
  • 支持使用正则表态式搜索和替换内容;
  • 支持搜索替换偏移量;

相信大家对 vQmod 的使用已经有了一个了解,下面就给大家分享下我们应该如何安装 vQmod呢?

vQmod 支持 OpenCart 1.4.x、OpenCart 1.5.x 和 OpenCart 2.x

自动安装 vQmod

  1. 首先下载 vQmod 安装包。需要注意的是,vQmod 不单支持 OpenCart,下载时请下载 OpenCart 专用的版本(Github 下载)或 国内镜像下载
  2. 将下载的 zip 安装包解压,然后使用 FTP 工具将 vqmod 文件夹上传至 OpenCart 网站的根目录下;
  3. 修改权限。需要将 vqmod 文件夹和 vqmod/vqcache 文件夹修改为 755 或 777 权限;同时,要将根目录的 config.php 和 admin/config.php 同样有 755 或 777权限(先试 755,如果不行再改为 777)。
  4. 然后直接在浏览器中访问 vqmod/install 执行安装(http://www.xxx.com/vqmod/install);
  5. 如果安装成功,可看到成功消息,如果失败,回到第 3 步修改权限再重复第 4 步安装;

如果安装成功的话,你会在 vqmod/vqcache 下面看到一个新生成的文件。此时你可以上传你的 xml 文件,然后浏览网站看是否有缓存文件在 vqcache 下生成(所有 vQmod 生成的缓存都会保存在 vqmod/vqcache 目录下)。

需要说明的是,多次访问 vqmod/install 不会有任何危险。如果安装失败,在修改文件和文件夹权限后,可放心多次访问。并且 install 目录不要删除。

好了,现在 vQmod 就安装好了,是不是很简单?

OpenCart 如何安装 vQmod 教程的更多相关文章

  1. IntelliJ IDEA - 热部署插件JRebel 安装使用教程

    IntelliJ IDEA - JRebel 安装使用教程 JRebel 能做什么? JRebel 是一款热部署插件.当你的 Java-web 项目在 tomcat 中 run/debug 的时候 , ...

  2. Zabbix3.x安装图解教程

    准备知识: Zabbix3.x比较之前的2.0界面有了很大的变化,但是安装部署过程与2.x基本完全一样. 1.Zabbix2.x安装图解教程 http://www.osyunwei.com/archi ...

  3. VMware vCenter Server安装图解教程

    安装说明: 1.安装VMware vCenter Server的主机操作系统为:Windows Server 2008 R2 2.在Windows Server 2008 R2中需要预先安装好SQL ...

  4. 在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程

    在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程 本教程提供PDF格式下载: 在RedHat.Enterprise.Linux_v6.3系统中安装Ora ...

  5. Zabbix安装图解教程

    说明: 操作系统:CentOS IP地址:192.168.21.127 Web环境:Nginx+MySQL+PHP zabbix版本:Zabbix 2.2 LTS 备注:Linux下安装zabbix需 ...

  6. MapGIS6.7安装图文教程(完美破解)

    mapgis安装比较简单,主要注意在安装的时候,先打开软件狗,然后再进行软件安装,一般就不会照成其他安装失败的现象,有时候安装之前没有打开软件狗也安装成功了,也有这情况,不过软件使用也需要软件狗的支持 ...

  7. VirtualBox安装Ubuntu教程

    1.VirtualBox虚拟机安装,及VirtualBox安装Ubuntu教程VirtualBox版本为VirtualBox-4.3.12-93733-Win.exe,Ubuntu版本为ubuntu- ...

  8. MySQL5.0版本的安装图解教程

    MySQL5.0版本的安装图解教程是给新手学习的,当前mysql5.0.96是最新的稳定版本. mysql 下载地址 http://www.jb51.net/softs/2193.html 下面的是M ...

  9. ENVI5.1安装破解教程

    原文地址:  ENVI5.1安装破解_百度经验 http://jingyan.baidu.com/article/020278118b5ded1bcd9ce57a.html   ENVI5.1_x86 ...

随机推荐

  1. MyBatis源码分析(各组件关系+底层原理

    MyBatis源码分析MyBatis流程图 下面将结合代码具体分析. MyBatis具体代码分析 SqlSessionFactoryBuilder根据XML文件流,或者Configuration类实例 ...

  2. 路飞学城Python-Day79

    27-url控制器之path方法 由于基于re_path的路径编写方式是重复性高的编写url,如果规则改变了,则对应的要去修改很多url,这样是很不方便的 所以采用Django2.0的path去编写u ...

  3. 算法8-----Different Ways to Add Parentheses(不同括号结果)

    题目: Given a string of numbers and operators, return all possible results from computing all the diff ...

  4. Vue学习之路第十二篇:为页面元素设置内联样式

    1.有了上一篇的基础,接下来理解内联样式的设置会更简单一点,先看正常的css内联样式: <dvi id="app"> <p style="font-si ...

  5. 工作中常见的Git本地分支与远程分支同步场景

    Git 是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理.   一直以来本人使用 Git 处理分支都是现用现查,一是因为怕出错,二还是因为懒,作为一名四年开发经验的前端 ...

  6. Spring中的容器

    1.Spring容器 Spring容器最基本的接口就是BeanFactory, 负责配置,创建和管理bean.我们通常不直接使用BeanFactory接口,而是使用其子接口ApplicationCon ...

  7. jenkins 自动化部署

    Execute shell Command BUILD_ID=DONTKILLMEif [ ! -d "/usr/jenkins/$JOB_NAME" ]; then mkdir ...

  8. selenium+java解决富文本输入

    方法一: Actions actions = new Actions(driver); actions.sendKeys(Keys.TAB).perform(); //鼠标通过tab要先移到富文本框中 ...

  9. nmon和nmon analyser的下载和使用

    nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能,AIX是IBM的一个操作系统,相比于Linux,使用范围不算很广,因此我们重点讲下Linux下的nmon应 用.首先 ...

  10. js cookie 设置

    (function () { function getCookie(name) { var start = document.cookie.indexOf(name + "="); ...