Posts Tagged ‘ tag

Como exibir tags em um menu dropdown 24 setembro 2008 às 9:51 pm por Érico Oliveira

Esta dica eu encontrei no blog Hack WordPress e achei muito interessante, por isso resolvi compartilhar com vocês. Exibir as tags é uma maneira muito eficaz de encontrar todos os posts de um determinado assunto, o problema está no fato de que todo blog possui uma quantidade enorme de tags e é impossível organizar um espaço para exibí-las todas de uma só vez. Pensando em como resolver isso, Jean-Baptiste Jung teve a idéia de colocar todas as tags em um menu dropdown, da mesma forma como muita gente já exibe suas categorias e o arquivo. Para isso Jean desenvolveu duas novas funções e para implementá-las você deverá copiar o código abaixo no arquivo functions.php do seu tema (se o arquivo não existir você deverá criá-lo).
[source language='php']
function dropdown_tag_cloud( $args = '' ) {
$defaults = array(
'smallest' => 8, ‘largest’ => 22, ‘unit’ => ‘pt’, ‘number’ => 45,
‘format’ => ‘flat’, ‘orderby’ => ‘name’, ‘order’ => ‘ASC’,
‘exclude’ => ”, ‘include’ => ”
);
$args = wp_parse_args( $args, $defaults );

$tags = get_tags( array_merge($args, array(’orderby’ => ‘count’, ‘order’ => ‘DESC’)) ); // Always query top tags

if ( empty($tags) )
return;

$return = dropdown_generate_tag_cloud( $tags, $args ); // Here’s where those top tags get sorted according to $args
if ( is_wp_error( $return ) )
return false;
else
echo apply_filters( ‘dropdown_tag_cloud’, $return, $args );
}

function dropdown_generate_tag_cloud( $tags, $args = ” ) {
global $wp_rewrite;
$defaults = array(
’smallest’ => 8, ‘largest’ => 22, ‘unit’ => ‘pt’, ‘number’ => 45,
‘format’ => ‘flat’, ‘orderby’ => ‘name’, ‘order’ => ‘ASC’
);
$args = wp_parse_args( $args, $defaults );
extract($args);

if ( !$tags )
return;
$counts = $tag_links = array();
foreach ( (array) $tags as $tag ) {
$counts[$tag->name] = $tag->count;
$tag_links[$tag->name] = get_tag_link( $tag->term_id );
if ( is_wp_error( $tag_links[$tag->name] ) )
return $tag_links[$tag->name];
$tag_ids[$tag->name] = $tag->term_id;
}

$min_count = min($counts);
$spread = max($counts) – $min_count;
if ( $spread <= 0 )
$spread = 1;
$font_spread = $largest - $smallest;
if ( $font_spread <= 0 )
$font_spread = 1;
$font_step = $font_spread / $spread;

// SQL cannot save you; this is a second (potentially different) sort on a subset of data.
if ( 'name' == $orderby )
uksort($counts, 'strnatcasecmp');
else
asort($counts);

if ( 'DESC' == $order )
$counts = array_reverse( $counts, true );

$a = array();

$rel = ( is_object($wp_rewrite) && $wp_rewrite->using_permalinks() ) ? ‘ rel=”tag”‘ : ”;

foreach ( $counts as $tag => $count ) {
$tag_id = $tag_ids[$tag];
$tag_link = clean_url($tag_links[$tag]);
$tag = str_replace(’ ‘, ‘ ’, wp_specialchars( $tag ));
$a[] = “\t“;
}

switch ( $format ) :
case ‘array’ :
$return =& $a;
break;
case ‘list’ :
$return = “

    \n\t
  • “;
    $return .= join(”
  • \n\t

  • “, $a);
    $return .= “
  • \n

\n”;
break;
default :
$return = join(”\n”, $a);
break;
endswitch;

return apply_filters( ‘dropdown_generate_tag_cloud’, $return, $tags, $args );
}
?>
[/source]
Agora é necessário adicionar o código que irá exibir o menu dropdown, que em geral é colocado no menu lateral. Para isso adicione o código abaixo no arquivo sidebar.php do seu tema ou no local de sua preferência.
[source language='php']

[/source]
Para testar o código e poder mostrá-la em funcionamento, eu resolvi adicioná-la ao tema Migthy, que está disponível a demostração e o download na seção temas aqui do pBlog.

Criando uma página apenas para a Nuvem de Tags Por Érico Oliveira dia 26 de maio de 2008 às 3:38 pm | Imprimir este post

É comum encontrar em alguns blogs uma pequena nuvem de tags no menu lateral, sua função é exibir aos visitantes de forma gráfica qual o conteúdo mais recorrente no blog. Em alguns casos porém, não há espaço no menu lateral ou se deseja ter um espaço maior para exibir a nuvem de tags. Uma opção é criar uma página somente para ela e é isto que irei mostrar neste post.

O procedimento é bastante simples, visto que desde o WordPress 2.3 já existe uma tag nativa para exibir a nuvem de tags, wp_tag_cloud(). Primeiro iremos criar um novo arquivo chamado nuvem.php baseado no template page.php do seu próprio tema, assim a página terá o mesmo visual do seu blog. Abra o arquivo page.php, copie todo o seu conteúdo e cole no arquivo nuvem.php. Adicione no início do arquivo nuvem.php o seguinte código:

  1. <?php /*
  2. Template Name: Nuvens de Tags
  3. */ ?>

Desta forma o WordPress saberá que este arquivo é um template. Agora substitua a tag the_content() pela tag wp_tag_cloud(), sempre no arquivo nuvem.php, ok? Depois destes procedimentos criaremos uma nova página com o título “Nuvem de Tags”, na opção Page Template escolha “Nuvem de Tags” e publique esta página e sua nuvem de tags está pronta.

Template Nuvem de Tags

Você pode ainda configurar alguns parâmetros nesta tag, vejamos alguns:

  • smallest: define o menor tamanho da fonte (default=8);
  • largest: define o maior tamanho da fonte (default=22);
  • unit: unidade de medida para smallest e largest, os valores possíveis são pt, px, em ou % (default=pt);
  • number: define o número de tags que será exibido (utilize “0″ para exibir todas as tags).

Aqui no pBlog eu criei uma página com a nuvem de tags com os seguintes parâmetros: wp_tag_cloud('smallest=8&largest=40&number=0'). Saiba mais sobre esta tag no Codex.

Plugin permite que seus leitores adicionem tags Por Érico Oliveira dia 11 de fevereiro de 2008 às 10:44 pm | Imprimir este post

Seus leitores são participativos? Então adicione o plugin Tag This ao seu blog, com ele é possível que os próprios leitores adicionem as tags referentes aos posts através de um pequeno formulário no final do texto. As tags mais populares são adicionadas aos posts, ajudando a organizar melhor o blog. Também é uma forma de interagir com seus leitores.

Sua instalação é relativamente simples, faça o download do plugin, descompacte-o e envie para a pasta plugin do seu blog. Em seguida ative-o e adicione a linha de código if(function_exists(’wp_tagthis’)){wp_tagthis();} logo após the_content(”) nos arquivos index.php e single.php do seu tema atual.

Dica de Diego Polo.

Novos temas para WordPress 2.3 Por Érico Oliveira dia 03 de outubro de 2007 às 3:35 pm | Imprimir este post

Já começam a surgir os primeiros temas compatíveis com as tags do WordPress 2.3.
Vejamos alguns:

Tema Hexed
1. Hexed

Tema Effercio Blue
2. Effercio Blue

Tema Crytal
3. Crystal

pBlog atualizado para WordPress 2.3 Por Érico Oliveira dia 01 de outubro de 2007 às 11:30 am | Imprimir este post

Este final de semana atualizei o pBlog e para minha surpresa o processo foi rápido e indolor. Pensei que ocorreria problemas com alguns plugins que utilizo e que não estavam na lista de plugins compatíveis com o WordPress 2.3, porém as modificações feitas pelo WordPress não interferiram no funcionamento destes plugins.

Para a atualização utilizei o plugin Instant Upgrade, que torna toda a operação bastante simples.

Alerta de nova versãoA única mudança que vocês poderão notar no blog é a exibição das tags logo abaixo do título do post, as demais mudanças estão na área administrativa do blog. A melhor delas, além das tags, é a exibição de um alerta informando que há novas versões, tanto dos plugins quanto do próprio WordPress.

Recomendo a todos a atualização de seus blogs!