Jump to content
Cosmonaut

Как работают установщики модификаторов?

Recommended Posts

В общем ситуэшн следующая, ставлю я модификатор, проверяю, пашет. НО! Есть большое НО!
Решил я чекнуть install.xml, что он там вообще творит, что и как и куда ставит, и что на что меняет.

Данный код, я так понимаю, выполняет вставку кода в определённый файл и в определённые строки(а если быть точнее в нижепреведённом случае, до определённого кода), если это не так, то я дЭбил.

Значит проверяю я после установки куды воткнулся данный код, в ориджинал Опене, что бы не нарукожопить Прем шаблоне, и я его тупо не могу найти, хоть убейся, ни через поиск, ни глазками, меня этот OpenCart до белой горячки доведёт.... Шо за магия? Кто объяснит?

<file path="catalog/view/theme/*/template/product/product.twig">
      <operation error="skip">
        <search index="0" trim="true"><![CDATA[{% if review_status %}]]></search>
          <add position="before"><![CDATA[
            {% if downloads %}
            <li><a href="#tab-documentation" data-toggle="tab">{{ tab_documentation }}</a></li>
            {% endif %}        
        ]]>
          </add>
    </operation>
      <operation error="skip">
        <search index="1" trim="true"><![CDATA[{% if review_status %}]]></search>
          <add position="before"><![CDATA[
            <div class="tab-pane tab-content" id="tab-documentation">
              {% if downloads %}
                <ul style="list-style:none;">
                  {% for download in downloads %}
                      <li><i class="{{ download.icon }}"></i> <a href="{{ download.href }}" title="{{ download.name }}" target="_blank">{{ download.name }}{{ download.size ? ' (' ~ download.size ~ ')':'' }}</a></li>
                  {% endfor %}        
                </ul>
              {% endif %}        
            </div>
        ]]>
          </add>
    </operation>    
  </file>

Share this post


Link to post
Share on other sites

в storage/modification создаются модифицированные файлы

исходники не перезаписываются

Share this post


Link to post
Share on other sites

если строчка определенной строки не нашлась то соответсвенно модифицированного файла не будет если больше никакой ocmod его модифицирует

будет работать исходник

 

Share this post


Link to post
Share on other sites
Posted (edited)
10 минут назад, ashap сказал:

если строчка определенной строки не нашлась то соответсвенно модифицированного файла не будет если больше никакой ocmod его модифицирует

будет работать исходник

 

т.е. по факту, если я своими кривыми рученками в исходники вставлю код по инструкции установщика, то есть шанс, что у меня всё заработает?

Спасибо тебе добрый человек за разъяснение, я думал уже дурку вызывать.....

И можно ли назвать ручные ковыряния в коде(Установку), "Оптимизацией", ведь по факту я избавлю от лишних файлов сайт, и обращений, или кол-во модификаторов с чистым кодом особо не сказывается на скорости работы сайта?

Edited by Cosmonaut

Share this post


Link to post
Share on other sites
14 минут назад, Cosmonaut сказал:

И можно ли назвать ручные ковыряния в коде(Установку), "Оптимизацией",

лучше использовать модификаторы. как минимум проще управлять, легче удалять, легче искать проблемы, фактически имея дефолтные файлы и возможность исключить любую модификацию, парой кнопок.

Share this post


Link to post
Share on other sites
17 минут назад, Cosmonaut сказал:

И можно ли назвать ручные ковыряния в коде(Установку), "Оптимизацией", ведь по факту я избавлю от лишних файлов сайт, и обращений, или кол-во модификаторов с чистым кодом особо не сказывается на скорости работы сайта?

Если поковыряться неаккуратно, то можно так "Избавить" и "Оптимизировать", что сайт вообще ляжет.

 

Share this post


Link to post
Share on other sites
2 минуты назад, anboza сказал:

лучше использовать модификаторы. как минимум проще управлять, легче удалять, легче искать проблемы, фактически имея дефолтные файлы и возможность исключить любую модификацию, парой кнопок.

 

Легче искать проблемы - когда у вас все внесено в файлы без модификаторов. Вы можете по коду в IDE отследить в чем дело, а так вам нужно шариться по файлам в поиске, какой же модуль добавляет этот кусок в модификатор.

Share this post


Link to post
Share on other sites
Только что, niger сказал:

Легче искать проблемы - когда у вас все внесено в файлы без модификаторов. Вы можете по коду в IDE отследить в чем дело, а так вам нужно шариться по файлам в поиске, какой же модуль добавляет этот кусок в модификатор

на вкус и цвет, фломастеры разные )))

 

Share this post


Link to post
Share on other sites
Posted (edited)
1 час назад, Cosmonaut сказал:

т.е. по факту, если я своими кривыми рученками в исходники вставлю код по инструкции установщика, то есть шанс, что у меня всё заработает?

Спасибо тебе добрый человек за разъяснение, я думал уже дурку вызывать.....

дурку придётся вызывать, если Вы вставите код в исходники, но НЕ обновите модификаторы. Без процедуры обновления кеша модификаторов изменения в исходниках НЕ применяться. Если не знать про эту магию, то про дурку не такая уж шутка...

если вносите правки в исходники, делайте комментарии и ведите журнал изменений.

Edited by florapraktik

Share this post


Link to post
Share on other sites
Posted (edited)
10 минут назад, anboza сказал:

на вкус и цвет, фломастеры разные )))

 

Мне кстати интересно, а XDebug как будет работать с этими модификаторами? Просто мой проект на опенкарте с модулями - не хочется заводиться на локалке никак. 

Не пробовали? Хочется протестить будет ли он по модификаторам шариться или заблудится?)

Edited by niger

Share this post


Link to post
Share on other sites
6 минут назад, niger сказал:

Мне кстати интересно, а XDebug как будет работать с этими модификаторами? Просто мой проект на опенкарте с модулями - не хочется заводиться на локалке никак. 

Не пробовали? Хочется протестить будет ли он по модификаторам шариться или заблудится?)

 

Не заблудится, там простой include или require_once. Xdebug/xhprof/tideways отлично работают.

  • +1 1

Share this post


Link to post
Share on other sites

Благодарю за советы!)

Делаю всё на тестовых перед заливкой на основной сайт, делаю бэкапы, так что за краш сайта я не беспокоюсь.

Для меня главное результат и хороший.

Share this post


Link to post
Share on other sites
2 часа назад, halfhope сказал:

 

Не заблудится, там простой include или require_once. Xdebug/xhprof/tideways отлично работают.

Спасибо, значит будет посмотреть. А то на других проектах  Xdebug очень помогает

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.