Category Archives: Wordpress

Buddypress avatars on all blogs of wordpress multisite MU

Sorry, this entry is only available in Brazilian Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Encontrei esta solução para fazer com que avatares locais de um Buddypress sejam exibidos em todos os blogs de um wordpress MU:


Ok, I just noticed what BP_AVATAR_URL and BP_AVATAR_DIR are setted relative to url and dir of user blog. I reeplaced that code for one what always use the same absolute paths (obtained from WP_CONTENT_URL and WP_CONTENT_DIR) using the global “uploads” directory. Now all avatars are the same in all weblogs.
If you like to do it edit the file bp-core/bp-core-avatars.php and modify this functions:

function bp_core_avatar_upload_path() {
$basedir = WP_CONTENT_DIR.'/uploads';
return apply_filters( 'bp_core_avatar_upload_path', $basedir );
function bp_core_avatar_url() {
 $baseurl = WP_CONTENT_URL.'/uploads';
 return apply_filters( 'bp_core_avatar_url', $baseurl );

Do post:

Removing virus (badware) from WordPress e protecting your blog

Note: I’m not responsible for damage to your installation. Use these tips at your own risk:)

These days I have two wordpress sites infected with malware! I suffered a bit to clean the site and decided to share the tips here that I was joining the road.

Basically, viruses create a “backdoor” taking advantage of some security flaw or bug in your installation. With this backdoor created, the virus has direct access to your site even after the bug fix or upgrade the system. It is like as if the virus had established an ssh account on your server and could perform almost any command in there.

In one case, the bug that allowed the installation of the virus was a theme that uses a library called timthumb.php. I Found the failure in this link and follow the steps there to solve the problem. This virus is installed through the timthumb.php and creates a backdoor. Through the backdoor, other viruses have settled on the site. I’ve fixed the file timthumb.php to remove the possibility of a new invasion.

This virus inserted an iframe on the home page of the site, causing the visitor to be redirected to a site with malicious code. In my case it was an iframe to a site called

Then I had to remove the backdoor before removing the iframe code generator, because when removing the iframe itself, it was introduced again after 15 minutes through the backdoor.

Follow the tips this post and discovered the backdoor in the file wp-config.php. After the end of the traditional code of WordPress, it has about 100 blank lines and then the malicious code.

Then follow the tips this other post to eliminate the iframe generators.

Finally, I froze the files of my WordPress instalation. I accessed the site root via SSH and perform the steps below (note that this will block you from WordPress to automatically update the latest versions of the Dashboard):

To protect folders:

 find. -type d -exec chmod 755 {} \; 

To protect files:

 find. -type f -exec chmod 644 {} \; 

To prevent other users to view data from your database, which is possible in some shared hosting:

 chmod 750 wp-config.php 

To prevent further attacks modify any file on your system (files less plugins and themes):

 chmod u-w -R *
chmod u+w -R wp-content


Adding a relative custom menu link in WordPress Nav Menu

In case you want to stop WordPress putting the “http://” in your custom menu link:

Edit your wp-includes/nav-menu.php

Change the followin line:

update_post_meta( $menu_item_db_id, ‘_menu_item_url’, esc_url_raw($args[‘menu-item-url’]) );


update_post_meta( $menu_item_db_id, ‘_menu_item_url’, $args[‘menu-item-url’] );

That’s all

WordPress – Arquivos de tradução do plugin Configure smtp

Este plugin para wordpress permite que você configure com mais detalhes seu site para enviar emails inclusive através de sua conta GMAIL:

Faça o download do arquivo zip abaixo.


Descompacte este arquivo.

Crie uma pasta lang dentro do diretório do plugin (depois de tê-lo instalado) e jogue os dois arquivos abaixo nesta pasta que você criou.

Lembre-se, jogue apenas os arquivos, não jogue a pasta que provavelmente foi criada quando você descompactou o arquivo zip.

Arquivos de tradução do plugin WordPress “Subscribe to Comments Reloaded”

Só para compartilhar os arquivos de tradução deste plugin que permite uma ótima gestão de notificações aos usuários de um blog WordPress:


Adicionei um Favicon no meu site (que é …

Adicionei um Favicon no meu site (que é WordPress) com muita facilidade, utilizando duas ferramentas:

O que cria um favicon a partir de qualquer imagem (de até 5MB)

O plugin para WordPress All in One Favicon que permite subir diferentes tipos de imagens para este propósito. Muito fácil!

Habilitando multiplos sites no WordPress 3

Estou criando um site WordPress ao estilo, ou seja, uma espécie de fazenda de blogs onde é possível ter mais de um blog com usuários compartilhados entre eles. Esta é função MULTISITE do WordPress, que antigamente vinha numa distribução diferente, chamada WordPress MU, e na versão 3.0 do WordPress já está embutida.

Para habilitar esta função você precisa adicionar seguinte linha no arquivo wp-config.php de seu site:

/** Ativar Multi Blogs **/
define(‘WP_ALLOW_MULTISITE’, true);

Depois é necessário acessar o menu Ferramentas -> Rede e seguir o passo a passo que é mostrado lá.

Eu tive alguns problemas de acentuação. O site que eu usei para ativar este recurso já possuía conteúdo e depois de ativar o multisite, a acentuação dos artigos ficou super bagunçada.

Adicionei então (depois de pesquisar e bater cabeça uns bons minutos) as seguintes linhas no wp-config.php pra resolver:
// ** MySQL settings ** //
define(‘DB_CHARSET’, ‘latin1’);
define(‘DB_COLLATE’, ‘latin1_general_ci’);

Só experimente adicionar essas linhas se você estiver com problemas de acentuação também :-}