Добрый день, может быть кто сталкивался не могу найти причину, в xml файле указанны правильные пути до фалов с которыми нужно провести изменения, НО! он эти файлы не кэширует вообще, я беру файл кэш загружаю и начинаю сверять оригинальные строки файла, те на которые он должен был их поменять нету, в фале присутствуют только оригинальные строки с которыми как раз и должны были произойти изменения.
Логи молчат, права выставлены. Как раз оригинал и сверяю, почему то некоторые файли меняются некоторые нет, у меня предположения может это происходит из за того что несколько файлов xml пытаются менять оригинальные файлы, но дело в том что строчки для замены не пересекаются с другими.
product.tpl Вот то что в xml PHP: <file name="catalog/view/theme/tuning/template/product/product.tpl"> <operation> <search position="after"> <![CDATA[ <?php echo $header; ?> ]]></search> <add> <![CDATA[ <?php if ($this->config->get('enabletdrating')==1) { ?> <link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/tdrating/tdrating.jquery.css" /> <script type="text/javascript" src="catalog/view/javascript/jquery/tdrating/tdrating.jquery.js"></script> <?php } ?> ]]></add> </operation> <operation> <search position="replace"> <![CDATA[<img src="catalog/view/theme/default/image/stars-<?php echo $rating; ?>.png" alt="<?php echo $reviews; ?>" />]]></search> <add> <![CDATA[ <?php if (!$tdrating) { ?> <div><img src="catalog/view/theme/default/image/stars-<?php echo $rating; ?>.png" alt="<?php echo $rating; ?>" /> <?php } ?> ]]></add> </operation> вот что получаю в кэше: PHP: <?php echo $header; ?><?php echo $column_left; ?><?php echo $column_right; ?> <div itemscope itemtype="http://schema.org/Product" id="content"> <?php echo $content_top; ?> <div class="breadcrumb"> <?php foreach ($breadcrumbs as $breadcrumb) { ?> <?php echo $breadcrumb['separator']; ?> <span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"> <a href="<?php echo $breadcrumb['href']; ?>" itemprop="url"><span itemprop="title"><?php echo $breadcrumb['text']; ?></span></a> </span> <?php } ?>
Теоретически должно бы работать. Давайте попробуйте вот этот блок Код: <operation> <search position="after"> <![CDATA[ <?php echo $header; ?> ]]></search> <add> <![CDATA[ <?php if ($this->config->get('enabletdrating')==1) { ?> <link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/tdrating/tdrating.jquery.css" /> <script type="text/javascript" src="catalog/view/javascript/jquery/tdrating/tdrating.jquery.js"></script> <?php } ?> ]]></add> </operation> Заменить на Код: <operation> <search position="replace"> <![CDATA[<?php echo $header; ?>]]></search> <add> <![CDATA[ <?php echo $header; ?> <?php if ($this->config->get('enabletdrating')==1) { ?> <link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/tdrating/tdrating.jquery.css" /> <script type="text/javascript" src="catalog/view/javascript/jquery/tdrating/tdrating.jquery.js"></script> <?php } ?> ]]></add> </operation> Кстати, а вот эта строка <img src="catalog/view/theme/default/image/stars-<?php echo $rating; ?>.png" alt="<?php echo $reviews; ?>" есть в вашем файле product.tpl? Возможно нет какой-то строки, к которой привязывается vqmod, и поэтому оно абортится (отменяются внесённые изменения).
Он абортит все что ли изменения не взирая есть они или нет? я просто принцип этого кэширования до конца не понимаю
Я точно не помню, как оно работает по-умолчанию. Если указать <operation error="skip"> - оно скипнет (пропустит) именно эту замену, если не найдёт привязку. Если указать <operation error="abort"> - абортнет все изменения, вносимые в этот файл. А вот как работает по-умолчанию, когда не указано ни скип, ни аборт - я не помню. По-моему, таки абортит.
Я так понял для себя что изменённые файлы оно помещает в vqcache, которые уже являются рабочие для кмс, после чего в системе меняются пути к файлу.
Ну поставьте вместе <operation> - <operation error="skip">. Тогда точно не будет весь абортить. В вашем случае похоже, что что-то не находится и абортит весь файл. Правда, странно, что в логе ошибок нет ничего. Или вы не используете vqmod-менеджер? По большому счёту, нет ничего плохого, когда абортится весь файл. Это лучше, чем втихаря пропустит ошибку и будет работать с глюками.
Чудес не бывает. Что-то таки не так. Попробуйте изменения добавлять по-одному (или сделайте, как я писал: <operation error="skip">)
А версия модуля какая?Меня тоже сомнения терзают, почему в логах пусто....У меня если абортило или что еще, обязательно все в логах отображало.