Como destacar a sintaxe do seu código em um blog wordpress

O uso de realce de sintaxe, destaque de sintaxe ou, em inglês, syntax highlighting é muito usado para tornar a leitura de código fonte de scripts, programas ou comandos mais fácil.
Neste texto, pretendo mostrar 3 métodos práticos para obter este efeito na plataforma do WordPress (não sei como se faz isto no blogger etc.)
Um deles envolve o uso de plug in e pode ser o mais fácil de implementar. As outras 2 formas são mais leves, porém carecem da sofisticação do uso de um plug in específico.
Só para ficar claro, os métodos listados só foram testados no modo de escrita “texto puro”. Como nunca usei o editor “Visual” do WordPress, não sei se funcionam lá. 😉

Instale o plugin Syntax Highlighter Evolved

Desenvolvido pelo desenvolvedor russo, Alex Gorbatchev, o Syntax Highlighter Evolved, permite aplicar a sintaxe ao seu código, respeitando as mais diversas linguagens de programação.
De código aberto e com desenvolvimento ativo, o plug in pode ser instalado com o toque de um botão na tela, como qualquer outro.
syntax highlighter evolved screenshot
Faça busca pelo plug in na tela de instalação do painel administrativo do WordPress ou se dirija à pagina oficial do desenvolvedor, dentro da plataforma.
Este recurso é muito eficiente para destaque a cada linha de seu código. Além disto, funciona bem com a maioria dos temas do WordPress e fica bem na tela do celular.
Infelizmente, ele tem algumas desvantagens que precisam ser consideradas:

  • É um plug in a mais. Se você já está usando outros, este será mais um para adicionar problemas segurança e lentidão ao seu site.
  • Torna seu site lento. Mesmo que você não esteja exibindo qualquer código fonte em uma página, o plug in e seu javascript são sempre carregados.

O autor é bastante ativo no WordPress, responde bem bug reports e mantém o seu trabalho atualizado (embora já seja um código estável) — o que pode minimizar os problemas com segurança.

Configure o seu CSS para exibir código

Outra solução, descrita aqui, consiste em adicionar uma tag PRE, ao seu CSS — que da destaque geral ao código.

Exemplo de resultado da tag <pre>
long some_function();
/* int */ other_function();

/* int */ calling_function()
{
    long test1;
    register /* int */ test2;

    test1 = some_function();
    if (test1 > 0)
          test2 = 0;
    else
          test2 = other_function();
    return test2;
}

Como é possível ver, no exemplo acima, não há realce da sintaxe de cada peça do código, com o uso da tag ‘pre’.
O realce é para o código, como um todo.
Para aplicar esta solução, entre na sua conta do WordPress como administrador e entre no Painel de Controle da plataforma.
Em seguida, selecione o item Aparência/Editor, na coluna da esquerda.
captura de tela do wordpress - Aparência
Acrescente o seguinte código, ao arquivo ‘styles.css’:

pre {
    margin-bottom: 22px;
	font-family: Consolas, Monaco, "Courier New", Courier, monospace;
	font-size: 12px;
	overflow: auto;
	background: #eee;
	padding: 10px;
	border: 1px solid #ddd;
	font-style: normal;
    font-weight: normal;
}

Depois de salvo, a tag poderá ser usada, da seguinte forma, dentro de qualquer texto:

<pre>
long some_function();
/* int */ other_function();

/* int */ calling_function()
{
long test1;
register /* int */ test2;

test1 = some_function();
if (test1 > 0)
test2 = 0;
else
test2 = other_function();
return test2;
}
</pre>


Use a tag <code>

Este método, tal como o anterior, pode não ficar muito bom na tela de um celular — dependendo do tema usado.
Mas, se tudo funcionar visualmente bem e você ficar satisfeito(a), use o que achar melhor.
O uso do ‘code’, obedece as mesmas regras do uso do ‘pre’.
Este método tem a vantagem de que você não precisa configurar ou instalar nada. É só usar.
Veja um exemplo do uso:
<code>
long some_function();
/* int */ other_function();

/* int */ calling_function()
{
long test1;
register /* int */ test2;

test1 = some_function();
if (test1 > 0)
test2 = 0;
else
test2 = other_function();
return test2;
}
</code>


Veja o resultado, abaixo:
long some_function();
/* int */ other_function();

/* int */ calling_function()
{
long test1;
register /* int */ test2;

test1 = some_function();
if (test1 > 0)
test2 = 0;
else
test2 = other_function();
return test2;
}


A tag ‘code’ é descrita no arquivo ‘style.css’ e você pode fazer alterações nela, se quiser.
Se prefere usar algum outro método para realçar o código que você publica no WordPress, conte-nos mais sobre o assunto, nos comentários.

Remova as revisões do banco de dados para melhorar a performance do WordPress.

As revisões são versões ou cópias de segurança de seus posts no WordPress, gravadas a cada vez em que você salva um rascunho (ou draft).
Se você é do tipo que grava “preventivamente” um rascunho a cada parágrafo digitado, provavelmente terá várias revisões salvas para cada artigo criado em seu blog.
WordPress Oficial logo
O recurso é muito útil e pode salvar horas de trabalho, em caso de perda acidental de conexão (entre outras situações possíveis).
No que toca as revisões, o comportamento padrão do WordPress, é:

  • fazer uma gravação automática a cada 60 segundos — o que gera uma cópia do seu texto, como revisão e
  • guardar até 3 revisões.

Por que você deve remover as revisões do banco de dados

Este texto não trata da desativação do recurso de criar revisões, do WordPress.
As revisões continuarão a ser criadas, após a realização do procedimento.
Como já disse, é um recurso de segurança que o WordPress provê a seus usuários e que têm grande valor no momento em que você mais precisar.
Isto posto, é importante que se diga que ter várias versões de seus posts gravadas, nem de longe, equivale a uma política séria de fazer backup do seu site.
No máximo, as revisões ajudam a retomar um trabalho interrompido abruptamente a partir de um certo ponto ou de uma linha de pensamento.
Todas as revisões de artigos escritos há um ano ou mais, para a maioria das pessoas, não têm utilidade alguma, contudo.
Todos os registros que não tem utilidade, estão ocupando espaço à toa no seu banco de dados.
Portanto, com o objetivo de manter o seu banco enxuto — em prol da eficiência e da velocidade do seu site — é que este artigo propõe remover este “excesso de bagagem”.
O processo é simples e seguro.
Pode ser realizado por usuários leigos em MySQL, sem problema algum. Ainda assim, tenho 2 recomendações a fazer, antes de prosseguir:

  • Verifique se seus backups estão em dia. Se estiverem, faça mais uma cópia de segurança de todo o conteúdo do seu blog (só por precaução).
  • Se não se sentir seguro, consulte o administrador do banco de dados do seu provedor ou algum usuário mais experiente, antes de seguir em frente.

Além disto, sugiro que você leia o texto inteiro, antes de aplicar o procedimento.
Se você não sabe como acessar o banco de dados do seu site, este texto não é para você. Desculpe.

Como remover os registros de revisões do meu blog WordPress?

Você precisa acessar o banco de dados do seu site e executar uma query SQL, que vai realizar a tarefa de encontrar os posts marcados como ‘revision’ e apagá-los.
Uma das formas de acessar o banco de dados de um site WordPress é com o uso do PhpMyAdmin, presente em muitas instalações — mas você pode usar a que lhe for mais conveniente.
Captura de tela de 2015-12-05 11:11:29
Uma vez conectado ao seu banco de dados, siga os passos:

  • selecione a tabela que contém seus posts.
    Fique atento ao fato de que ela provavelmente terá um prefixo — portanto adeque o meu exemplo à sua realidade aí.
    O nome da minha tabela, que contém posts, é wp_bch4ind_posts — em destaque, o meu prefixo.
    Se você estiver usando o PhpMyAdmin, selecione a tabela de posts, clicando nela, no painel à esquerda.
  • Em seguida, clique no botão SQL, na barra de ferramentas superior do PhpMyAdmin.
  • Dentro do editor SQL, digite a seguinte declaração:
    DELETE FROM wp_posts WHERE post_type = "revision";
    

    Mais uma vez, não esqueça de substituir o termo wp_posts pelo nome correto da sua tabela.

O que esta query faz é remover todos os posts do seu banco de dados cujo tipo seja igual a ‘revision’.

Resultados que o procedimento oferece

Este procedimento deve ser adotado por quem deseja melhorar o desempenho do carregamento do seu blog para seus leitores.
Para saber quantas revisões você tem no banco de dados, use a seguinte declaração SQL:

SELECT * FROM wp_posts WHERE post_type = "revision";

Se você tiver menos de 1000 posts do tipo ‘revision’, provavelmente não sentirá diferença na velocidade de carregamento do conteúdo do site.
Ainda assim, manter o banco de dados enxuto deve fazer parte da política de manutenção do seu site.
Para obter melhorias significativas na performance do seu blog, várias outras medidas devem ser tomadas em conjunto com esta.
O plugin revisions, pode automatizar esta tarefa para você.
Mas, se você vem perseguindo a melhora de desempenho do seu site WordPress, instalar um novo plugin, talvez não seja a melhor ideia — embora você sempre possa desinstalá-lo, logo após o seu uso —. Você não vai precisar executar este procedimento mais de uma vez por ano, afinal.

Ferramentas de caching para WordPress

Se você tem um blog ou site rodando sobre a plataforma do WordPress, pode usufruir de algumas ferramentas e plugins de caching, que podem melhorar sensivelmente sua velocidade.
As dicas que seguem podem também ser úteis, caso você esteja experimentando alguma lentidão no acesso ao seu site.
Se você não está tendo problemas com spam, então é possível que o servidor esteja acionando o seu banco de dados MySQL mais do que deveria.
wordpress logo
Uma vez que o WordPress depende (e muito) do banco de dados, ele faz algumas consultas ao MySQL, para obter o conteúdo necessário para mostrar nas páginas do site.
Se você tem grandes sites linkando ou direcionando tráfego para você (que ótimo!) isto pode acabar criando um gargalo — lentidão no acesso ao seu conteúdo.

Ferramentas de caching e plugins

O caching é um dispositivo de memória intermediário, cuja função é acelerar o processo de entrega de dados.
Como ferramenta, ele é especialmente eficiente quando os mesmos dados são requisitados muitas vezes repetidas — pense nos seus posts mais lidos.
O WordPress tem, em seu repositório, uma boa quantidade de plugins disponíveis que prometem diminuir o tempo de carregamento das suas páginas e reduzir a carga de trabalho dos servidores no seu provedor.
Você precisa usar, pelo menos, um deles.

O caching consiste no armazenamento temporário e intermediário de informações requisitadas repetidas vezes no seu site.
Com este recurso, o usuário não chega a acionar o banco de dados para obter o conteúdo do seu site ou blog — e, portanto, pode demorar um pouco para ver as últimas atualizações feitas

Segue uma lista de plugins comuns, que podem ser usados para aumentar a eficiência com que suas páginas carregam para seus leitores.
Você pode encontrá-los na área administrativa do seu blog WordPress, no painel Plugins — use a caixa de busca para encontrá-los pelos seus nomes.
Catptura de de tela do painel administrativo WordPress

WP Super Cache

Cria um arquivo estático de seu site e o carrega, em vez de usar o PHP para gerar a informação.
Como continuação do projeto WP-Cache, este plugin inclui novos recursos.
Alguns provedores o fornecem junto com o serviço One-Click Install.
Para quem usa um serviço de shared hosting ou provedor compartilhado, esta é a melhor opção.

Hyper Cache

Este é provavelmente um dos plugins de caching mais fáceis de usar.
Se você achar o WP Super Cache muito complicado, o Hyper Cache costuma atender às necessidades da maioria dos usuários.

W3 Total Cache

Este plugin é também excelente e tem atraído elogios e atenção da comunidade.
Parte do hype que envolve esta ferramenta é que ela inclui recursos de CDN

CDN é uma sigla para “Content Delivery Networks” ou “redes de entrega de conteúdo”.
Trata-se de uma rede de servidores dispersos geograficamente.
Estes servidores armazenam conteúdos de sites em cache e o entregam a usuários baseados em sua localização geográfica.

Se a maior parte do seu público está localizado em uma área mais restrita (seu município ou estado), você provavelmente não precisa deste recurso.

WP Widget Cache

Este plugin trabalha em conjunto com os anteriores (acima), para melhorar o desempenho do seu site.
Seu foco é nos widgets e pode ser útil se você tiver muitos deles em uso


WordPress Oficial logo
Lembre-se que plugins também “pesam” no seu site e você não deve usá-los em excesso.
Há muitos outros plugins de cache disponíveis para WordPress, que você pode testar e ver se se adequam às suas necessidades e às de seu público.
Se quiser, comente sobre as soluções que você encontrou, nos comentários.

Qual a importância da taxa de rejeição no Google Analytics?

A taxa de rejeição do seu site pode ser considerada normal? Até que ponto alguém deve se preocupar com este dado do Google Analytics?
Por pior que seja a tradução da expressão, ela se refere às pessoas que chegaram a uma das páginas do seu site e foram embora após algum tempo, sem ter aberto outras páginas. Isto pode dar margem á inúmeras interpretações — com toda justiça.
Taxa de rejeição
O principal problema, em minha humilde opinião, é que o item de análise no Google Analytics está mau traduzido. Por outro lado reconheço que ele é de difícil tradução, mesmo.
Em inglês, o item é chamado bounce rate. A palavra bounce, neste caso, se refere a um movimento de voltar, semelhante ao de uma bola de borracha, ao bater em uma superfície dura.
Bouncing se refere a este bateu e voltou.
É estranho se pensar em rejeição, quando se observa esta bola batendo em uma parede e voltando.

Taxa de rejeição, no Google Analytics, não significa que alguém esteja te rejeitando

De modo algum.
Trata-se apenas de uma tradução ruim — por que, possivelmente, não havia outra melhor.

O Google não manter a palavra original, para usar uma tradução horrível, que cria uma sensação desagradável me parece injustificável. Já “traduzimos” e incorporamos aos nossos dicionários a palavra deletar, quando tínhamos equivalentes melhores em português — como apagar, remover ou eliminar. Então, por que não criar e usar baunce, bauncear etc?!

De acordo com o Google, bounce rate ou taxa de rejeição é o percentual de visitas únicas ou visitas em que uma pessoa sai do site pela mesma página que entrou, sem visitar qualquer outra (dentro do mesmo site).
Há inúmeros casos em que isto pode acontecer.
Chamar este comportamento de “rejeição” é profundamente inadequado e ajuda a dificultar a interpretação do que realmente está havendo no seu site. E eu vou mostrar por que.

Por que este assunto não merece a sua preocupação

O bounce rate não tem muito a ver com a qualidade do seu design ou do seu conteúdo. Ele tem mais a ver com a relevância.
Quem define a relevância do seu conteúdo é o seu visitante.
Mesmo tendo uma audiência engajada, ainda assim, poderia ter uma alta taxa de bouncing — o problema, se é que existe, não está, necessariamente, no seu site.
O bouncing está mais relacionado ao modo como as pessoas chegam ao seu site (referral traffic).
Considere o seguinte exemplo:


Um dos assinantes do seu site — alguém que gosta muito do que você escreve — abre seu cliente de email, de manhã e percebe que há uma notificação de post novo em seu site.
Ele clica no link, lê todo o seu artigo e vai cuidar da vida dele. Isto conta como “rejeição” ou bounce — ainda assim, estamos falando de um visitante engajado.


Mesmo eliminando a contagem de visitantes retornantes na análise e considerando apenas os novos visitantes, a taxa de bounce pode levar a erros de julgamento.
Se você ficar satisfeito com a informação dada por este artigo (e eu espero que sim) e sair desta página, sem ler nenhum outro de meus artigos (são centenas), sua visita vai contar como um bounce pro Google Analytics.
Se você clicar em um dos links sugeridos por este site e depois voltar para ler outra coisa — o Google já terá contado a ação como um bounce.
Cliques alternando entre domínios e subdomínios também contam como bounces. Neste caso, é como se um visitante não tivesse saído de dentro de um prédio. Ainda assim, o Google marca este movimento como “rejeição”.

Quais as taxas de rejeição normais?

Os diversos sites, na Internet, têm públicos alvo diferentes e, portanto, devemos esperar comportamentos diferentes entre a audiência de um site e a de outro.
O Kissmetrics tem um gráfico interessante que mostra alguns fatos sobre a taxa de rejeição e ajuda a desmistificar mais ainda este item de análise.
Veja a tabela:

Taxa de rejeição (bounce rate) Tipos de sites
10%-30% Portais e sites de serviços — Yahoo Groups, Terra, Ubuntu Forums etc.
20%-40% Sites de comércio varejista — Com uma política de tráfego bem orientada e boas campanhas.
30%-50% Sites de promoção ou geração de vendas (normalmente para outros sites).
40%-60% Sites de conteúdo relevante, com alta visibilidade nos mecanismos de busca.
70%-90% Páginas de aterrissagem ou páginas de chegada/entrada (landing pages) — que contenham uma única call to action (chamada para ação) ou link para outro site. Estas, obviamente, podem chegar a 100%.

Conclusão

Finalmente, a taxa de rejeição deve ser vista como um dado interessante sobre o comportamento do seu público. Apesar de ter um nome aterrorizante, não se trata de um monstro e você deve voltar a sua atenção a outros dados acerca da sua audiência.

Como implementar um cabeçalho rotativo e aleatório no blog, com PHP

Neste post, vou mostrar como mudar automaticamente e aleatoriamente as imagens do cabeçalho ou header, no seu blog, com um código bem simples em PHP.
Este código foi testado no WordPress, mas deve funcionar, com algumas alterações, em outras plataformas de blog.
Alguns temas, como o Thesis, do Chris, já têm esta função. Basta preparar as suas imagens e fazer o upload pro diretório /rotator do tema.

Prepare suas imagens

Antes de começar, edite e deixe prontas as imagens que você pretende usar no seu cabeçalho.
Para que o nosso pequeno script funcione, será necessário renomear as suas imagens. Elas devem ter o mesmo nome, com uma terminação numérica. pode ser algo assim: cabecalho_01.jpg.
Outra coisa importante, para o correto funcionamento do script, é que todas elas tenham a mesma extensão. Portanto, se uma for .jpg, todas as outras deverão também ser. Fotografias ficam melhor em JPG, outros tipos de imagens podem ficar melhor em PNG ou GIF.

Faça upload das suas imagens

Desde que você saiba exatamente a URL da sua imagem, não tem muita importância o local para onde você a está enviando. Pode ser interessante anotar o local em que elas se encontram:
http://nome-do-blog.com.br/imagens/cabecalho_01.jpg
Na hora de escrever o script, você vai precisar deste endereço completo.

Implementando o código

Se você estiver usando o WordPress, localize o arquivo header.php do seu tema e, na parte que se refere à imagem do cabeçalho, substitua pelo código abaixo, devidamente adaptado à sua situação:

<img src="http://nome-do-blog.com.br/imagens/cabecalho_0<?php echo(rand(1,5)); ?>.jpg" alt="meu banner" />

Sim. Tudo o que você vai precisar escrever em PHP é isso:

<?php echo(rand(1,5)); ?>
POSTS RELACIONADOS

Explicando a função rand()

A função rand, neste caso escolhe um número entre 1 e 5. Se você tiver 13 imagens para rotacionar, a função fica assim:

<?php echo(rand(1,13)); ?>

Simples, não é?