Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означават.

CTAH

Well-Known Member
VirtualQMod, или "vQmod" е нововъведение в сферата на разработките на PHP модли.

Принципно с VQmod се правят промени в даден файл в движение по време на повикване на nclude(), include_once(), require(),

require_once(). Всички промени са извършеват във временен файл, а той вече sе влючва вместо на действителния файл.
Това дава невероятни възможности. Например, можете да генерирате в движение всякакво меню или да задълбаете в
дълбините на ядрото без да се боите че нищо от повреди.Разбира се, производителността на такава система е по-малка от
класическата. Но за бърза разработка няма нищо по-добро. Освен това, vQmod можете да се използвате по време на
разработването, като средство за тестване, а след завършването и да нанесете промените в самите файлове.

Инсталиране

И така, започваме. Инсталирането на vQmod в OpenCart може да бъде ръчно или автоматично. Нека да започнем с
автоматичното.

1) Свалете vQmod до официалниа сайт
2) Разархивирайте и копирайте папката vqmod в главната директория на магазина.
3) Даваме права за запис (777) на папките:
/vqmod
/vqmod/vqcache
4) Понякога трябва да зададете права за писане на / index.php и / admin/ index.php
5) Отваряме линка http://vashiasait.com/vqmod/install
6)Трябва да видите съобщение за успешна инсталация. С това автоматична инсталация е завършена.

Изтриването на папката install не е необходимо, то не е опасно. Инсталирането VQmod ще трябва да бъде рестартирано след

всеки ъпгрейд OpenCart.

Използване

vQmod скриптовете се базират на систематана .xml файлове, която първоначално е била построена на SMF (System

Management Service) методите за модификация.ова е една проста концепция, която е на разположение за употреба. Все пак,
не забравяйте, че за разлика от SMF, vQmod е нещо виртуални което не засяга реалните файлове.

Поставете свалените .Xml файлове в директорията / vqmod / XML / на сайта.

И това е! Ако няма промени по сайта тогава може XML файла да е предназначен за различна версия на OpenCart, просто да
го изтриете.


Нека видим какви таговете има .xml и какво означават.

<modification> - Най-важното родител, може да бъде само един в целия файл
<id> - Името и идентификатора на модула. Може да е произволен текст.
<version> -- версия на модификацията в формат "1.0.0"
<vqmver> минималната версия на vQmod във формат "1.0.0"
<author> - име на автора
<file> - името на фаила за промяна. Задава се от директорията на сайта, където седи index.php. Например

catalog/controller/product/product.php. Този таг може да се използва няколко пъти в всички . Xml файове.
<operation> - Това е wrapper /обертаг/ на конкретна операция определена в тага <file>. Атрибта "errors" може да има 2

значения "skip"прескачане на грешката и да продължиработа на модула) и "abort"(rollback all changes)
<search> Първа стъпка за испълнение на модификацията.Може да намери само един ред.Автоматично прекъсва

интервалите и новите редове.Този етикет може да бъде само един по отношение на етикет<operation> . Препоръчително е да
използвате CDATA за край на кода. Задължителен атрибут е "position" може да взема стойности before, after, replace, top,

bottom и all.

* replace - Заменя целия код оказан в <search> с кода от тага <add>. Използва се по подразбиране
* before - поставя данните от<add> пред данните от <search>
* after - поставя данните от<add> след данните от <search>
* top - поставя данните от<add> в самото начало на файла данните от <search> ще бъдат игнорирани.
* bottom - поставя данните от<add> в края на файла данните от <search> ще бъдат игнорирани.
* all - заменя всички данни с данните от <add> данните от <search> ще бъдат игнорирани.


Незадължителния атрибут "offset" се използва за работа с позицията на кода за вмъкване.

Ако в "position" поставено "before" и "offset" е поставено 3, тогава данните от <add> ще бъдат вмъкнати на 3 реда до
желаната данни
Ако в "position" поставено "after" и "offset" е поставено 3 тогава данните от <add> ще бъдат вмъкнати на 3 реда след

желаните данни
Ако в "position" поставено "replace" и "offset" е поставено 3 тогава желаните данни ще бъдат заменени с данните от <add>
Ако в "position" поставено "top" и "offset" е поставено 3 данните ще се вмъкват на три реда от началото на файла
Ако в "position" поставено "bottom" и "offset" е поставено 3 данните ще се вмъкват на три линии след края на файла

Не задължителния атрибут - "index" е за да укаже кои от намерените от <search> части от кода да бъдат взети под внимание.
Ако търсим "echo" и са намерени 5 "echo" но на нас ни трябват само 1 и 3 тогава можем да използваме index="1,3". Запетая
е за определяне на няколко елемента. За работа с всички елементи е необходимо да се използва index="false".
Не задължителния атрибут "regex". се поставя в true, ако търсенето се изпълнена с помощта на регулярни изрази.а да се

извърши нормално търсене, поставяме false(по подразбиране)
Не задължителния атрибут - "trim". Ако е необходимо да се търси без рязане и интервали поставяте false. По подразбиране,
интервалите са изрязани и е зададено да true. <add> Това е вторият етап от нашата работа с файла.Тя може да се състои от
няколко реда. Задължително само един на една операция операция. Трябва да затворите кода в CDATA.
Не задължителния атрибут - trim" Използва се също, както в търсенето, но по подразбиране е false.
<! [CDATA []]> - това sa CDATA XML таговете.Това означава, че данните в тях не трябва да се третират като XML.


vQmod прекрасно нещо, но не забравяйте, че когато го използвате, вие губите много от производителността. И накрая на
разработката може да се наложи да пренесете част от измененията в реалните файлове.

(с) cartopen.ru
 
Чак след като видях примерите ми стана ясно за какво става дума:

https://code.google.com/p/vqmod/wiki/Examples

Честно казано това е безумно. Заместването на един скриптов език с друг мета език. Ако някой разбира от php просто ще си пише str_replace/preg_replace. Вместо xml, който първо се парсва, второ по неговото описание се парсва друг файл.

OpenCart е достатъчно тежка боза, че да се сбозява още с подобно нещо.

Идеята ми харесва, но решението с xml файловете не.
 
От: Re: Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означав

Супер е статията.


Що ми прилича на гошов превод, с копи/пейст технология?
 
От: Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означават.

vQmod e доста полезен инструмент, много ми харесва работата с него в opencart системите.
 
От: Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означават.

Бихте ли ми помогнали. Как да обновя инсталацията на Vqmod след ъпдейта на OC ?
 
От: Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означават.

1.Изтеглете най-новата версия, която има "OpenCart" в заглавието от http://code.google.com/p/vqmod/downloads/list
2. Разархивирайте и използвайки FTP, качете папката vqmod в главната директория на вашия OpenCart магазин.
3. Заредете в браузъра си линка http://vashiasait.com/vqmod/install

Инсталирането VQmod трябва да бъде рестартирано след всеки ъпгрейд на OpenCart.
 
От: Подробна статия за vqmod. Какво, как и защо. Какви са таговете, какво означават.

Аз току що направих тези стъпки но не качих папката / с новите файлове / в главната директория, а във вече създадената vqmode и им дадох презаписване.
Аз трябва да преинсталирам vqmode, защото си ъпдейтнах OC.
 

Горе