{"id":3697,"date":"2016-06-23T08:50:35","date_gmt":"2016-06-23T11:50:35","guid":{"rendered":"https:\/\/www.mxcursos.com\/blog\/?p=3697"},"modified":"2022-01-06T16:05:26","modified_gmt":"2022-01-06T19:05:26","slug":"ocmod-sistema-de-modificacao-do-opencart","status":"publish","type":"post","link":"https:\/\/www.mxcursos.com\/blog\/ocmod-sistema-de-modificacao-do-opencart\/","title":{"rendered":"OCMOD &#8211; Sistema de Modifica\u00e7\u00e3o do OpenCart"},"content":{"rendered":"<p>A partir da vers\u00e3o 2.0 do <a href=\"http:\/\/www.opencart.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">OpenCart<\/a> foi integrado um sistema de modifica\u00e7\u00e3o de arquivos para que n\u00e3o seja alterado os arquivos originais do OpenCart, garantindo assim\u00a0a possibilidade de realiza\u00e7\u00e3o de upgrade na plataforma sem perder suas modifica\u00e7\u00f5es.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-3716 size-medium\" src=\"https:\/\/www.mxcursos.com\/blog\/wp-content\/uploads\/2016\/06\/E-Commerce-600x300.png\" alt=\"Opencart\" width=\"600\" height=\"300\" srcset=\"https:\/\/www.mxcursos.com\/blog\/wp-content\/uploads\/2016\/06\/E-Commerce.png 600w, https:\/\/www.mxcursos.com\/blog\/wp-content\/uploads\/2016\/06\/E-Commerce-24x12.png 24w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>OCMOD \u00e9 baseado do VQMOD, que foi e ainda \u00e9 utilizado no OpenCart pra mesma finalidade.<\/p>\n<p>A diferen\u00e7a entre os dois \u00e9 que o OCMOD \u00e9 nativo do OpenCart e uma vers\u00e3o mais simplificado do VQMOD<\/p>\n<p>Voc\u00ea pode realizar a instala\u00e7\u00e3o do OCMOD pelo Painel administrativo <em>(Extensions \/ Extension Installer ou Extens\u00f5es \/ Instalador)<\/em>.<\/p>\n<p>A outra forma seria enviar o arquivo para pasta system, sendo que seria apenas o formato <em>xml<\/em> que seria aceito neste caso.<\/p>\n<p>Voc\u00ea tem dois formatos para realizar essas modifica\u00e7\u00f5es:<\/p>\n<ul>\n<li>.ocmod.xml<\/li>\n<li>.ocmod.zip<\/li>\n<\/ul>\n<p>O <em>.ocmod.xml<\/em> \u00e9\u00a0 um XML informando quais as modifica\u00e7\u00f5es, e em quais arquivos ser\u00e3o realizado do OpenCart<\/p>\n<p>O <em>.ocmod.zip<\/em> j\u00e1 \u00e9 um pacote de arquivos, al\u00e9m do xml das modifica\u00e7\u00f5es, tem outros arquivos e pasta:<\/p>\n<ul>\n<li>upload\/<\/li>\n<li>install.sql<\/li>\n<li>install.php<\/li>\n<li>install.xml<\/li>\n<\/ul>\n<p>Na pasta <em>upload <\/em>estar\u00e3o todos os arquivos que ser\u00e3o movidos para pasta onde foi instalado o OpenCart.<\/p>\n<p>O arquivo <em>install.sql<\/em> ser\u00e3o as instru\u00e7\u00f5es SQL que voc\u00ea deseja executar, como criar ou excluir tabelas, inserir, alterar ou excluir dados.<\/p>\n<p>O arquivo <em>install.php<\/em> ter\u00e3o os scripts em PHP que voc\u00ea deseja executar.<\/p>\n<p>O arquivos <em>install.xml<\/em> ter\u00e3o as instru\u00e7\u00f5es em XML para modifica\u00e7\u00e3o de arquivos no OpenCart.<\/p>\n<p>Agora irei mostra como criar\u00a0apenas com o modificador, que seria o arquivo xml.\u00a0Criaremos uma modifica\u00e7\u00e3o onde adicionaremos o nome da loja no t\u00edtulo\u00a0da p\u00e1gina.<\/p>\n<p>Primeiro, criaremos um arquivo chamado <em>modified-title.ocmod.xml<\/em><\/p>\n<p>Vamos para estrutura b\u00e1sica:<\/p>\n<pre class=\"lang:xhtml decode:true\">&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;\r\n&lt;modification&gt;\r\n    &lt;name&gt;Adicionar nome da Loja no Titulo&lt;\/name&gt;\r\n    &lt;version&gt;1.0&lt;\/version&gt;\r\n    &lt;author&gt;David CHC&lt;\/author&gt;\r\n    &lt;link&gt;http:\/\/www.mxcursos.com&lt;\/link&gt;   \r\n&lt;\/modification&gt;<\/pre>\n<p>1 &#8211; Defini\u00e7\u00e3o do XML<br \/>\n2 &#8211; Abertura de tag modification<br \/>\n3 &#8211; Nome da modifica\u00e7\u00e3o<br \/>\n4 &#8211; Vers\u00e3o da modifica\u00e7\u00e3o<br \/>\n5 &#8211; Nome do Autor<br \/>\n6 &#8211; URL do site do autor<br \/>\n7 &#8211; Fechamento da tag\u00a0modification.<\/p>\n<p>A principio temos\u00a0as informa\u00e7\u00f5es gerais da\u00a0nossa modifica\u00e7\u00e3o. Agora iremos adicionar dentro da tag modification o arquivo que ter\u00e1 a modifica\u00e7\u00e3o, o que iremos buscar, qual a\u00e7\u00e3o queremos, se vamos substituir, adicionar depois ou antes do que pedimos para busca, qual\u00a0valor que ser\u00e1 alterado ou adicionado.<\/p>\n<p>Ficando assim:<\/p>\n<pre class=\"lang:xhtml decode:true\">&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;\r\n&lt;modification&gt;\r\n    &lt;name&gt;Adicionar nome da Loja no Titulo&lt;\/name&gt;\r\n    &lt;version&gt;1.0&lt;\/version&gt;\r\n    &lt;author&gt;David CHC&lt;\/author&gt;\r\n    &lt;link&gt;http:\/\/www.mxcursos.com&lt;\/link&gt;\r\n\r\n    &lt;file path=\"catalog\/controller\/common\/header.php\"&gt;\r\n        &lt;operation&gt;\r\n            &lt;search&gt;&lt;![CDATA[$data['title'] = $this-&gt;document-&gt;getTitle();]]&gt;&lt;\/search&gt;\r\n            &lt;add position=\"replace\"&gt;&lt;![CDATA[\r\n            \t$data['title'] = $this-&gt;document-&gt;getTitle().' | '.$this-&gt;config-&gt;get('config_name');\r\n            ]]&gt;&lt;\/add&gt;\r\n        &lt;\/operation&gt;\r\n    &lt;\/file&gt;  \r\n\r\n&lt;\/modification&gt;<\/pre>\n<p>8 &#8211; Na tag <em>file<\/em>, informando o arquivo que queremos modificar. Voc\u00ea pode informar v\u00e1rios arquivos,\u00a0basta\u00a0separar por |;<br \/>\n9 &#8211; Abertura da tag <em>operation<\/em>. Voc\u00ea pode realizar v\u00e1rias a\u00e7\u00f5es num arquivo e cada a\u00e7\u00e3o ter\u00e1 que ser adiciona de uma tag operation;<strong><br \/>\n<\/strong>10 &#8211; Abertura e fechamento da tag <em>search<\/em>. Nela voc\u00ea ir\u00e1 informar o que deseja\u00a0busca;<br \/>\n11 &#8211; Abertura da tag add<strong>. <\/strong>Nela temos um atributo que informa a\u00e7\u00e3o e que em nosso\u00a0exemplo ter\u00e1 que\u00a0substituir (<em>replace<\/em>), mas \u00e9 poss\u00edvel adicionar antes (<em>before<\/em>) ou depois (<em>after<\/em>) do trecho que informando na tag <em>search<\/em><strong>;<\/strong><br \/>\n13 &#8211; Fechamento da tag <em>add;<\/em><br \/>\n14 &#8211; Fechamento da tag <em>operation<\/em>;<br \/>\n15 &#8211; Fechamento da tag <em>file<\/em><strong>.<\/strong><\/p>\n<p>De forma descritiva, o que informamos foi:<\/p>\n<p>Acesse o arquivo \u00a0<em>catalog\/controller\/common\/header.php<\/em><\/p>\n<p>Busca nesse arquivo esse trecho:<\/p>\n<pre class=\"lang:php decode:true \">$data['title'] = $this-&gt;document-&gt;getTitle();<\/pre>\n<p>Substitua (replace) o trecho encontrado, por esse trecho:<\/p>\n<pre class=\"lang:php decode:true \">$data['title'] = $this-&gt;document-&gt;getTitle().' | '.$this-&gt;config-&gt;get('config_name');<\/pre>\n<p>Dessa forma, voc\u00ea tem um\u00a0infinidade de possibilidades de modifica\u00e7\u00f5es que voc\u00ea pode realizar no OpenCart, desde modificar ou adicionar novos comportamentos.<\/p>\n<p>Voc\u00ea encontrar\u00e1 mais informa\u00e7\u00f5es\u00a0dos outros atributos e op\u00e7\u00e3o no wiki do pr\u00f3prio OpenCart.<\/p>\n<p><a href=\"https:\/\/github.com\/opencart\/opencart\/wiki\/Modification-System\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/opencart\/opencart\/wiki\/Modification-System<\/a><\/p>\n<p>Espero que tenham gostado.<\/p>\n<p>Um abra\u00e7o e at\u00e9 a pr\u00f3xima.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A partir da vers\u00e3o 2.0 do OpenCart foi integrado um sistema de modifica\u00e7\u00e3o de arquivos para que n\u00e3o seja alterado os arquivos originais do OpenCart, garantindo assim\u00a0a possibilidade de realiza\u00e7\u00e3o de upgrade na plataforma sem perder suas modifica\u00e7\u00f5es. OCMOD \u00e9 baseado do VQMOD, que foi e ainda \u00e9 utilizado no OpenCart pra mesma finalidade. A [&hellip;]<\/p>\n","protected":false},"author":67,"featured_media":3711,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[],"class_list":["post-3697","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-e-commerce"],"_links":{"self":[{"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/posts\/3697","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/users\/67"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/comments?post=3697"}],"version-history":[{"count":0,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/posts\/3697\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/media\/3711"}],"wp:attachment":[{"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/media?parent=3697"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/categories?post=3697"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mxcursos.com\/blog\/wp-json\/wp\/v2\/tags?post=3697"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}