Plugin de Glossário para WordPress 2.8 e MU|Glossary Plugin for WordPress 2.8+ and MU

[lang_pt-br]

Introdução

English users should click on the English flag within the title and start read from the point 6(look at the index or table of contents).

Este é o primeiro plugin desenvolvido aqui no INFOmoz. Na verdade, o desenvolvimento do Plugin não foi completa responsabilidade do INFOmoz, já que apenas misturei elementos de alguns plugins e scripts que encontrei na Internet e, está ai mais um plugin para tranformar o seu blog num verdadeiro portal de referência.

Thumbnail

A ideia surgiu quando eu comecei a notar que alguns conceitos deviam ser explicados melhor aqui no INFOmoz. Quando escrevo um artigo cujo público alvo são iniciantes, falar de termos como backlinks, por exemplo, pode ser um problema. Criar um post sobre backlinks e depois linkar para ele sempre que aparece esse termo, pode ser a solução, mas pode não ser elegante.  E quando falar sobre Feeds, Feedburner, RSS, enfim, os leitores teriam que ler dezenas de posts só para entender um! Dai pensei num plugin de Glossário que definisse todos os termos “estranhos” usados num post.

Primeiro, como sempre faço, procurei por uma solução já feita, e o único que consegui achar foi o plugin IMM-Glossary do Internet Marketing Monitor. O problema deste plugin é que está desatualizado, e não funciona no WordPress 2.8+ e nem no WordPress MU, que é o que suporta os meus blogs. Tentei alterar alguns detalhes no IMM -Glossary, mas ví que ainda não era exactamente o que queria, por isso, decidí usar alguns elementos deste plugin acrescentando outros para criar um plugin que atendesse as minhas necessidades e fosse compatível com o WordPress MU.

Plugin INFOmoz-Glossario

O plugin faz exactamente o que se pretende. Ao instalar o Plugin, apenas precisa ir a página de configurações, configurar o plugin e a seguir começar a adicionar os termos e as respectivas definições. A seguir, sempre que incluir um dos termos definidos no seu post, o plugin irá adicionar automaticamente a definição, quando o leitor colocar o mouse sobre a palavra, em forma de tooltip. Você pode ver o plugin em funcionamento visitando esta página do INFOmoz, onde a palavra INFOmoz aparece destacada. Colocando o mouse sobre a palavra, você poderá saber mais detalhes sobre o significado da palavra INFOmoz. O plugin  ainda cria uma página com todas as definições existentes, tornando-se uma espécie de dicionário no seu blog. Visite a página Glossário do INFOmoz, para ver como fica. Os termos ficarão ordenados por ordem alfabética.[/lang_pt-br]

[lang_pt-br]

Instalando o INFOmoz-Glossario no WordPress

Para instalar o plugin INFOmoz-Glossario no WordPress, siga as instruções a seguir. Para instalar no wordpress MU, você terá de fazer algumas alterações, que vem a seguir.

1. Faça do Download do Plugin Thumbnail INFOmoz-Glossario 2.8.1 Plugin para Wordpress 2.8+ e MU

2. extraia e coloque o directório infomoz-glossario na sua pasta de plugins

3. Active o plugin na Administração do seu WordPress. Isto criará dois links novos, 1 na secção de configurações e outro na secção de ferramentas do seu WordPress

4. Na secção de configurações, escolha o número de termos que deverão ser definidos em cada post, e quantas ocorrências de um termo devem ser destacadas. Por motivos técnicos, DEVE escolher apenas a primeira ocorrência de cada termo, para o número de ocorrências de um termo.

5. No link da secção de ferramentas, você poderá inserir as suas definições. Um detalhe importante é que não se deve colocar parágrafos nas definições. É um erro também por resolver.

6. Vá para a secção de editar página, e altere o nome da página criada para qualquer nome que lhe apeteça

7. Veja o seu plugin em funcionamento, na página de glossário e em qualquer um dos posts onde inseriu um dos termos definidos.

8. (Opcional) Faça uma pequena doação, para suportar o desenvolvimento de futuros projectos úteis aqui no INFOmoz. A comunidade agradecerá :-)  [/lang_pt-br]

[lang_pt-br]

Instalando o INFOmoz-Glossário no WordPress MU

Para usuários do WordPress MU, terão de fazer algumas modificações no código, para poder rodar o INFOmoz-Glossário.

1. Abra o arquivo infomoz-glossario.php, na pasta de plugins e encontre o seguinte código(provavelmente está na linha 89 94):

$Author = INFOmoz_glossario_Get_MySQL_Field_Get ( 'ID' ,  $GLOBALS['table_prefix'] . 'users' , '`user_login` = \'admin\'' , '' , '' ) ;

e

$Author = INFOmoz_glossario_Get_MySQL_Field_Get ( 'MIN(`ID`)' , $GLOBALS['table_prefix'] . 'users' , '' , '' , '' ) ;

Agora substitua o $GLOBALS['table_prefix'] pelo prefixo das suas tabelas do WordPress. Para a maior parte dos casos, o prefixo será ‘wp_’, mas certifique-se disso, vendo no ficheiro wp_config do seu WordPress MU.

Agora, já poderá instalar o plugin normalmente, usando as instruções para instalar no WordPress normal. Se estiver a usar a versão 2.8.1, terá de fazer uma pequena alteração no código do MU, para funcionar correctamente. Provavelmente as versões futuras não precisarão desta alteração, já que o código no repositório do MU já foi alterado  :-).

1. Abra o ficheiro /wp-admin/includes/mu.php do seu WordPress MU, e encontre a função:

function choose_primary_blog() {
 global $current_user;
 ?>
 <table>
 <tr>
 <th scope="row"><?php _e('Primary Blog'); ?></th>
 <td>
 <?php
 $all_blogs = get_blogs_of_user( $current_user->ID );
 $primary_blog = get_usermeta($current_user->ID, 'primary_blog');
 if( count( $all_blogs ) > 1 ) {
 $found = false;
 ?>
 <select name="primary_blog">
 <?php foreach( (array) $all_blogs as $blog ) {
 if( $primary_blog == $blog->userblog_id )
 $found = true;
 ?><option value='<?php echo $blog->userblog_id ?>'<?php if( $primary_blog == $blog->userblog_id ) echo ' selected="selected"' ?>>http://<?php echo $blog->domain.$blog->path ?></option><?php
 } ?>
 </select>
 <?php
 if( !$found ) {
 $blog = array_shift( $all_blogs );
 update_usermeta( $current_user->ID, 'primary_blog', $blog->userblog_id );
 }
 } elseif( count( $all_blogs ) == 1 ) {
 $blog = array_shift( $all_blogs );
 echo $blog->domain;
 if( $primary_blog != $blog->userblog_id ) // Set the primary blog again if it's out of sync with blog list.
 update_usermeta( $current_user->ID, 'primary_blog', $blog->userblog_id );
 } else {
 echo "N/A";
 }
 ?>
 </td>
 </tr>
 </table>
 <?php
}
add_action ( 'myblogs_allblogs_options', 'choose_primary_blog' );

if( strpos( $_SERVER['PHP_SELF'], 'profile.php' ) ) {
 add_action( 'admin_init', 'update_profile_email' );
 add_action( 'admin_init', 'profile_page_email_warning_ob_start' );
} elseif( strpos( $_SERVER['PHP_SELF'], 'wp-admin/page.php' ) ) {
 $wp_rewrite->flush_rules();
}

Altere esta função por esta outra que aparece no repositório do WordPress MU.

function choose_primary_blog() {
 global $current_user;
 ?>
 <table>
 <tr>
 <th scope="row"><?php _e('Primary Blog'); ?></th>
 <td>
 <?php
 $all_blogs = get_blogs_of_user( $current_user->ID );
 $primary_blog = get_usermeta($current_user->ID, 'primary_blog');
 if( count( $all_blogs ) > 1 ) {
 $found = false;
 ?>
 <select name="primary_blog">
 <?php foreach( (array) $all_blogs as $blog ) {
 if( $primary_blog == $blog->userblog_id )
 $found = true;
 ?><option value='<?php echo $blog->userblog_id ?>'<?php if( $primary_blog == $blog->userblog_id ) echo ' selected="selected"' ?>>http://<?php echo $blog->domain.$blog->path ?></option><?php
 } ?>
 </select>
 <?php
 if( !$found ) {
 $blog = array_shift( $all_blogs );
 update_usermeta( $current_user->ID, 'primary_blog', $blog->userblog_id );
 }
 } elseif( count( $all_blogs ) == 1 ) {
 $blog = array_shift( $all_blogs );
 echo $blog->domain;
 if( $primary_blog != $blog->userblog_id ) // Set the primary blog again if it's out of sync with blog list.
 update_usermeta( $current_user->ID, 'primary_blog', $blog->userblog_id );
 } else {
 echo "N/A";
 }
 ?>
 </td>
 </tr>
 </table>
 <?php
}
add_action ( 'myblogs_allblogs_options', 'choose_primary_blog' );

if( strpos( $_SERVER['PHP_SELF'], 'profile.php' ) ) {
 add_action( 'admin_init', 'update_profile_email' );
 add_action( 'admin_init', 'profile_page_email_warning_ob_start' );
}

Pronto! O INFOmoz-Glossário já está pronto para funcionar no seu WordPress MU[/lang_pt-br]

1 2 3

Link curto:

Escrito por on 14/09/2009. Arquivado em Artigos, Downloads, PHP, Programação, Projectos, Rede INFOmoz, Software Livre, Webdesign, Wordpress. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Comentários e pings estão fechados.
468x60
  • http://twitter.com/infomoz/status/3960080207 Elisio Leonardo
  • http://twitter.com/infomoz/status/3960080327 Elisio Leonardo

    Novo post: Plugin de Glossário para WordPress 2.8 e MU http://bit.ly/2DRxkR

  • Pingback: Plugin INFOmoz-Glossário para Wordpress Oficialmente disponível|INFOmoz-glossario plugin for Wordpress available for download « Informática Moçambique

  • Pingback: Estatísticas do INFOmoz em Setembro e a promoção de publicidade « Informática Moçambique

  • http://reitbuyer.com BloggerDude

    I don’t know If I said it already but …This blog rocks! I gotta say, that I read a lot of blogs on a daily basis and for the most part, people lack substance but, I just wanted to make a quick comment to say I’m glad I found your blog. Thanks, :)

    A definite great read….

  • http://www.clubnetsearchmarketing.co.uk Geoff Jackson

    Hello there,

    I have installed it fine, and I can see the settings for the plugin in my admin page and I can add terms, but instances of the terms I have entered on my website do not appear to be using the javascript to display the tooltip when you hover over the term. Everything else appears to be working fine.

    I was wondering whether I have missed something or you could help me work out what I need to do please?

    Many thanks,

    Kind regards,

    Geoff

    ————-

    Hola,

    Lo he instalado bien, y puedo ver la configuración del plug-in en mi página de administración, y puedo añadir términos, pero los casos de los términos que he entrado en mi sitio web no parece estar utilizando el código JavaScript para mostrar el tooltip cuando se ciernen sobre el término. Todo lo demás parece estar funcionando bien.

    Me estaba preguntando si me he perdido algo o me puede ayudar el trabajo lo que tengo que hacer por favor?

    Muchas gracias,

    Un cordial saludo,

    Geoff

    • http://moz-blogs.com/members/admin/ Elisio Leonardo

      Hi, i will release a new version of this plugin today. Check at the plugin repository of WordPress, for the rewrited version of INFOmoz-Gloassario 0.4.

      Thanks for your comment!

  • http://www.clubnetsearchmarketing.co.uk Geoff Jackson

    Great, thanks, will install it when released and see if I can get this one working :)

  • http://www.clubnetsearchmarketing.co.uk Geoff Jackson

    Works great, thanks for this ;)

Left
Right