5分鐘瞭解VQMOD參數設定

5分鐘瞭解VQMOD參數設定

培育能力的事必須不斷地去做,又必須隨時改善學習方法,提高學習效率,才會成功。 - 葉聖陶


vQMOD 目錄

vqmod/xml
//放VQMOD插件的XML檔

vqmod/logs
//vqmod日誌目錄

vqmod/vqcache
//vqmod緩存目錄 自己產生改變後的檔案

vqmod/checked.cache
//vqmod用於保存已緩存的文件名

vqmod/mods.cache
//vqmod用於保存緩存文件的序列化源碼


vQMOD 參數

replace :為在搜尋標籤中的資料取代為add標籤上的資料。(預設)
before :為在搜尋標籤中的資料之前插入add標籤上的資料。
after :為在搜尋標籤中的資料之後插入add標籤上的資料。
top :為在文件頂部插入add標籤上的資料。搜尋資料會被忽略。
bottom :為在文件底部插入add標籤上的資料。搜尋資料會被忽略。
all :將完全以add標籤上的資料取代所有資料。搜尋資料會被忽略。

offset屬性

offset屬性:要工作的位置
若搜尋位置為before 及 offset 3,其會放置add標籤上的資料在搜尋前3行
若搜尋位置為after 及 offset 3,其會放置add標籤上的資料在搜尋後3行
若搜尋位置為replace 及 offset 3,其會從搜尋行中移除碼及下一個3行以add標籤上的資料取代
若搜尋位置為top 及 offset 3,其會在文件的最前3行下面放置add標籤上的資料
若搜尋位置為bottom 及 offset 3,其會在文件的最後3行前面放置add標籤上的資料

index屬性

index屬性:搜尋標籤中,將要指定動作的例項標示
若搜尋字串為”echo”,在文件中有5個echo值,而只想取代第1和第3的值,可使用index=”1,3″來標示
多個實例是逗號來分隔,啟始值為”1″
遺漏或設置為false則取代所有例項。(預設)

regex屬性

regex屬性:用於指定是否要以正規表示法來搜尋
若為 true,則是以有效的正規表示法模式來搜尋
遺漏或設置為false則是使用正常字串來搜尋(預設)

trim屬性

trim屬性:設置為 true / false,將修剪空白和換行
遺漏或設置為true,則代表要修剪。(預設為 true)


參數範例

1
2
3
4
<search position=”replace” regex=”true”>
/*為在搜尋標籤中的資料取代 且用正規表示法模式來搜尋*/
<search position=”after” offset=”6″>
/*after: 在尋找到的字串後面增加;before:在尋找到的字串前面增加;replace:替換尋找到的字串*/

如要在一個文件中的某句前加入一段代碼,但該文件中搜索到多處有這句,可以使用index=「5」這樣的方式來指定要在第五處的前面加入。例如:

1
2
<search position=”before” index=”2,4,6″><![CDATA[xxxxxxxxxxxx]]></search>
即在文件中搜索xxxxxxxxxxxx,在搜索到的第2,4,6處改行前面加入。

vQMOD 參數詳細

modification
這是檔案最高級別,也只有一個。

modification / id
這是模組的名稱和描述。
格式:文字形式。(信息)

modification / version
這是模組的版本。
格式:數字或Decimal (1.0.0)

modification / vqmver
這是最短VirtualQMod所需版本的腳本。
格式:數字或Decimal (1.0.0)

modification / author
這是模組的作者。
格式:文字形式。(信息)

modification / file
此為要變更的檔案名稱

modification / file / operation / search
這為所需操作的第一步。
只能搜尋單一行。但可使用offset 及 index屬性來協助

<![CDATA[ ]]>
此被稱為CDATA tags其用來指定要添加代碼的文件中的原代碼


vQMOD腳本示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?xml version=「1.0」 encoding=「UTF-8?>
<modification>
<id>vQmod File ID</id>
<version>1.0.0</version> —> vQmod 腳本的版本聲明
<vqmver required=「true」>1.0.8</vqmver> —> 最低的vQmod 版本要求
<author>Suoling.net</author>—> vQmod 腳本的作者

<file name=「catalog/controller/product/category.php 「> —> 聲明要修改的文件

<operation>
<search position=「replace」><![CDATA[
搜索OpenCart核心程序中要修改的文件中的原代碼
]]></search>
<add><![CDATA[
替換代碼
]]></add>
</operation>

<operation>
<search position=「after」><![CDATA[
搜索OpenCart核心程序中要添加代碼的文件中的原代碼
]]></search>
<add><![CDATA[
附加在:搜索OpenCart核心程序中要添加代碼的文件中的原代碼之後的代碼(添加在原代碼之後)
]]></add>
</operation>

<operation>
<search position=「before」><![CDATA[
搜索OpenCart核心程序中要添加代碼的文件中的原代碼
]]></search>
<add><![CDATA[
附加在:搜索OpenCart核心程序中要添加代碼的文件中的原代碼之後的代碼(添加在原代碼之前)
]]></add>
</operation>

</file>
</modification>