OCMOD замена ряда строк
В OCMOD для замены нескольких строк используйте параметр offset, в котором указываете сколько строк надо заменить, начиная от найденной. Кстати, offset может быть и отрицательным числом, что добавяет удобство в поиске и замене куска кода.
<?xml version="1.0" encoding="utf-8"?> <modification> <name>Modification Default</name> <version>1.0</version> <author>OpenCart Ltd</author> <link>http://www.opencart.com</link> <file path="catalog/controller/common/home.php"> <operation> <search trim="true|false"><![CDATA[ $data['column_left'] = $this->load->controller('common/column_left'); ]]></search> <add position="Replace|Before|After" trim="true|false" offset="2"><![CDATA[ test123 ]]></add> </operation> </file> </modification>
<add position="replace" offset="количество строк">
Это оказывается необходимо, когда вы, например, переписали уже существующую функцию по своему и хотите заменить оригинальную функцию на эту свою собственную. Вот и используем для этого offset, затирая код той функции и насаждая свой.
ую функцию на эту свою собственную. Вот и используем для этого offset, затирая код той функции и насаждая свой.