How to activate vQmod on Opencart?

Know how can you install vQmod on your Opencart Store, the first step to use the best modules developed to the e-commerce system.

Hello everyone, at last few years a big part of my time was spend developing and holding e-commerce projects with Opencart platform, and still of their problems, has been quite reliable for medium-sized projects.

On this tutorial, i will explain step by step what you have to do to activate vQmod system on your Opencart Store and use hundred of plugins who were built ahead this system

If you alread have doubts about how this works with Opencart, ready the article: “How VQmod works on Opencart?

Its time to install!

Step 1:
Download the most recent vQmod package in this link: https://code.google.com/p/vqmod/downloads/list

Step 2:

Unzip  the package content on the root folder of your application, creating an vqmod folder on the application root, like the image below:

Step 3:

You need to make write permissions on the following files:
yourstore/index.php
yourstore/admin/index.php
yourstore/vqmod/mods.cache
yourstore/vqmod/vqcache
yourstore/vqmod/logs

Step 4:

Access on web browser the address yourstore.com.br/vqmod/install

If everything was OK, you will receive an success message, and otherwise a warning to give permission for any file that has been lacking.

After the install will can start to use modules and extension who need this system, for that you nesse to put the xml file on yourstore/vqmod/xml

Thats it! Easy an simple! Until the next!

 

How Vqmod works with Opencart?

Know about how Vqmod works in Opencart platform and how they will make better the platform customisation process

VQmod no Opencart
VQmod no Opencart

Hello people, today is day of hands os in this blog, and i will continue the posts serie about Opencart Platform and and as I promised, today i will explain how VQmod works and how they make your life better!

What is VQmod?

Conceptually it is an simple idea: you make small patches for platform php core system files, tracing what and when this will be changed, and defining if is an REPLACE or one INSERT of code.

After that, VQMOD will change the original PHP file on execution time, applying your patch and creating a new version of this file on the CACHE folder and indicate to APACHE to read this folder instead the original folder.

Why use VQmod on Opencart?

Unfortunately Opencart does not have an good update and customisation
system, because that every time we need to update system the only way to do that is copying the new files overwriting the old files and doing that many improvements and customisations are lost.

It is precisely to improve this scenario that the VQmod works to encapsulate and separate your own customisations and improvements, allowing quietest updates on the system.

How to install VQmod on Opencart?

The process is quite simple, first download the package here, unzip on main system folder, after that access the install folder from any browser.

You will need to do some permission on the Cache folder and the Mods.cache file.

After that everything will be fine, and you can start to create your own XML files

I hope I have helped, until the next!

Linguagens, Frameworks e Plataformas quem é quem?

Saiba um pouco mais sobre essas definições e conheça quem é quem nesse universo.

Bom dia pessoal, vez por outra me pego conversando com alguém sobre esse assunto e tentando explicar a diferença entre linguagens, frameworks e plataforma, seu apara amigos, clientes ou usuários do blog. Por esse motivo, nesse post vou tentar esclarecer um pouco mais esse assunto que confunde tanta gente.

Hierarquia

O primeiro ponto que precisamos entender é a hierarquia, linguagens, frameworks e plataformas estão, nessa sequência, em níveis hierárquicos diferentes, aqui a regra de ouro é entender que: Linguagens constroem frameworks e frameworks constroem plataformas, simples assim como na figura abaixo.

A hierarquia de frameworks, linguagens e plataformas

Linguagens

As linguagens de programação são a base dos frameworks, e nesse ponto, creio que existam poucas dúvidas sobre o que é uma linguagem de programação, mas vamos a definição.

Linguagem de programação é um conjunto de regras e sintaxes capazes de em conjunto criar uma solução de software.

Como exemplo temos, PHP, ASP, C#, JAVA, Python, Ruby, e aqui é importante frisar que não citei o HTML, justamente por que ele não é uma linguagem de programação e sim uma linguagem de marcação.

Frameworks

Antes, de falar dos frameworks, é interessante entender a sua origem. Durante o processo de desenvolvimento de software diversas vezes caímos em situações repetitivas e que ja foram resolvidas anteriormente, por você ou por outros programadores, e é nesse prisma que surgem os frameworks, com o objetivo de agregar funcionalidades que já foram desenvolvidas anteriormente e disponibilizar ao desenvolvedor.

De forma simples, você pode entender um framework como uma caixa de ferramentas que o desenvolvedor tem a disposição para criar uma solução, nessa linha temos por exemplo: Zend, Rails, .Net, Struts.

Veja na tabela abaixo os mais comuns:

Plataforma

Por fim chegamos as plataformas, que são em última instância, software, funcional, instalado e passível de utilização por usuários finais, não desenvolvedores. Nessa categoria temos diversas sub-categorias de plataforma, como, CMS, Erp, E-commerce, etc…

É nesse momento que surgem, Drupal, WordPress, Joomla, Plone, Magento, Opencart dentre outros.

Um bom resumo disso é: o Php, constrói o Zend Framework, que por sua vez, constrói o Magento e-commerce, simples assim!

Até a próxima!

Como ativar o Vqmod no Opencart?

Saiba como ativar o VQmod em sua loja Opencart, pré-requisito indispensável para os melhores módulos e plugins criados para a plataforma.

Olá pessoal, nos últimos anos tenho passado boa parte do meu tempo implantando e mantendo projetos de comércio eletrônico sob a plataforma Opencart, que apesar de seus defeitos tem se mostrado bem confiável para projetos de médio porte. 

Neste turorial vou explicar o passo a passo que você deve seguir para ativar o Vqmod (sistema de alteração virtual de scripts)  em sua loja Opencart e assim poder utilizar centenas de módulos e plugins que foram criados para a plataforma em cima desse sistema.

Se você ainda tem dúvidas sobre o que é e como funciona o Vqmod, leia esse outro artigo: “Como funciona o VQmod no Opencart?

Vamos a instalação?

Passo 1:
Faça o download do pacote mais atualizado no link: https://code.google.com/p/vqmod/downloads/list

Passo 2:

Descompacte o conteúdo no pacote na raíz de sua aplicação, criando assim uma pasta chamada vqmod na raiz do seu sistema, assim como esta na imagem abaixo:

Passo 3:

Você precisa dar permissão de escrita nos seguintes arquivos:
sualoja/index.php
sualoja/admin/index.php
sualoja/vqmod/mods.cache
sualoja/vqmod/vqcache
sualoja/vqmod/logs

Passo 4:

Acesse via browser o endereço sualoja.com.br/vqmod/install

Caso tenha ocorrido tudo certo, você receberá uma mensagem de sucesso, e caso contrário um alerta para dar permissão em algum arquivo que tenha faltado.

Após a instalação basta começar a utilizar os módulos e extensões que necessitam do Vqmod instalado, para isso, basta adicionar o xml do módulo na pasta: sualoja/vqmod/xml

É isso, simples e prático! Até a próxima

 

O que é desenvolvimento de software iterativo?

Saiba o que significa desenvolvimento iterativo e como ele pode lhe ajudar a entregar software com qualidade e dentro dos prazos

Bom dia pessoal, hoje é terça-feira, e vou iniciar uma nova série de posts aqui no blog que tem como tema engenharia de software, assunto que pretendo estudar bastante nos próximos meses e pretendo compartilhar o que aprender aqui nestes espaço.

Basicamente, segundo a definição de Margaret Rouse, desenvolvimento iterativo é uma forma de “quebrar” o desenvolvimento de uma grande aplicação em pequenos pedaços de software.

No desenvolvimento iterativo, cada ciclo de desenvolvimento deve contemplar:

  • Levantamento de requisitos
  • Análise a arquitetura da solução
  • Implementação
  • Testes
  • Distribuição
Abaixo você pode ver uma abordagem visual do conceito proposto pelo RUP:
RUP - Desenvolvimento Iterativo

O produto de cada iteração apesar de incompleto do ponto de vista visual e de integração deve permitir seu uso total e testes pelo usuário final mantendo qualidade de produto final.

Cada nova iteração de incluir novas funcionalidades as iterações anteriores, ampliando desta forma o escopo da solução. Normalmente o desenvolvimento iterativo é usado em conjunto com uma metodologia Agil de desenvolvimento que irá controlar o escopo da implementação daquela iteração.

De forma geral cada iteração ou ciclo tem um período e escopo curtos que giram em torno de duas semanas e ao seu final deve gerar código funcional que dever ser demonstrado e validado pelo cliente.

O desenvolvimento iterativo contrasta com o modelo tradicional de desenvolvimento de software baseado em cascata e que envolve o usuário final apenas nas etapas inicial, durante o levantamento de requisitos e final após a entrega do produto, e tem demonstrado uma melhor capacidade de entrega de projetos de software com sucesso.

Veja abaixo o modelo Waterfall:

O propósito do desenvolvimento iterativo esta em permitir um processo mais flexível a mudanças de escopo durante o processo de desenvolvimento do produto reduzindo desta forma os riscos de falha no projeto de desenvolvimento de software.

Para vinalizar veja o vídeo abaixo uma pequena explicação sobre este conceito:

É isso pessoal, essa é apenas uma pequena introdução ao assunto que pretendo abordar aqui no blog todas as terças-feiras, até a próxima.

Melhorando o desempenho de seu banco de dados do Opencart!

Saiba como você pode de forma simples aumentar o desempenho de sua loja Opencart com alguns pequenos ajustes no banco de dados.

Oi pessoal tudo bom? Hoje é terça-feira, dia de colocar a mão na massa, ou melhor, no código aqui no blog e como ultimamente tenho falado bastante do Opencart, hoje vou continuar no assunto, mas antes leia alguns dos posts que já fiz sobre a plataforma.

O problema com o banco de dados do Opencart

Nesse período de mais de dois anos que venho trabalhando diariamente com o Opencart, consegui conhecer algumas de suas vantagens e desvantagens e posso dizer com tranquilidade que um dos maiores problemas da plataforma esta em seu banco de dados, porém esse problema pode ser minimizado aplicando algumas pequenas alterações no banco.

Vamos a elas?

Índices, sim eles existem

Por incrível que pareça o pessoal que desenvolveu o Opencart não teve muita preocupação com a criação de índices a grande maioria das tabelas possui apenas um único em indice que contempla apenas a chave primária.

Quem já lidou com grandes bancos de dados sabe da importância desta prática e o quanto ela reduz o tempo das consultas.

Você pode criar índices em todas as tabelas do banco de dados, mas vou listar aqui as que julgo mais importante e o comando para você criar os índices:

Tabela de Produtos (product)

#Indice para fabricantes
 CREATE INDEX manufacturer ON `oc_product` (`manufacturer_id`)
#Indice para status de estoque
 CREATE INDEX stock_status ON `oc_product` (`stock_status_id`)
#Indice para o status
 CREATE INDEX status ON `oc_product` (`status`)

Tabela de Pedidos (order)

#Indice para loja
 CREATE INDEX store ON `oc_order` (`store_id`)
#indice para cliente
 CREATE INDEX customer ON `oc_order` (`customer_id`)

Chaves estrangeiras, elas podem ajudar

Outra boa prática é a criação de chaves estrangeira e que tenham remoção de dados em cascata, desta forma se você remover um produto diretamente no banco todas os dados vinculados ao produto em outras tabelas serão também removidos.

Esse é um processo longo e um pouco mais complexo pois envolve mexer em diversas tabelas, no caso de produto são 16 tabelas vinculadas, mas pode ter certeza que o esforço vai valer a pena, pois sua base de dados vai ficar sempre homogênea.

Veja abaixo o exemplo da criação da chave na tabela product_to_category que é responsável por vincular os produtos as categorias do sistema.

O primeiro passo é alteras as tabelas envolvidas pra o tipo Innodb:
 ALTER TABLE `product` ENGINE=InnoDB
 ALTER TABLE `product_to_category` ENGINE=InnoDB
#cria a chave estrangeira com a tabela produto
 ALTER TABLE `oc_product_to_category` ADD CONSTRAINT `product_id` FOREIGN KEY ( `product_id` ) REFERENCES `oc_product` ( `product_id` ) ON DELETE CASCADE ON UPDATE CASCADE ;

Não altere o banco!

Por fim a última dica que eu tenho sobre melhorar o desempenho do banco de dados é: não altere o banco de dados e sobre alterar estou falando em criar campos, renomear colunas etc…

Fazendo isso você pode quebrar referências e prejudicar e muito sua loja Opencart além de dificultar e muito o processo de atualização.

Se precisar crie novas tabelas, mas não altere as tabelas do sistema.

É isso pessoal essas foram algumas dicas que podem melhorar o desempenho da base de dados do Opencart e consequentemente aumentar a velocidade e os resultados de sua loja Opencart.

Até amanhã!!!

Conheça o Hello e nunca mais perca nenhum contato!

Saiba como esse aplicativo vai aumentar sua produtividade na organização de contatos e manutenção do histórico de reuniões

Bom dia pessoal, como foi o fim de semana? Espero que muito bem, como vocês sabem segunda-feira é dia de trazer dicas de produtividade aqui no blog. Se você não acompanhou os últimos posts não perca:

  • Aumente sua produtividade com Alfred no Mac
  • Descubra onde você gasta seu tempo com RescueTime

Mas vamos a dica do dia:

O problema…

Todas as semanas fazemos diversas reuniões, conhecemos pessoas e discutimos diversos assuntos, porém, não raro é comum encontrarmos depois de algum tempo um “bolo” de cartões de visita na mesa ou na gaveta, sem conseguir ligar mais o nome a pessoa.

Até pior do que isso é quando em uma segunda reunião você não se lembra o nome de alguém ou o assunto discutido ou até quando você conheceu a pessoa.

A solução…

Para resolver esse problema o pessoal que criou o Evernote, um dos mais famosos softwares de produtividade desenvolveu um aplicativo chamado Hello que permite a você apenas tirar uma foto do cartão de visita e o App identifica todos os dados e te permite criar um contato diretamente na sua agenda além de permitir que você descreva quando, onde e como conheceu aquele contato.

Outro ponto muito interessante do aplicativo é já integrar com o Linkedin e Facebook permitindo que você já se conecte ao perfil do novo conhecido, tudo em poucos toques e da forma mais simples possível.

Ah, todos os seus dados vão para nuvem em sua conta Evernote que fica acessível em todas as plataformas.

Ficou curioso? Assista o vídeo sobre o aplicativo abaixo:

O Hello pode ser baixado gratuitamente na AppStore e no Android MarketPlace.

Bom por hoje é isso pessoal, espero que a dica ajude vocês a não perder mais nenhum contato, até amanhã!

Tags x Meta-tags no Opencart em 3 minutos!

Saiba como utilizar as Tags e as Meta-tags de forma correta para melhorar o desempenho de sua loja.

Bom dia pessoal, hoje é sexta feira, dia de falar sobre dicas de usabilidade, seo e interface aqui no blog, e dessa vez quero falar em 3 minutos de um tema simples e que diversas vezes se torna um ponto de confusão para administradores de lojas que utilizam a plataforma Opencart, trata-se do uso de Tags e de Meta-tags.

 Tags x Meta-tags

As meta-tags

Apesar de gerar alguma dúvida essa é uma questão muito simples, as meta-tags são palavras que definem o conteúdo da página e que serão utilizadas pelos buscadores (Google, Bing) para indexar o seu site, ou seja quanto mais descritivas melhor.

Veja a definição do W3c para as meta-tags:

The <meta> tag provides metadata about the HTML document. Metadata will not be displayed on the page, but will be machine parsable.

Ou seja é um conteúdo destinado a leitura por máquinas e não aparecerá no conteúdo da página, desta forma preocupações com formatação e etc são desnecessárias, sendo o foco principal a contextualização do conteúdo.

As tags do Opencart

Talvez o ponto principal de dúvida seja o nome adotado pelo Opencart, pois as tags do sistema nada mais são do que uma taxonomia que agrupa produtos que tenha alguma relação, por exemplo: Você possui uma loja de roupas, em quer exibir produtos relacionados ao inverno, ao invés de criar uma categoria Inverno você simplesmente utiliza uma TAG com o nome inverno em todos os produtos que tem relação com esta tag.

Desta forma todos os produtos serão agrupados em uma url própria, e o link para as tags que o produto participa será exibido no rodapé da página de produto, de forma similar ao que ocorre no sistema WordPress.

É isso simples e fácil, meta-tags buscador, tags agrupamento, e você aproveita melhor sua loja Opencart, até sexta que vem com mais dicas de usabilidade e SEO.

5 coisas que você não sabia sobre o Opencart

Conheça um pouco mais sobre o Opencart, plataforma de comércio eletrônico que não para de crescer

Olá leitores, depois de um longo inverno, estou de volta ao blog e com força total e para começar quero trazer pra vocês um texto rápido com 5 coisas que você provavelmente não sabe sobre o Opencart, minha plataforma de e-commerce favorita.

Mas antes leia algumas dicas que já trouxe aqui no blog sobre o Opencart:

Vamos as curiosidades?

Você pode apagar os produtos da sua loja Opencart,

Muita gente tem dúvida sobre apagar ou não produtos de sua loja virtual com receio que seja perdida a referência para pedidos antigos e que envolvam tais produtos.

Keep Calm! O Opencart salva praticamente todos os dados do produto e do cliente na tabela order que é destinada ao armazenamento de pedidos, desta forma mesmo que o produto seja removido a referência não é perdida.

É possível atualizar o sistema sem grandes problemas,

Outro mito esta na possibilidade de atualização do sistema, apesar do opencart não possuir uma forma de atualização simples como o WordPress a ferramenta pode sim ser atualizada sem grandes impactos, desde que o desenvolvedor tenha tido o cuidado de não mexer em arquivos do core do sistema e também não tenha alterado tabelas do sistema.

Para aprender a alterar o sistema sem “quebrar” o core veja esse post aqui sobre o VQmod.

O sistema praticamente não atualiza dados no banco (No UPDATE),

Não sei o que aconteceu com o pessoal que desenvolveu o sistema mas parece que eles não conheciam o comando update do SQL.
Praticamente todas as atualizações de dados do sistema passam por remover o conteúdo e inserir novamente, isso vale para produtos, endereços, etc… Bizarro

Dá pra melhorar performance,

Eu gosto muito do Opencart, mas ele não é muito legal com os servidores, claro, nada que se compare com o Magento que é um elefante, mas a falta de updates e uma modelagem de dados muito digamos discutível, tornam o sistema um pouco exigente em questões de hardware.

Uma boa forma de melhorar isso é realizar um tunning em seu banco de dados, criando índices e tomando cuidado com a quantidade de atributos, categorias e opções de produtos.

Não existem chaves estrangeiras

Por incrível que pareça o banco de dados do Opencart não possui chaves estrangeiras ou seja se você apagar um dado diretamente no banco de dados, coisa que desenvolvedor adora fazer, você provavelmente vai ficar com vários dados “sobrando” no banco.

Um exemplo, se você apagar um produto, o banco não irá remover suas referências de categoria, atributos e etc…

Solução para isso: ou você nunca apaga nada direto no banco de dados, ou investe um tempo criando todos os relacionamentos do banco 🙂

É isso essas são algumas curiosidades do sistema, lembrando que elas valem para a versão 1.5.1 do Opencart, em versões mais recentes isso pode ter mudado, ou não 🙂

Até a próxima

Instalando Zend Server no Mac Os

Saiba como instalar o Zend Server 6 no Mac Os Mavericks

Pessoal, a dica de hoje é bem direta e vem em vídeo, é um simples vídeo-tutorial sobre como instalar e ativar o Zend Server 6 no Os X Mavericks, como eu não uso o Zend Server não tenho muito o que falar dele, apenas que a instalação foi simples e que ele utiliza agora como webserver o Ngix que é extremente rápido!!!

Nos próximos dias vou fazer alguns testes com ele e se valer a pena coloco aqui para vocês quais foram as minhas impressões… Com certeza a galera do Zend Framework vai gostar do Zend Server…

Até a próxima!