Quer melhorar a performance e desempenho das suas aplicações PHP?
Use o Behat!
-> http://behat.org/
Mais informações: http://blog.marcelioleal.com/utilizando-behat-pra-bdd-ou-pra-seus-testes-funcionais/
11/06/2014
02/05/2014
Manual de Desenvolvimento do Moodle
Segue um link muito importante para desenvolvimento no Moodle:
http://desenvolvimentomoodle.wordpress.com/2011/07/11/hello-world/
:)
http://desenvolvimentomoodle.wordpress.com/2011/07/11/hello-world/
:)
Marcadores:
PHP
26/03/2014
TOP 10 FRAMEWORKS PHP PARA DESENVOLVEDORES
Se você é um desenvolvedor PHP e olhando para algumas das melhores frameworks PHP para seus projetos web, então a seguir pode ser útil para você.Temos arredondado uma lista de Top 10 Frameworks PHP que ajudam a simplificar suas tarefas de desenvolvimento. Após Frameworks PHP ajudá-lo a projetar e desenvolver sites dinâmicos cross browser e aplicações web rapidamente. Aproveite!
1. Cake PHP
CakePHP é um framework de desenvolvimento rápido para PHP que oferece uma arquitetura flexível para o desenvolvimento, manutenção e implantação de aplicativos. CakePHP vem com built-in ferramentas para validação de entrada, proteção CSRF, Formulário de proteção adulteração, prevenção de injeção de SQL, XSS e prevenção, ajudando você a manter seu aplicativo seguro e seguro. Em vez de ter de planejar onde as coisas vão, o CakePHP vem com um conjunto de convenções para orientá-lo no desenvolvimento de seu aplicativo.
2. Laravel
Laravel é um framework PHP comprometida com elegância e simplicidade.Laravel é para todos os programadores PHP, até mesmo iniciantes. Laravel é construído em cima de vários componentes Symfony, dando a sua aplicação uma grande base de código bem testado e confiável. Laravel é construído com os testes em mente. Mantenha-se flexível com o contêiner IoC, e executar os testes com PHPUnit
3. Yii Framework
Yii é um framework PHP de alta performance melhor para o desenvolvimento da Web 2.0 aplicações escritas em PHP5. Ele trabalha para simplificar o desenvolvimento de aplicativos e ajuda a garantir um produto final extremamente eficiente, extensível e de fácil manutenção. Sendo extremamente desempenho otimizado, Yii é uma escolha perfeita para qualquer projeto de tamanho.
4. Symfony
Symfony é um framework de aplicações web; symfony segue o modelo-visão-controlador do sistema (MVC) e começando o dia mais popular por dia, Symfony é um framework livre sob a licença MIT.
5. Phalcon PHP
Phalcon PHP é um framework web entregue como uma extensão C proporcionando alto desempenho e menor consumo de recursos. Phalcon PHP é escrito em C, com independência de plataforma em mente. Como resultado, Phalcon PHP está disponível no Microsoft Windows, GNU / Linux, Mac OS X, você pode baixar um pacote binário para o sistema de sua escolha ou construí-lo a partir de fontes. Phalcon não é apenas sobre o desempenho, é bastante robusto, rico em recursos e fácil de usar. Phalcon é um software de código aberto licenciado sob a Licença New BSD. http://phalconphp.com/en/
6. CodeIgniter
CodeIgniter é um framework PHP poderoso, com uma pegada muito pequena, construída para programadores PHP que precisam de um kit de ferramentas simples e elegante para criar aplicações web com recursos completos. Se você é um desenvolvedor que vive no mundo real das contas de hospedagem compartilhada e clientes com prazos, e se você está cansado de quadros ponderously grandes e completamente sem documentos,
7. Zend
Zend Framework 2 é um framework de código aberto para o desenvolvimento de aplicações web e serviços usando PHP 5.3 +. Zend Framework 2 usa 100% de código orientado a objetos e utiliza a maior parte dos novos recursos do PHP 5.3, ou seja, namespaces, encadernação, funções lambda tarde estáticos e encerramentos. Zend Framework 2 evoluiu de Zend Framework 1, um framework PHP de sucesso com mais de 15 milhões de downloads.
8. Yaf-Yet Another Quadro
Yaf é o primeiro framework PHP MVC que é escrito em C e construir como extensão PHP. É considerado como o mais rápido e com o menor consumo de recursos framework PHP para agora. http://www.yafdev.com/
9. Combustível PHP
O combustível é um simples, flexível comunidade, impulsionado PHP framework web 5.3 com base nas melhores idéias de outras estruturas com um novo começo. Combustível foi testado em Apache, IIS e Nginx. Combustível tem uma abordagem diferente para muitas estruturas e se esforça para ser conduzido pela comunidade.
10. PHPixie
PHPPixie é um framework MVC Php leve projetado para ser rápido, fácil de aprender e fornecer uma base sólida para o desenvolvimento.
Fonte: Original em Inglês => http://webtoolsdepot.com/top-10-php-frameworks-for-developers/
Marcadores:
PHP
20/03/2014
Acrescentando um novo campo no formulário de cadastro do Joomla! 2.5
O formulário de registro de usuários do Joomla! 2.5 possui
dois meios de acrescentar campos novos para cadastro. O
primeiro é através da ativação do plug-in “User - Profile” que por padrão vem
desativado:
Esta forma de adicionar novos campos a seu formulário é
rápida e fácil, porém não atende a campos mais específicos e personalizados que
cada site possa vir a precisar.
Para definirmos novos campos personalizado exigirá um pouco
mais de esforço e tempo, pois precisaremos de acesso ao servidor FTP ou SFTP e
ao banco de dados do projeto Joomla! 2.5.
Como pode ser visto abaixo eu criei uma nova coluna da tabela de
usuários de nome “prefixo_users”:
Agora iremos alterar os arquivos fontes do Joomla! através do
acesso aos arquivos via FTP. Veja abaixo
que alteramos o arquivo: \libraries\joomla\user\user.php acrescentando a propriedade
pública (public) $crm = null, na linha 47:
No formulário de registro do frontend \components\com_users\models\forms\registration.xml,
vamos inserir também um novo registro para que o Joomla acrescente uma nova
linha no formulário logo abaixo do “name”:
Isso já é suficiente para que apareça no formulário de
registro de usuário, como pode ser observado abaixo:
Para que possamos ver se realmente foi cadastro o campo novo
criado, podemos ou consultar a base de dados ou continuar melhorando a visão
agora do Administator backend do Joomla!.
Vamos agora então editar o seguinte arquivo \administrator\components\com_users\models\forms\user.xml:
Para validarmos opcionalmente o campo criado podemos criar
uma condição adicional no arquivo \libraries\joomla\database\table\user.php no
método check():
Inserimos este campo também no arquivo de pluglin criação de
contato \plugins\user\contactcreator\contactcreator.php , linhas 88 e 90:
E
para finalizar inserimos este campo tambem em \plugins\user\joomla\joomla.php
na linha 254 como podemos observar abaixo:
Se nos logarmos no sistema administrativo, veremos que o
campo pode ser acessado e conferido de lá:
Qualquer
dúvida, sugestão ou melhoria, comentem e sigam este blog!
Marcadores:
Javascript,
PHP
10/03/2014
Paginação no CakePHP 2.x - $paginate
Boa noite a todos!
Vamos falar hoje sobre paginação de resultados no Framawork CakePHP 2.4.5, que é a versão usada neste tutorial.
O CakePHP já possui internamente um recurso para paginar sua aplicação e usá-lo veremos que é muito simples e fácil.
O principio é bem simples, podemos começar definindo um padrão de linhas a serem exibidas em todas as listagens alterando o arquivo:
-> \app\Controller\AppController.php
Adicionamos as seguintes linhas:
--------------------------------------------------------------------------------------
class AppController extends Controller {
//adiciona o atributo $paginate definindo o limite de paginas padrão
public $paginate = array(
'limit'=>5,
);
}
--------------------------------------------------------------------------------------
Feito isso passamos para o controlador especifico de sua aplicação, por exemplo:
--------------------------------------------------------------------------------------
public function index() {
$this->Frequencia->recursive = 0;
//ordena a coluna padrão que precisar
$this->paginate['Frequencia']['order'] = array('Frequencia.id' => 'desc');
//redefine a quantidade
$this->paginate['Frequencia']['limit'] = 5;
$this->set('frequencias', $this->paginate());
}
--------------------------------------------------------------------------------------
E agora vamos mostrar na View (\app\View\Frequencias\index.ctp) o resultado do que vai ser paginado:
--------------------------------------------------------------------------------------
<table cellpadding="0" cellspacing="0">
<tr>
<th><?php echo $this->Paginator->sort('id'); ?></th>
<th><?php echo $this->Paginator->sort('disciplina_id'); ?></th>
<th><?php echo $this->Paginator->sort('frequentou'); ?></th>
<th><?php echo $this->Paginator->sort('created'); ?></th>
<th><?php echo $this->Paginator->sort('modified'); ?></th>
<th class="actions"><?php echo __('Actions'); ?></th>
</tr>
<table cellspacing="0" cellpadding="0">
<?php
$tableHeaders = $this->Html->tableHeaders(array(
$this->Paginator->sort('id', 'ID'),
$this->Paginator->sort('disciplina_id', 'Disciplina'),
$this->Paginator->sort('frequentou'),
$this->Paginator->sort('created')
));
echo $tableHeaders;
$rows = array();
foreach($frequencias as $linha){
$rows[] = array(
$linha['Frequencia']['id'],
$linha['Frequencia']['disciplina_id'],
$linha['Frequencia']['frequentou'],
$linha['Frequencia']['created'],
);
}
echo $this->Html->tableCells($rows);
echo $tableHeaders;
?>
</table>
<div class="paging">
<?php
//echo $this->Paginator->numbers();
echo $this->Paginator->prev('Anterior', null, null, array('class' => 'disable'));
echo $this->Paginator->next('Proximo', null, null, array('class' => 'disable'));
?>
</div>
--------------------------------------------------------------------------------------
Se testarem em uma aplicação real verão de funciona perfeitamente, um abraço e até a próxima.
Vamos falar hoje sobre paginação de resultados no Framawork CakePHP 2.4.5, que é a versão usada neste tutorial.
O CakePHP já possui internamente um recurso para paginar sua aplicação e usá-lo veremos que é muito simples e fácil.
O principio é bem simples, podemos começar definindo um padrão de linhas a serem exibidas em todas as listagens alterando o arquivo:
-> \app\Controller\AppController.php
Adicionamos as seguintes linhas:
--------------------------------------------------------------------------------------
class AppController extends Controller {
//adiciona o atributo $paginate definindo o limite de paginas padrão
public $paginate = array(
'limit'=>5,
);
}
--------------------------------------------------------------------------------------
Feito isso passamos para o controlador especifico de sua aplicação, por exemplo:
--------------------------------------------------------------------------------------
public function index() {
$this->Frequencia->recursive = 0;
//ordena a coluna padrão que precisar
$this->paginate['Frequencia']['order'] = array('Frequencia.id' => 'desc');
//redefine a quantidade
$this->paginate['Frequencia']['limit'] = 5;
$this->set('frequencias', $this->paginate());
}
--------------------------------------------------------------------------------------
E agora vamos mostrar na View (\app\View\Frequencias\index.ctp) o resultado do que vai ser paginado:
--------------------------------------------------------------------------------------
<table cellpadding="0" cellspacing="0">
<tr>
<th><?php echo $this->Paginator->sort('id'); ?></th>
<th><?php echo $this->Paginator->sort('disciplina_id'); ?></th>
<th><?php echo $this->Paginator->sort('frequentou'); ?></th>
<th><?php echo $this->Paginator->sort('created'); ?></th>
<th><?php echo $this->Paginator->sort('modified'); ?></th>
<th class="actions"><?php echo __('Actions'); ?></th>
</tr>
<table cellspacing="0" cellpadding="0">
<?php
$tableHeaders = $this->Html->tableHeaders(array(
$this->Paginator->sort('id', 'ID'),
$this->Paginator->sort('disciplina_id', 'Disciplina'),
$this->Paginator->sort('frequentou'),
$this->Paginator->sort('created')
));
echo $tableHeaders;
$rows = array();
foreach($frequencias as $linha){
$rows[] = array(
$linha['Frequencia']['id'],
$linha['Frequencia']['disciplina_id'],
$linha['Frequencia']['frequentou'],
$linha['Frequencia']['created'],
);
}
echo $this->Html->tableCells($rows);
echo $tableHeaders;
?>
</table>
<div class="paging">
<?php
//echo $this->Paginator->numbers();
echo $this->Paginator->prev('Anterior', null, null, array('class' => 'disable'));
echo $this->Paginator->next('Proximo', null, null, array('class' => 'disable'));
?>
</div>
--------------------------------------------------------------------------------------
Se testarem em uma aplicação real verão de funciona perfeitamente, um abraço e até a próxima.
Marcadores:
PHP
06/03/2014
Lançamento da Nova versão do CMS PrestaShop 1.6 para loja virtuais!
Vamos examinar os recursos novos e aprimorados do back office da PrestaShop 1.6.
Com novo visual inovador baseado em Bootstrap acompanhando a tendência da responsividade para aparelhos moveis. Clique na imagem e leia mais sobre o assunto!
Marcadores:
PHP,
tecnologia
Detectando qual o dispositivo está sendo acessado por sua aplicação online
Existem vários scripts prontos para fazer a detecção de qual o tipo de dispositivo o usuário está acessando a sua aplicação web.
Seja Mobile, Desktop, Tablet e seus respectivos sistemas operacionais (ANDROID, IOS, Windows, MACOX, Linux).
Para facilitar a vida segue o link para resolver este drama: -> http://detectmobilebrowsers.com/
Sabemos que vários novas plataformas de dispositivos são lançados todos os anos deixando o código obsoleto, é sempre bom estar atendo se o código atende a sua necessidade mesmo antes de implementar em sua lógica.
Um abraço e até logo.
Seja Mobile, Desktop, Tablet e seus respectivos sistemas operacionais (ANDROID, IOS, Windows, MACOX, Linux).
Para facilitar a vida segue o link para resolver este drama: -> http://detectmobilebrowsers.com/
Sabemos que vários novas plataformas de dispositivos são lançados todos os anos deixando o código obsoleto, é sempre bom estar atendo se o código atende a sua necessidade mesmo antes de implementar em sua lógica.
Um abraço e até logo.
Marcadores:
Javascript,
PHP,
tecnologia
28/02/2014
Criando um formulário validador de CPF com Ajax Jquery.
Algoritmo do CPF - O que está por trás do gerador de CPF
Para exemplificar o processo vamos gerar um CPF válido, calculando os dígitos verificadores de um número hipotético, 111.444.777-XX.
Calculando o Primeiro Dígito Verificador:
O primeiro dígito verificador do CPF é calculado utilizando-se o seguinte algoritmo. 1) Distribua os 9 primeiros dígitos em um quadro colocando os pesos 10, 9, 8, 7, 6, 5, 4, 3, 2 abaixo da esquerda para a direita, conforme representação abaixo:
Veja agora como implementar isso em PHP + jQuery:
Arquivo => index.html:
-------------------------------------------------------------------------------------------------------------------
<html>
<head>
<script src="js/jquery-1.2.6.pack.js" type="text/javascript"></script>
<script src="js/jquery.maskedinput-1.1.4.pack.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#cpf").mask("999.999.999-99");
});
//minha funcao validadora
function enviaValor(){
var valor = $('#cpf').val();
//console.log($('#cpf').val());
$(document).ready(function(){
//efetuando a gravação e contabilização de pratos mais acessados
$.post(
"./validar.php",
{ codigo: valor },
function(data) {
//console.log(data);
if(data == 1) {
$("#saida").html("<span style='color: green'>CPF Válido!</span>");
} else {
$("#saida").html("<span style='color: red'>CPF Inválido!</span>");
}
}
);
});
}
</script>
</head>
<title>
Validar CPF
</title>
</html></pre>
<body>
<form action="" id="form1" method="post" name="form1">
<div align="center">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%px;">
<tbody>
<tr>
<td height="40">
<div align="center">
<input class="saida" id="cpf" name="cpf" type="text" />
</div>
</td>
</tr>
<tr>
<td>
<div align="center">
<input id="botaoValidarCPF" name="botaoValidarCPF" onclick="enviaValor();" style="cursor: pointer; font-size: 15px;" type="button" value="Validar CPF" />
</div>
<div align="center" class="style7" id="saida">
<span style="color: green;"></span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</form>
</body>
Em seguida é criado uma função javascript de nome "enviaValor()" que possui uma requisição Ajax jQuery $.post que envia o valor do campo de formulario para o arquivo PHP "validar.php" receber e procesar da seguinte forma:
---------------------------------------------------------------------------------------------------------------------
<?php
//recebe o dado vindo da pagina via Ajax jQuery
$cpf = (isset($_REQUEST['codigo'])) ? $_REQUEST['codigo'] : "" ;
//funcao que retira o ponto e traço e valida o CPF com o calculo do algoritmo
function validaCPF($cpf = null) {
// Verifica se um número foi informado
if(empty($cpf)) {
return false;
}
// Elimina possivel mascara
$cpf = ereg_replace('[^0-9]', '', $cpf);
$cpf = str_pad($cpf, 11, '0', STR_PAD_LEFT);
// Verifica se o numero de digitos informados é igual a 11
if (strlen($cpf) != 11) {
return false;
}
// Verifica se nenhuma das sequências invalidas abaixo
// foi digitada. Caso afirmativo, retorna falso
else if ($cpf == '00000000000' ||
$cpf == '11111111111' ||
$cpf == '22222222222' ||
$cpf == '33333333333' ||
$cpf == '44444444444' ||
$cpf == '55555555555' ||
$cpf == '66666666666' ||
$cpf == '77777777777' ||
$cpf == '88888888888' ||
$cpf == '99999999999') {
return false;
// Calcula os digitos verificadores para verificar se o
// CPF é válido
} else {
for ($t = 9; $t < 11; $t++) {
for ($d = 0, $c = 0; $c < $t; $c++) {
$d += $cpf{$c} * (($t + 1) - $c);
}
$d = ((10 * $d) % 11) % 10;
if ($cpf{$c} != $d) {
return false;
}
}
return true;
}
}
//verifica se não enviado o formulario em branco
if($cpf !== ""){
//verifica se a funçao retornou "true" ou "false"
if(validaCPF($cpf)){
echo 1;
} else {
echo 0;
}
} else {
echo "Digite um CPF!";
}
?>
---------------------------------------------------------------------------------------------------------------------
Um exemplo funcionando pode ser visto abaixo:
Um abraço e até a próxima a todos(as)!
Para exemplificar o processo vamos gerar um CPF válido, calculando os dígitos verificadores de um número hipotético, 111.444.777-XX.
Calculando o Primeiro Dígito Verificador:
O primeiro dígito verificador do CPF é calculado utilizando-se o seguinte algoritmo. 1) Distribua os 9 primeiros dígitos em um quadro colocando os pesos 10, 9, 8, 7, 6, 5, 4, 3, 2 abaixo da esquerda para a direita, conforme representação abaixo:
| 1 | 1 | 1 | 4 | 4 | 4 | 7 | 7 | 7 |
| 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
2) Multiplique os valores de cada coluna:
| 1 | 1 | 1 | 4 | 4 | 4 | 7 | 7 | 7 |
| 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
| 10 | 9 | 8 | 28 | 24 | 20 | 28 | 21 | 14 |
3) Calcule o somatório dos resultados (10+9+...+21+14) = 162
4) O resultado obtido (162) será divido por 11. Considere como quociente apenas o valor inteiro, o resto da divisão será responsável pelo cálculo do primeiro dígito verificador.
Vamos acompanhar: 162 dividido por 11 obtemos 14 como quociente e 8 como resto da divisão. Caso o resto da divisão seja menor que 2, o nosso primeiro dígito verificador se torna 0 (zero), caso contrário subtrai-se o valor obtido de 11, que é nosso caso. Sendo assim nosso dígito verificador é 11-8, ou seja, 3 (três). Já temos portanto parte do CPF, confira: 111.444.777-3X.
Veja agora como implementar isso em PHP + jQuery:
Arquivo => index.html:
-------------------------------------------------------------------------------------------------------------------
<html>
<head>
<script src="js/jquery-1.2.6.pack.js" type="text/javascript"></script>
<script src="js/jquery.maskedinput-1.1.4.pack.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#cpf").mask("999.999.999-99");
});
//minha funcao validadora
function enviaValor(){
var valor = $('#cpf').val();
//console.log($('#cpf').val());
$(document).ready(function(){
//efetuando a gravação e contabilização de pratos mais acessados
$.post(
"./validar.php",
{ codigo: valor },
function(data) {
//console.log(data);
if(data == 1) {
$("#saida").html("<span style='color: green'>CPF Válido!</span>");
} else {
$("#saida").html("<span style='color: red'>CPF Inválido!</span>");
}
}
);
});
}
</script>
</head>
<title>
Validar CPF
</title>
</html></pre>
<body>
<form action="" id="form1" method="post" name="form1">
<div align="center">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%px;">
<tbody>
<tr>
<td height="40">
<div align="center">
<input class="saida" id="cpf" name="cpf" type="text" />
</div>
</td>
</tr>
<tr>
<td>
<div align="center">
<input id="botaoValidarCPF" name="botaoValidarCPF" onclick="enviaValor();" style="cursor: pointer; font-size: 15px;" type="button" value="Validar CPF" />
</div>
<div align="center" class="style7" id="saida">
<span style="color: green;"></span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</form>
</body>
------------------------------------------------------------------------------Observe que linha onde é importado o arquivo .js, é uma biblioteca (jquery.maskedinput) de mascaras javascript e é aplicada na linha 7;
Em seguida é criado uma função javascript de nome "enviaValor()" que possui uma requisição Ajax jQuery $.post que envia o valor do campo de formulario para o arquivo PHP "validar.php" receber e procesar da seguinte forma:
---------------------------------------------------------------------------------------------------------------------
<?php
//recebe o dado vindo da pagina via Ajax jQuery
$cpf = (isset($_REQUEST['codigo'])) ? $_REQUEST['codigo'] : "" ;
//funcao que retira o ponto e traço e valida o CPF com o calculo do algoritmo
function validaCPF($cpf = null) {
// Verifica se um número foi informado
if(empty($cpf)) {
return false;
}
// Elimina possivel mascara
$cpf = ereg_replace('[^0-9]', '', $cpf);
$cpf = str_pad($cpf, 11, '0', STR_PAD_LEFT);
// Verifica se o numero de digitos informados é igual a 11
if (strlen($cpf) != 11) {
return false;
}
// Verifica se nenhuma das sequências invalidas abaixo
// foi digitada. Caso afirmativo, retorna falso
else if ($cpf == '00000000000' ||
$cpf == '11111111111' ||
$cpf == '22222222222' ||
$cpf == '33333333333' ||
$cpf == '44444444444' ||
$cpf == '55555555555' ||
$cpf == '66666666666' ||
$cpf == '77777777777' ||
$cpf == '88888888888' ||
$cpf == '99999999999') {
return false;
// Calcula os digitos verificadores para verificar se o
// CPF é válido
} else {
for ($t = 9; $t < 11; $t++) {
for ($d = 0, $c = 0; $c < $t; $c++) {
$d += $cpf{$c} * (($t + 1) - $c);
}
$d = ((10 * $d) % 11) % 10;
if ($cpf{$c} != $d) {
return false;
}
}
return true;
}
}
//verifica se não enviado o formulario em branco
if($cpf !== ""){
//verifica se a funçao retornou "true" ou "false"
if(validaCPF($cpf)){
echo 1;
} else {
echo 0;
}
} else {
echo "Digite um CPF!";
}
?>
---------------------------------------------------------------------------------------------------------------------
Um exemplo funcionando pode ser visto abaixo:
Um abraço e até a próxima a todos(as)!
Marcadores:
Javascript,
PHP
20/02/2014
Como criar uma loja on-line: 10 perguntas que você deve fazer antes de contratar um desenvolvedor de comércio eletrônico
Author: Natalie Beigel
Você pretende contratar um profissional para criar a sua loja on-line? Se você não é um desenvolvedor e tem pouco conhecimento de tecnologia, pode ser difícil contratar a pessoa certa para o seu projeto. Não se preocupe, você não é o único. Estamos aqui para ajudar.
Para ajudar você a tomar a melhor decisão, reunimos 10 perguntas que você deve fazer antes de contratar um desenvolvedor de comércio eletrônico para criar a sua loja on-line. Verifique se você tem todas as respostas a essas perguntas importantes antes de gastar tempo e dinheiro.
1. Qual software de comércio eletrônico você usa para criar lojas on-line?
Esse é um aspecto que você deve pesquisar detalhadamente antes de entrevistar os candidatos. Você quer um software de comércio eletrônico que seja completo, intuitivo e fácil de gerenciar. Afinal, depois que o desenvolvedor criar o seu site, você é que trabalhará com ele todos os dias.
Na sua pesquisa, cuidado com a grande quantidade de software de comércio eletrônico de alto custo disponível no mercado. Não é interessante ficar preso a uma solução que cobra taxas mensais elevadas ou comissões sobre todas as suas vendas. A PrestaShopé uma solução completamente gratuita, com todas as ferramentas necessárias para gerenciar sua loja on-line com eficácia. Além disso, é muito flexível, permitindo que o desenvolvedor personalize toda a loja de acordo com suas preferências.
2. Qual é a sua experiência na criação de sites de comércio eletrônico?
Não permita que o desenvolvedor responda com uma grande quantidade de termos técnicos. Peça exemplos reais de sites de comércio eletrônico criados pelo desenvolvedor. Examine cuidadosamente a experiência do usuário, os recursos e o design de cada site mencionado. Além disso, informe resumidamente o que você procura e solicite exemplos de lojas on-line já existentes que ele seria capaz de replicar.
Você não quer que o seu site fique desatualizado rapidamente. Consulte as tendências de design da Econsultancy para 2014.
3. Quais são as condições do nosso contrato?
É imprescindível que você faça um contrato por escrito, estabelecendo estas condições:
Taxas e condições de pagamento: alguns desenvolvedores preferem ser pagos por hora, enquanto outros apresentarão um preço para todo o projeto.
Taxas adicionais: você deve entender exatamente o que está incluído nas taxas. Algumas taxas “surpresa” comuns que você deve negociar desde o início são: hospedagem, certificados SSL, recursos adicionais, temas e soluções de backup.
Prazos: defina uma data ou pontos de verificação para a conclusão do projeto ou de diversos elementos do projeto. Inclua uma cláusula no contrato que estabeleça a abordagem para atrasos.Inclua todas as expectativas: anote tudo o que você espera que seja entregue no site final.
Após o desenvolvimento: quais são as taxas de manutenção depois da conclusão do projeto? Com que rapidez você terá ajuda?
Taxas adicionais: você deve entender exatamente o que está incluído nas taxas. Algumas taxas “surpresa” comuns que você deve negociar desde o início são: hospedagem, certificados SSL, recursos adicionais, temas e soluções de backup.
Prazos: defina uma data ou pontos de verificação para a conclusão do projeto ou de diversos elementos do projeto. Inclua uma cláusula no contrato que estabeleça a abordagem para atrasos.Inclua todas as expectativas: anote tudo o que você espera que seja entregue no site final.
Após o desenvolvimento: quais são as taxas de manutenção depois da conclusão do projeto? Com que rapidez você terá ajuda?
4. Qual será a forma de comunicação?
Esta pergunta é frequentemente esquecida, mas é importante definir o meio de comunicação durante todo o desenvolvimento do site. Você deve ser envolvido em todo o processo e não apenas na entrega.
Decida se você usará Skype, Google Hangout ou MSN para se comunicar regularmente. Eu recomendo usar uma ferramenta de gestão de projetos, como Asana ou Basecamp, para organizar todas as comunicações e manter você atualizado sobre o andamento do site.
5. Quais recursos especiais você pode desenvolver para a minha loja on-line?
Essa pergunta pode ser um pouco técnica, mas o que você precisa é que o desenvolvedor especifique claramente qual a carga de trabalho que será aplicada ao site.
- Você está usando um tema já existente ou criando um tema personalizado?
- Você criará recursos novos?
- Não deixe de abordar esses itens no contrato por escrito
- Você criará recursos novos?
- Não deixe de abordar esses itens no contrato por escrito
Para projetos que usarem a PrestaShop, confira vários recursos inovadores na loja oficial da PrestaShop.
6. O site de comércio eletrônico estará preparado para dispositivos móveis?
Hoje, esse requisito é obrigatório. Você quer oferecer aos seus clientes uma experiência de compra integrada em dispositivos móveis e tablets. Pergunte ao desenvolvedor o que ele fará para ter certeza de que o site estará preparado para atender dispositivos móveis com rapidez.
Este artigo ajudará você a entender os diferentes elementos necessários para otimizar seu site de comércio eletrônico para visitantes móveis.
7. Como você facilitará a edição e o gerenciamento do site?
Quando a sua loja on-line estiver operando, você terá de atualizar conteúdo, fotos, banners, etc. Pode até ser necessário adicionar ou modificar recursos no site. Descubra o que o desenvolvedor fará para ter certeza de que a edição do site não será um problema constante.
Você deve ter acesso a tudo. Um dia, esse desenvolvedor pode deixar de trabalhar com você e será necessário compartilhar senhas e código com um novo desenvolvedor. Verifique se você tem todos os arquivos, logins e senhas. Você deve ser o proprietário de todas as contas associadas ao seu site. Além disso, recomendo que o desenvolvedor explique como mantém cópias de backup do seu site.
8. Quais conceitos básicos de SEO serão integrados?
O seu desenvolvedor deve implantar as melhores práticas de SEO e facilitar a atualização, caso sua estratégia de SEO seja alterada. Todo o dinheiro investido no seu site será desperdiçado se os clientes não conseguirem encontrar sua loja on-line. Veja este tutorial rápido sobre os elementos básicos para otimizar o SEO para a sua loja on-line.
9. Como você me ajudará a acompanhar os principais indicadores de desempenho (KPIs)?
Essa questão deve ser abordada desde o início. Entenda como ele medirá o desempenho do site. A boa notícia é que uma grande quantidade de KPIs pode ser exibida automaticamente no back office da PrestaShop. No entanto, o desenvolvedor deve demonstrar como medirá elementos específicos do seu site usando o Google Analytics. Leia mais sobre os principais indicadores de desempenho para sites de comércio eletrônico.
10. Como serão executados os testes?
A sua loja on-line pode ser fantástica, mas, se não funcionar corretamente, será inútil. O desenvolvedor deve ter melhores práticas específicas para testar o site. Verifique se ele usa um ambiente de teste e não altera diretamente a loja em operação sem antes testar a alteração no ambiente de teste. Peça que ele explique o processo de teste de todo o site, a documentação de problemas e as correções rápidas.
Essas informações ajudarão a evitar o pagamento de suporte adicional após a conclusão do projeto. Verifique se os testes serão executados em diferentes dispositivos móveis, navegadores, computadores e países.
Este artigo da Practical Ecommerce oferece uma longa lista de verificação sobre o que deve ser testado em um site de comércio eletrônico.
Agora, você está pronto para procurar o desenvolvedor perfeito para criar a sua loja on-line.
Sabemos que há muitas opções de software de comércio eletrônico disponíveis. Mas, se você está procurando uma solução completa, fácil de usar e totalmente personalizável, PrestaShop é a resposta. Assista ao vídeo sobre a próxima versão, PrestaShop v.1.6, e veja todos os benefícios oferecidos aos comerciantes on-line.
Caso queira contratar um profissional para montar sua loja virtual de pequeno ou médio porte, fale comigo mesmo comentando neste post! :)
Fonte: prestashop.com
Marcadores:
tecnologia
19/02/2014
Site para uso de várias fotos e imagens tematicas variadas
Neste post do site abaixo segue uma relação de sites que disponibilizaram muitas fotos para se usar em diferentes projetos:
- Little Visuals http://littlevisuals.co/
- Unsplash http://unsplash.com/
- Death to the Stock Photo http://join.deathtothestockphoto.com/
- New Old Stock http://nos.twnsnd.co/
- Superfamous (requires attribution) http://superfamous.com/
- Picjumbo http://picjumbo.com/
- The Pattern Library http://thepatternlibrary.com/
- Gratisography http://www.gratisography.com/
- Getrefe http://getrefe.tumblr.com/
- IM Free (requires attribution) http://imcreator.com/free
- SplitShire http://splitshire.com/
Marcadores:
variedade
Assinar:
Postagens (Atom)


