Arquivo de ‘ Customização

Como sistema de blogs, o WordPress é um ótimo gerenciador de contatos 06 fevereiro 2008 às 8:31 pm por Rodrigo Ghedin

A versatilidade do WordPress é conhecida e comprovada. Não é raro nos impressionarmos com um site, e logo em seguida arregalar ainda mais os olhos, incrédulos com um singelo “powered by WordPress” no rodapé do mesmo.

Mesmo já tendo visto muita coisa legal baseada no sistema, ainda assim vez ou outra sou surpreendido. A última dessas foi agora pouco: WP-ContactManager. Explicando em poucas palavras, trata-se de um conjunto de tema, plugins e configurações, que, pasmém, transformam o WordPress num genuíno gerenciador de contatos! Sim, tipo aquela caderneta velha que eu, você e um monte de gente ainda deixa ao lado do telefone…

WP-ContactManager.

O passo-a-passo de como fazer a sua está neste link (em inglês). Há uma demonstração disponível, aqui. A única diferença dela para a que você pode fazer em casa (ou no seu servidor), é que esta é aberta ao público, ao passo que, a do tutorial, é fechada apenas para cadastrados no blog.

É que não sou alguém do tipo super popular, pois caso contrário, já estaria tentando instalar esse negócio…

Dividir posts em páginas Por Ezequiel dia 28 de janeiro de 2008 às 5:28 pm | Imprimir este post

Aqui estou eu de novo, com mais uma dica!
Pois é, já faz algumas atualizações que o Wordpress é capaz de dividir posts em páginas.
Se você não sabe do que se trata, fique sabendo que não é o único. A maioria dos usuários não conhece nem 10% das funções existentes no Wordpress. Isso talvez, por que a maioria não tenta procurar diretamente nas “Template Tags“.

Às vezes quando um post se prolonga demais, acaba se tornando muito extenso. Quando o usuário visualizar este post, com certeza seus olhos entraram em fadiga (pelo menos os meus sim =P). A solução para isso é dividir seus posts em páginas. Na verdade isso é muito simples.

O editor do Wordpress não mostra a ação “wp_page”. Esta ação funciona basicamente como a ação “wp_more”. Só que ao invés de adicionar “<!––more––>” ao post, adiciona-se “<!––nextpage––>”. Para cada “<!––nextpage––>” dentro do post, equivale a uma página. Ou seja, se dentro do post tiver dois atributos “<!––nextpage––>”, o post será dividido em duas páginas. Estas divisões são feitas a partir do que vem depois de cada atributo “<!––nextpage––>”. Assim, a primeira página é o que vem antes do primeiro “<!––nextpage––>”.

Bom, agora que você já sabe dividir os posts, precisamos disponibilizar os links para as páginas.
Para isso, usaremos a função “wp_link_pages”.

Você deve adicionar a tag abaixo (isso se seu tema não tiver a mesma) dentro do “loop” do arquivo “single.php”, que está situado dentro da pasta do seu tema atual.

  1. <?php wp_link_pages(’before=<strong>Páginas: </strong>&after=</p>&next_or_number=number’); ?>

Pronto! Seu tema está habilitado para exibir as páginas.
Para mais informações sobre a tag “wp_link_pages”, clique aqui.

Só mais uma coisa. Se você quiser que o seu editor mostre o botão para adicionar o atributo “<!––nextpage––>” abra o arquivo “wp-includes/js/tinymce/tiny_mce_config.php”. Localize a linha “32″, onde há isso:

  1. $mce_buttons = apply_filters(’mce_buttons’, array(’bold’, ‘italic’, ’strikethrough’, ’separator’, ‘bullist’, ‘numlist’, ‘outdent’, ‘indent’, ’separator’, ‘justifyleft’, ‘justifycenter’, ‘justifyright’, ’separator’, ‘link’, ‘unlink’, ‘image’, ‘wp_more’, ’separator’, ’spellchecker’, ’separator’, ‘wp_help’, ‘wp_adv’, ‘wp_adv_start’, ‘formatselect’, ‘underline’, ‘justifyfull’, ‘forecolor’, ’separator’, ‘pastetext’, ‘pasteword’, ’separator’, ‘removeformat’, ‘cleanup’, ’separator’, ‘charmap’, ’separator’, ‘undo’, ‘redo’, ‘wp_adv_end’));

Localize no meio de tudo isso ‘wp_more’ e ao lado deste adicione ‘wp_page’. Salve o documento e pronto! Agora do lado do botão para adicionar o atributo “<!––more––>”, haverá o botão para adicionar o atributo “<!––nextpage––>”

Até a próxima!

O papel que o autor do comentário exerce no blog Por Ezequiel dia 26 de janeiro de 2008 às 9:43 am | Imprimir este post

Oi, eu sou o Ezequiel e venho, a partir de hoje, compartilhar dicas, truques e algumas informações sobre o Wordpress aqui no pBlog. Como este é meu primeiro post, nada mais justo do que eu postar algo que seja útil, certo? Esta é uma dica interessante para quem possui um número grande de usuários cadastrados. Na hora de visualizar os comentários, é difícil saber quem tem um papel importante dentro do blog e quem não tem. Pois bem, com o tutorial abaixo, você poderá Identificar qual papel o autor do comentário exerce no blog e outras coisas mais. Mas antes de tudo, vamos entender esses papéis.
Todos os usuários no Wordpress possuem um nível (level), quanto mais alto esse nível, mais importante é o papel do usuário dentro do blog. Abaixo explico resumidamente cada papel.

  • Subscriber (Assinante): Este é o papel mais simples que um usuário pode ter. O nível de um usuário assinante é “0” (zero). Permite apenas ao usuário trocar algumas informações de seu perfil e visualizar o Dashboard.
  • Contributor (Contribuinte): Este usuário pode contribuir com posts ao blog, mas estes posts passam por uma aprovação. O nível de um contribuinte deve ser “1”. Permite visualizar o Dashboard, escrever (sob aprovação), gerenciar posts (apenas de sua autoria) e trocar informações do perfil.
  • Author (Autor): Os usuários autores possuem cartão verde para publicar e editar posts, sem estes terem que passar pela aprovação do adminsitrador para serem publicados. O nível de um usuário autor é de “2” a “6”. Permite visualizar o Dashboard, escrever, gerenciar posts (apenas de sua autoria), fazer uploads e trocar informações do perfil.
  • Editor: Os editores podem publicar e editar qualquer post. O nível para um usuário editor deve ser de “7” a “9”. Permite visualizar o Dashboard, escrever, gerenciar posts, categorias, comentários, links e trocar informações do perfil.
  • Administrator (Administrador): Os administradores exercem o papel mais importante dentro do blog, estes podem fazer o que quiser. Todas as ações estão abertas para eles. O nível de um administrador deve ser “10”.

Para mais informações sobre os tipos de usuários, clique aqui.

Basicamente o código retornará algo que você especificar para cada tipo de usuário. Dentre esses acima que especifiquei e mais dois: Super Administrador (Usuário de ID igual a “1”, o dono do blog) e outro que retornará se é um visitante, ou seja, não é um usuário registrado.

Bom, mãos à obra:

Abra o arquivo “comments.php” que está dentro da pasta do tema que esta usando. Localize esta linha:

<?php foreach ($comments as $comment) : ?>

Esta requisição “foreach” irá puxar os comentários e tudo que estiver depois disso e antes do encerramento:

<?php endif; ?>

Será o que irá aparecer em cada comentário. Por isso o código abaixo deve estar dentro destes.

Aplique o seguinte código onde desejar, mas dentro do lugar que falei acima.

  1. <?php $user_comment = get_userdata($comment->user_id); ?>
  2. <?php if(!$user_comment->ID) { ?>
  3. <p>Este usuário não é registrado no blog</p>
  4. <?php } elseif($user_comment->ID == 1) { ?>
  5. <p>Super Administrador</p>
  6. <?php } elseif($user_comment->user_level == 0) { ?>
  7. <p>Assinante (Subscriber)</p>
  8. <?php } elseif($user_comment->user_level == 1) { ?>
  9. <p>Contribuinte (Contribuitor)</p>
  10. <?php } elseif($user_comment->user_level > 1 & $user_comment->user_level <= 6) { ?>
  11. <p>Autor (Author)</p>
  12. <?php } elseif($user_comment->user_level > 6 & $user_comment->user_level <= 9) { ?>
  13. <p>Editor (Editor)</p>
  14. <?php } elseif($user_comment->user_level == 10) { ?>
  15. <p>Administrador (Administrator)</p>
  16. <?php } ?>

Por hoje é só! Espero que tenham gostado.

Evitando problemas ao desativar um plugin Por Érico Oliveira dia 23 de janeiro de 2008 às 4:28 pm | Imprimir este post

Quantas vezes eu já desabilitei um plugin e só depois percebi o erro que apareceu no blog em virtude desta mudança. Isto é muito comum porque vários plugins necessitam adicionar códigos ao tema, mas ao mesmo tempo é muito simples resolver, basta adicionar a condicional “IF”. Assim a condicional verificará antes se o plugin existe (e está ativado) antes de executar o código.
Vamos ver como fica em um exemplo prático utilizando o plugin Popularity Contest. Na instalação do plugin é necessário adicionar o seguinte código para exibir a lista dos posts mais populares:

  • <?php akpc_most_popular(); ?>

Para que não ocorra nenhum erro em seu blog caso você desative o plugin, adicione o código desta forma:

  • <?php if(function_exists(’akpc_most_popular’)) { akpc_most_popular(); } ?>

É um pequeno trabalho adicional que vale muito a pena.

Fonte: HackWordPress

Habilite Gravatars nos comentários do seu blog Por Érico Oliveira dia 11 de janeiro de 2008 às 6:23 pm | Imprimir este post

Gravatar significa globally recognized avatar e permite, depois de realizar o cadastrado, associar um avatar a um endereço de email e desta forma exibir uma imagem junto a seus comentários nos blogs onde o sistema está habilitado, como vocês já podem ver aqui no pBlog. :)

Fazia algum tempo que tinha vontade de habilitar aqui no blog e depois que a Automattic, empresa proprietária do WordPress, adquiriu o site Gravatar no ano passado, resolvi enfim modificar o template dos comentários para adicionar o Gravatar. Não me surpreenderia se nas próximas versões do WordPress os temas Default e Classic já vierem com os Gravatars habilitados.

Existem alguns plugins que adicionam os Gravatars, mas preferi inserir o código diretamente dentro do tema. São apenas algumas linhas que você deve adicionar logo após “if($comment_type == ‘comment’) {“, ou onde preferir, no arquivo comments.php:

  1. <?php
  2. if ( !empty( $comment->comment_author_email ) ) {
  3. $md5 = md5( $comment->comment_author_email );
  4. $default = urlencode( ‘http://www.seusite.com.br/gravatar.gif’ );
  5. echo "<img style=’float: right; margin-left: 10px;’ src=’http://www.gravatar.com/avatar.php?gravatar_id=$md5&amp;size=60&amp;default=$default’ alt=’gravatar’ />";
  6. }
  7. ?>

Perceba na linha 4 que existe uma url para a imagem default caso o usuário não possua cadastro no Gravatar, modifique-a para exibir a sua imagem. Modifique também o style na linha 5 para que se adeque melhor ao seu tema. Bom proveito!

Próximo Post, Post Anterior Por Érico Oliveira dia 07 de dezembro de 2007 às 3:50 pm | Imprimir este post

Um recurso interessante que pode gerar mais pageviews no seu blog e aumentar a permanência do vistante, porém pouco utilizado nos temas atuais, é a opção de links de navegação que permitem ao usuário acessar o post anterior ou próximo post. Já adicionei este recurso aqui no pBlog e você pode visualizar acessando a página de qualquer notícia.

Para adicionar estes links, basta inserir o código abaixo, logo após <?php the_content(); ?> no arquivo single.php do seu template.

  1. <?php next_post_link(’<p>Pr&oacute;ximo post: %link</p>’); ?>
  2. <?php previous_post_link(’<p>Post anterior: %link</p>’); ?>

Como separar os comentários dos trackbacks/pingbacks Por Érico Oliveira dia 02 de novembro de 2007 às 1:24 pm | Imprimir este post

Já faz algum tempo que vinha pensando em separar os comentários dos trackbacks/pingbacks aqui no pBlog, é algo que já tinha visto em alguns blogs e acho muito útil. Então decidi que hoje não só descobriria como fazer, como implementaria no blog e escreveria um post sobre o assunto.

Para minha surpresa foi bem fácil de encontrar, entrei no Google e procurei: wordpress separate comments trackbacks, e a resposta veio logo nos primeiros resultados. Escolhi o resultado do site Hack WordPress, por motivos óbvios e nele encontrei um passo-a-passo simples e direto.

Primeiro faça um backup do arquivo comments.php do seu tema, pois se acontecer algum problema você terá o original em mãos. Vamos as modificações:

1. Abra o arquivo comments.php do seu tema e localize a seguinte linha:

<?php foreach ($comments as $comment) : ?>

2. Acrescente imediatamente abaixo o seguinte código:

<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == ‘comment’) { ?>

3. Um pouco mais abaixo localize a linha:

<?php endforeach; /* end for each comment */ ?>

4. E adicione este código logo em cima:

<?php } /* End of is_comment statement */ ?>

Desta forma iremos exibir apenas os comentários. Agora vamos criar outro loop para exibir apenas os trackbacks/pingbacks.

5. Procure pela linha de código semelhante a esta:

<?php else : // this is displayed if there are no comments so far ?>

6. E adicione imediatamente acima o seguinte código:

<h3>Trackbacks</h3>
<p>Trackback URL para este artigo:<br /><?php trackback_url(); ?></p>
<ol>
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != ‘comment’) { ?>
<li><?php comment_author_link() ?></li>
<?php } ?>
<?php endforeach; ?>
</ol>

Você pode e deve fazer os ajustes necessários nesta última parte do código para que se adeque melhor ao seu tema, mudando os estilos e adicionando as classes do seu CSS.

Lembre-se de configurar seu blog e posts para que permitam a exibição de trackbacks/pingbacks.

p.s. Adicionei um comentário e criei um trackback em um blog de teste que tenho no WordPress.com para exibir logo o resultado desta customização. :)

Combinação perfeita para manipular imagens no blog Por Érico Oliveira dia 19 de outubro de 2007 às 4:10 pm | Imprimir este post

Atualmente utilizo dois plugins para gerenciar imagens aqui no pBlog, um deles é o Flexible Upload e o outro é o Lightbox JS. Com esta dupla ativada meu trabalho diminuiu bastante para inserir imagens no blog.

O Flexible Upload permite redimensionar o thumbnail e a imagem original no momento do upload, como você pode ver na imagem abaixo.
Flexible Upload

E o Lightbox JS é um efeito que permite, ao clicar em um thumbnail, exibir a imagem em seu tamanho original na mesma página. Clique na imagem acima e você verá do que estou falando.

O mais legal é que você não precisará configurar nada (além de fazer o upload dos plugins e ativá-los) para que tudo isto funcione. O Flexible Upload já vem configurado por default utilizar o Lightbox JS para exibir as imagens ao clicar no thumbnail. Recomendo a todos a instalação destes plugins, realmente muito úteis.