O WordPress é uma excelente plataforma, mas está longe de ser perfeito. E é precisamente por isso que todos nós procuramos constantemente por truques, dicas e tutoriais para wordpress. Tanto os shortcodes, quanto os hacks e hooks são excelentes formas de simplificar algumas das tarefas que o WordPress tem capacidade de fazer, mas que infelizmente ainda são demasiado complexas ou necessárias de usar através de plugins. Mas conforme já relatámos anteriormente, instalar demasiados plugins pode ser prejudicial ao seu blog, pelo que o ideal é usar hooks e hacks para tornar determinadas funcionalidades em código PHP simples que não torne o seu WordPress lento, mas crie as funcionalidades que você deseja.

Wordpress snippets

ABRIR LINKS EM NOVA JANELA POR PADRÃO

Desta forma, todos os links em seu blog irão abrir numa nova janela, algo que não acontece por padrão com o seu atual WordPress. Antes de tudo o resto, procure pelo ficheiro quicktags.js na pasta wp-admin do seu WordPress.

Encontre o seguinte trecho de código:

if (!edCheckOpenTags(i)) {
var URL = prompt('Enter the URL' ,defaultValue);
if (URL) {
edButtons[i].tagStart = '<a href="' + URL + '">';
edInsertTag(myField, i);
}
}

Troque esse código por este novo código:

if (!edCheckOpenTags(i)) {
var URL = prompt('Enter the URL' ,defaultValue);
if (URL) {
edButtons[i].tagStart = '<a href="' + URL + '"';
if (URL!='http://')
{
var defaultTarget = prompt('Enter the Target' ,'_blank');
if (defaultTarget) edButtons[i].tagStart += ' target="' + defaultTarget + '"';
} edButtons[i].tagStart +='>';
edInsertTag(myField, i);
}
}

PREVENIR BOTS DE INDEXAREM SEUS CONTEÚDOS

Não quer que os bots dos motores de busca acessem seu blog de testes e comecem indexando seus conteúdos sem a sua autorização? Copie e cole o seguinte snippet na seção <head> do seu ficheiro header.php:

<?php if(is_search()) { ?>
   <meta name="robots" content="noindex, nofollow" />
<?php }?>

ADICIONAR UM BOTÃO “EDITAR ARTIGO” EM SEUS POSTS

Gostava de colocar um botão “Editar Artigo” nos seus posts do WordPress, que estivesse apenas visível para si (administrador)? A única coisa que precisa fazer é colocar o seguinte snippet de código onde se encontra a função the_content(), provavelmente no seu ficheiro single.php ou page.php. O link apenas estará disponível se você for o administrador do blog.

<?php edit_post_link(__('Editar Artigo')); ?>

ADICIONAR UM LINK PARA O PAINEL DE ADMIN E OUTRO PARA EDITAR

Se quiser adicionar um link para o seu painel administrativo e outro para editar a página onde se encontra, ambos apenas visíveis a administradores do seu blog, copie e cole o seguinte código para o loop do seu WordPress:

// Begin WordPress loop
<?php
get_header();
if (have_posts()) : while (have_posts()) : the_post();
?>

// Admin only code
<?php if (current_user_can("manage_options")) : ?>
<a href="<?php echo bloginfo("siteurl") ?>/wp-admin/">Admin</a>
<?php  edit_post_link(‘Editar’, ”, ”);  ?>
<?php endif; ?>

// code here, get contents
...
...

// End WordPress loop
<?php endwhile; else: ?>
Sorry, no pages matched your criteria.
<?php endif; get_footer(); ?>

CRIE UMA PÁGINA DE ERROS DO SEU BANCO DE DADOS

Se desejar criar uma página customizada para mostrar os erros do seu banco de dados do WordPress, crie e adicione o seguinte snippet de código a um novo ficheiro que deverá criar chamado “db-error.php” e coloque-o na pasta /wp-content/ do seu WordPress. Ele irá automaticamente usar esse ficheiro quando tiver problemas com o banco de dados e reportá-los nesse ficheiro.

<?php // custom WordPress database error page

  header('HTTP/1.1 503 Service Temporarily Unavailable');
  header('Status: 503 Service Temporarily Unavailable');
  header('Retry-After: 600'); // 1 hour = 3600 seconds

  // If you wish to email yourself upon an error
  // mail("your@email.com", "Database Error", "There is a problem with the database!", "From: Db Error Watching");

?>

<!DOCTYPE HTML>
<html>
<head>
<title>Database Error</title>
<style>
body { padding: 20px; background: red; color: white; font-size: 60px; }
</style>
</head>
<body>
  You got problems.
</body>
</html>

COMO EMBEBER UMA PÁGINA DENTRO DE OUTRA PÁGINA

Este código deve ser usado no loop regular de uma página do seu WordPress, portanto, em seu ficheiro page.php. A única coisa que necessita fazer é substituir o **ID** pelo ID da página que pretende embeber.

<?php $recent = new WP_Query("page_id=**ID**"); while($recent->have_posts()) : $recent->the_post();?>
       <h3><?php the_title(); ?></h3>
       <?php the_content(); ?>
<?php endwhile; ?>

ADICIONAR UMA BIO DO AUTOR NO FINAL DOS ARTIGOS

Este snippet de código irá mostrar o nome e descrição de perfil do usuário a partir dos dados inseridos no perfil do painel administrativo do WordPress.

<div class="author-box">
   <div class="author-pic"><?php echo get_avatar( get_the_author_email(), '80' ); ?></div>
   <div class="author-name"><?php the_author_meta( "display_name" ); ?></div>
   <div class="author-bio"><?php the_author_meta( "user_description" ); ?></div>
</div>

USAR UM BOTÃO “CURTIR” DO FACEBOOK NOS ARTIGOS

Se gostava de ter um botão “curtir” do Facebook em todos os artigos, copie e cole o seguinte código para dentro do ficheiro single.php do seu blog, na seção onde pretende que o botão apareça.

<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo rawurlencode(get_permalink()); ?>&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" id="facebook-like"></iframe>

MOVER A BARRA DE ADMIN DO WORDPRESS PARA O RODAPÉ

A nova barra de administrador do WordPress, introduzida na versão 3.2, está fixa no topo do seu blog, correto? E que tal mover essa barra para o rodapé? Adicione as seguintes linhas de CSS ao seu ficheiro de CSS, e o código completo ao ficheiro functions.php do seu template.

function fb_move_admin_bar() {
    echo '
    <style type="text/css">
    body {
    margin-top: -28px;
    padding-bottom: 28px;
    }
    body.admin-bar #wphead {
       padding-top: 0;
    }
    body.admin-bar #footer {
       padding-bottom: 28px;
    }
    #wpadminbar {
        top: auto !important;
        bottom: 0;
    }
    #wpadminbar .quicklinks .menupop ul {
        bottom: 28px;
    }
    </style>';
}
// on backend area
add_action( 'admin_head', 'fb_move_admin_bar' );
// on frontend area
add_action( 'wp_head', 'fb_move_admin_bar' );

FAZER RESET NA PASSWORD DE ADMIN PELO BANCO DE DADOS

Se precisar de fazer um reset à sua password de administrador pelo seu banco de dados, terá de correr uma query de SQL em seu banco de dados, através do phpMyAdmin por exemplo. Essa query é a seguinte:

UPDATE `wp_users` SET `user_pass` = MD5( 'new_password_here' ) WHERE `wp_users`.`user_login` = "admin_username";

Não esqueça de trocar o “new_password_here” pela nova password que deseja.

Até Já!

Autor: Paulo Faustino

Blog do Autor | Artigos do Autor:

Fundador da Escola Dinheiro. É um empreendedor e blogueiro que dedica a sua vida à produção e partilha de conteúdos de grande qualidade, contando já com alguns dos mais reconhecidos blogs de Portugal e do Brasil.

Templates Wordpress que Recomendamos:

  • U-Design WordPress Theme
  • Tersus - Responsive WordPress Theme
  • Modernize - Flexibility of Wordpress
  • Good Space - Responsive Minimal WP Theme
  • Sterling - Responsive Wordpress Theme
  • Karma - Clean and Modern Wordpress Theme
  • Doover Premium WordPress Theme
  • MayaShop - A Flexible Responsive e-Commerce Theme
  • SmartStart WP - Responsive HTML5 Theme
  • Striking Premium Corporate & Portfolio WP Theme
  • Core Minimalist Photography Portfolio
  • King Size - fullscreen background WordPress theme

Gostou deste artigo? Então torne-se fã do Blog no Facebook!


WooThemes - WordPress themes for everyone

Comentários dos Alunos


  1. Hugo
    13.10.2011

    Acho que houve um erro com o código “PREVENIR BOTS DE INDEXAREM SEUS CONTEÚDOS”.

    A função is_search() não serve para verificar se o visitante é um BOT de indexação, e sim verificar se o usuário está na página de pesquisa (do mesmo modo que as funções “is_single”, “is_page” ou “is_home”).

    http://codex.wordpress.org/Function_Reference/is_search

    Responder


    • Paulo Faustino
      13.10.2011

      Olá Hugo, obrigado pelo comentário! De facto tem razão no que diz, lapso nosso. Na verdade basta mesmo a Meta tag no cabeçalho e nada mais, para prevenir a indexação do conteúdo pelos robots :)

      Obrigado pela dica. Vamos editar o código.

      Abraços

      Responder


      • Vitor Carvalho
        14.10.2011

        Paulo, na verdade esse snippet é bastante interessante assim como está. Ele é um bom exemplo de otimização de SEO uma vez que proibe qualquer bot de indexar conteúdo quando a página exibida é o resultado de uma pesquisa dentro do blog ;)

        Responder


  2. André Porto
    13.10.2011

    “ADICIONAR UMA BIO DO AUTOR NO FINAL DOS ARTIGOS”

    Onde colocamos esse código ?????

    Responder


    • Paulo Faustino
      13.10.2011

      Olá André, obrigado pelo comentário! Esse código deve colocar no ficheiro onde deseja que apareça a bio do autor. Se for em todos os artigos, deverá abrir o ficheiro single.php e colocar o código depois da função < ?php the_content ; ?> para aparecer depois do conteúdo do artigo :)

      Abraços

      Responder


      • André Porto
        13.10.2011

        Mais uma vez obrigado Paulo…
        To sempre acompanhando seu Blog, indispensável para quem quer ter uma boa gerência de sites e conteúdos!

        Abraços

        Responder


  3. REDLine PC
    13.10.2011

    Boas Paulo, será que dá para definir todos os links nos artigos como nofollow por defeito a não ser que sejam definidos no artigo como follow?

    Isto em conjunto com o _blank para abrir numa nova janela.

    Obrigado.

    Responder


    • Paulo Faustino
      13.10.2011

      Olá Redline PC, obrigado pelo comentário! O problema é que se você definir “nofollow” numa função do WordPress, ela vai-se sobrepor aos “follow” que você depois dá no artigo, logo, todos os links ficariam “nofollow” sempre, o que é uma desvantagem muito grande para o seu blog em termos de SEO. O Google gosta de links externos também.

      Para isso ainda não há grande solução. Pode é usar uma coisa deste tipo se funcionar para o que pretende: http://www.themiak.com/wp-plugins/nofollow-links-in-posts/

      Abraços

      Responder


  4. Joaquim Malandro
    13.10.2011

    Olá Paulo.
    Devia-nos explicar o código ou copiou isto?
    e o mais provave em fim…
    vai apagar o meu comentario so porque disse isso.
    entao e mesmo infantil….

    Responder


    • Paulo Faustino
      13.10.2011

      Joaquim, quer o código mais explicado do que está? Daqui a pouco pede-me para o implementar nos seus blogs não? Por amor de deus…se estudar um pouco em vez de fazer insinuações desnecessárias, talvez os seus comentários completamente descontextualizados e despropositados não sejam apagados. E sim, temos uma política de comentários que talvez devesse ler…

      Abraços

      Responder


  5. William Rufino
    13.10.2011

    Você devia indicar melhor, que ao alterar o core do wordpress, você pode perder suas alterações ao atualizar, etc.

    Responder


  6. Rick
    13.10.2011

    Dicas muito legais!

    Acabei de usar uma hehe

    Obrigado Paulo!

    Responder


  7. netto
    13.10.2011

    Nossa, quanta gente mal humorada e sobretudo mal agradecida!
    No meu blog se o cara me maltratar (diferente de crítica construtiva, observação, etc) eu mando ele pra pqp, apago o comentário dele e se puder até bloqueio, no meu blog mando eu.
    Obrigado à equipe do EscolaWP sempre trazendo bons conteúdos.
    É claro que certos códigos dependem do conhecimento técnico que a pessoa tem e acho até que a gente tem que se ater à esses detalhes, nem todo visitante sabe onde colocar o código, mas todos eles deveriam pelo menos deixar o mal humor em casa e carregar consigo a educação.

    Responder


    • Rick
      13.10.2011

      Bem comentado Netto, eu testei 2 códigos e funcionou tranquilo aqui, não usei todos por que já conhecia alguns e outros não eram necessários em meu projeto.

      Responder


  8. Joao Dias
    14.10.2011

    Olá Paulo.
    Ouvi falar de uma plataforma edublogs.org essa pataforma e igualizanha ou muito parecida com a do wordpress, acha que copiaram ou e dos mesmos?
    Outra duvida nos meus posts do wordpress nao consigo organizar bem as imagens a esquerda e a direita com o texto.
    A alguma sugestão para melhorar isso?

    Responder


    • Vitor Carvalho
      14.10.2011

      A edublogs.org é um serviço de websites em WordPress.org, igual a tantos outros como o wordpress.com e o blog.com.

      Responder


    • Andrea
      15.10.2011

      Deve estar sem estilo de alinhamento, coloca isso no seu style.css:
      img.alignright {
      margin: 0 0 2px 10px;
      }

      img.alignleft {
      margin: 0 10px 2px 0;
      }

      .alignleft {
      float: left;
      }

      .alignright {
      float: right;
      }

      Responder


  9. Joao Dias
    14.10.2011

    Mas mesmo igual ao wordress por dentro e os links.

    Responder


    • Cleomar Nogueihra
      18.10.2011

      Bem, João Dias;

      O edublogs.org é um serviço direcionado a escolas e universidades, que, até onde pude ver, facilita aos corpos docente e discente de uma determinada instituição de ensino a criação de uma estrutura completa de blog, já previamente configurada para este fim.

      Parabéns ao Escola WordPress pelas dicas, e obrigado pela contribuição constante ao mundo WordPress. Este é um dos sites/blogs mais completos que há sobre o CMS, especialmente para quem ainda dá os primeiros passos.

      Responder

Comente o Artigo!

RSS
Twitter
Facebook
Comentários
ASSINANTES
SEGUIDORES
FÃS
COMENTÁRIOS
11485

Subscrever Newsletter
Subscreva a Newsletter:


Elegant Themes

Wix

Theme Forest

Mojo Themes



Assine a Escola Wordpress Assine a Newsletter da Escola Wordpress Escola Wordpress no Twitter Escola Wordpress no Facebook Escola Wordpress no Youtube Escola Wordpress no Google Buzz