2014-10-13 11 views
5

Czy ktoś wdrożył OCMOD do rozwoju wtyczek w opencart 2.0? Czy potrzebujemy zainstalować VQMOD, aby wykonać OCMOD?Implementacja OCMOD OpenCart 2.0

Znalazłem https://github.com/opencart/opencart/wiki/Modification-System, ale nadal nie mogę uzyskać jasnego pomysłu.

Każda pomoc będzie naprawdę doceniana. Dzięki

+0

Zobacz poniższy link https://isenselabs.com/posts/opencart-2x-modification-system –

+0

Czy ktoś ma zaimplementowany OCMOD do rozwoju wtyczek w opencart 2.0? Czy musimy zainstalować VQMOD, aby wykonać OCMOD? –

Odpowiedz

5

OCMod jest w zasadzie biednym mężem VQMod. istnieje wiele brakujących cech, które nie są/nie będą w nim, które są w VQMod, z których największym jest możliwość dodawania treści przed/po określonym dopasowaniu liniowym i jako takie naprawdę zaleciłbym trzymanie się VQMod który działa dobrze (wersja 2.5 i wyżej)

+2

Zgodnie z [dokumentacją OCMod] (https://github.com/opencart/opencart/wiki/Modification-System) może dodać treść * przed * i * po * ... – shadyyx

+2

@shadyyx - Tak, bezpośrednio przed i po treści, nie w nowej linii przed/po bez konieczności perfekcyjnego dopasowania całej linii. Istnieją inne funkcje, takie jak indeks/offset, które nic nie robią lub nie działają w ten sam sposób. –

0

Próbowałem zainstalować dzisiaj OCMOD w wersji 2.0.1.0 OpenCart. Nie wymyśliłem tego, a fora i dokumentacja nie zapewniły odpowiedniej pomocy.

Podczas instalacji może być uszkodzony lub moje środowisko go bugging, VQMODs i OCMODs są oddzielnymi jednostkami i nie zależą od siebie nawzajem.

Na przykład VQMOD używa plików XML do przechowywania modyfikacji i buduje pamięć podręczną ze zmodyfikowanymi plikami rdzenia. OCMOD przechowuje zmiany kodu bezpośrednio w bazie danych bez zapisywania przesłanego XML i wydaje się budować pamięć podręczną stamtąd (mam nadzieję, że zrobi część pamięci podręcznej, nie znalazłem jeszcze dowodu).

kod dla OCMOD instalacja znajduje się w \ Admin \ kontroler \ rozszerzenie \ installer.php

public function xml() { 

Więc nie trzeba zadzierać z VQMOD dostać OCMOD pracy, chyba że masz stare i VQMODs nie chcesz ich ponownie załadować.

12

Nie, Nie trzeba instalować VQMOD, aby wykonać OCMOD. OCMOD działa niezależnie.

Musisz utworzyć plik ocmod xml z rozszerzeniem ".ocmod.xml", następnie możesz przesłać ten plik za pomocą "Extension Installer" z panelu administracyjnego opencart.

Musisz wyczyścić i odświeżyć pamięć podręczną modyfikacji, aby zaktualizować system i sprawić, by rozszerzenie działało. Możesz wyczyścić i odświeżyć za pomocą przycisków w prawym górnym rogu na stronie Rozszerzenie> Modyfikacja w panelu administracyjnym.

4

Użyłem ocmod i wypuściłem kilka darmowych rozszerzeń. VQMOD i OCMOD to dwie osobne rzeczy (jak już skomentowaliśmy). Obie nie będą się ze sobą ingerować. Możesz załadować skrypty ocmod .ocmod.xml z panelu administracyjnego (rozszerzenia i modyfikacje).


Sugestia jest nie inwestować zbyt dużo pracy teraz od ocmod jest wciąż nieco ograniczone i prawdopodobnie ulegnie zmianie w najbliższej przyszłości.

Kilka osób sugeruje, aby realizować się całkiem funkcjonalności vqmod i cały system/Metody te mogą się zmienić w najbliższej przyszłości https://github.com/opencart/opencart/issues/2045

ja osobiście wolę vqmod ponieważ rozwój może być szybszy i można edytować xml w locie i odśwież przeglądarkę. Zrobiłem 3 różne vqmods w około godzinę, podczas gdy w ocmod spędziłem ten sam czas tylko po to, aby przesłać/edytować/usunąć (3) modyfikacje z różnymi znacznikami (wymagane przez ocmod).

Buforowanie w ocmod wydaje się wolniejsze w moim systemie (z modyfikacją wielu plików php), a czasami modyfikacje nie pojawiają się natychmiast (w przeglądarce). Nie wiem, czy to problem w moim konkretnym systemie.

Logi ocmodu nie podają zbyt wielu informacji w przypadku błędów.

+0

Miałem konflikty podczas jednoczesnego używania OCMOD i VQMOD - było około rok temu ... Pamiętam, że muszę przekonwertować OCMOD do VQMOD, aby zapobiec błędom –

+0

vqmod 2.6.1 obsługuje ocmod, dzięki czemu można użyć plików .ocmod.xml za pośrednictwem vqmod. Na pewno czasami skrypty nie są w pełni zgodne (np. Znalazłem skrypty ocmod o indeksie = "0", które należy zmienić na index = "1", itd.). Nie "konfliktują", jeśli podążacie za logiką zmian, które są dokonywane przez te dwa różne "silniki" modyfikacji. Najbardziej problematyczną rzeczą, jaką znalazłem, jest to, że OCmod często musi przeładowywać wszystko z panelu administracyjnego (aktualizować pamięć podręczną?). – Trueliarx

0

Wypróbowałem OCMOD teraz jest całkiem proste, jeśli wiesz, jakie pliki chcesz zmienić i jak chcesz je zmienić. Możesz znaleźć oficjalną dokumentację here i dobry tester regexp here.

Jeśli klikniesz Extensions/Modifications/Add admin możesz po prostu wkleić XML, wybierz Activated, Save a następnie Update modyfikacji, a następnie kliknij Log sprawdzić wiadomości dziennika, a następnie sprawdzić swoje zmodyfikowane pliki poniżej katalogu system/modifications.

Należy pamiętać o usunięciu modyfikacji i dodaniu jej jako nowej podczas zmiany, wydaje się, że samo jej uaktualnienie nie wystarcza do ponownego załadowania pliku XML.

Oto przykład moduł zrobiłem aby usunąć życzeniem liście przycisków

<?xml version="1.0" encoding="utf-8"?> 
<modification> 
    <name>Remove wishlist buttons</name> 
    <code>cjohanssonremovewishlistbutons</code> 
    <version>1.0</version> 
    <author>Christian Johansson</author> 
    <link></link> 
    <file path="catalog/view/theme/default/template/product/product.tpl"> 
     <operation> 
     <search trim="true"> 
      <![CDATA[<button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product_id; ?>');"><i style="color:<?php echo html_entity_decode($config->get('ekometcss_css_wishlist_color'), ENT_QUOTES, 'UTF-8'); ?>;" <i class="<?php global $config; echo $config->get('ekometcss_custom_icons_wishlist') ? 'fa fa-' . $config->get('ekometcss_custom_icons_wishlist') : 'fa fa-star'; ?>"></i></button>]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[]]> 
     </add> 
     </operation> 
    </file> 
    <file path="catalog/view/theme/default/template/module/*.tpl"> 
     <operation> 
     <search trim="true"> 
      <![CDATA[<button style="width: 80%;" type="button" class="cat-cart"]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[<button style="width: 100%;" type="button" class="cat-cart"]]> 
     </add> 
     </operation> 
     <operation> 
     <search trim="true"> 
      <![CDATA[<button style="width: 20%;" type="button" class="cat-wishlist" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i style="color:<?php echo html_entity_decode($config->get('ekometcss_css_wishlist_color'), ENT_QUOTES, 'UTF-8'); ?>;" <i class="<?php global $config; echo $config->get('ekometcss_custom_icons_wishlist') ? 'fa fa-' . $config->get('ekometcss_custom_icons_wishlist') : 'fa fa-star'; ?>"></i></button>]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[]]> 
     </add> 
     </operation> 
    </file> 
    <file path="catalog/view/theme/default/template/product/category.tpl"> 
     <operation> 
     <search trim="true"> 
      <![CDATA[<button style="width: 80%;" type="button" class="cat-cart"]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[<button style="width: 100%;" type="button" class="cat-cart"]]> 
     </add> 
     </operation> 
     <operation> 
     <search trim="true"> 
      <![CDATA[<button style="width: 20%;" type="button" class="cat-wishlist" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i style="color:<?php echo html_entity_decode($config->get('ekometcss_css_wishlist_color'), ENT_QUOTES, 'UTF-8'); ?>;" <i class="<?php global $config; echo $config->get('ekometcss_custom_icons_wishlist') ? 'fa fa-' . $config->get('ekometcss_custom_icons_wishlist') : 'fa fa-star'; ?>"></i></button>]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[]]> 
     </add> 
     </operation> 
    </file> 
</modification> 
0

Czy ktoś wdrożyły OCMOD dla plugin rozwoju w OpenCart 2.0?

Odp: Tak

Czy musimy zainstalować VQMOD wykonać OCMOD?

Odp: Nie

struktura

OCMOD Folder tak dla OpenCart

-upload -admin...(if you have required) 
     -catalog..(if you have required) 
     - - - - 
- install.xml 

Zip te i nazwie jak ten .ocmod.zip

następnie można stanie zainstalować z OpenCart Instalatora

0

Nie Oddzielone VQMOD Wtyczka zależna od plików XML systemu plików OCMOD Zależy od DB w doinstalowania nowej wtyczki ocmod zapisanej w tabeli modyfikacji

Powiązane problemy