Novo layout
30/03/08
Essa madrugada decidi que estava na hora de mudar o blog e, como você pode ver, o Simples Idéias está de cara nova!

Ele é bastante semelhante a versão anterior, mas é mais limpo. Não tem mais propagandas do Google e, agora, definitivamente é um tema escuro. Estou terminando uns últimos ajustes, e daqui a pouco deve estar tudo pronto!
Se você encontrar alguma coisa quebrada, avise-me!
- Permalink
- Trackback
- Comentários (10)
- Ao som de: The All-American Rejects – Happy Endings
Spammers, para variar!
15/06/07
Alguns spammers são insistentes. Para eles, uma solução um pouco mais pesada.
function deny_access()
{
global $wpdb;
$blacklist = get_option('blacklist_keys');
$ips = preg_split("/\r?\n/", $blacklist);
if (in_array($_SERVER['REMOTE_ADDR'], $ips)) {
header("HTTP/1.0 403 Forbidden");
die();
}
}
deny_access();
A lista de IPs pode ser configurada no admin do WP em "Options › Discussion › Comment Blacklist".

Basta adicionar ao seu arquivo "functions.php".
- Permalink
- Trackback
- Comentários (3)
- Ao som de: Consumed – Glory Hole
Spam, como odeio isso!
25/04/07
16.657 spams bloqueados. Basta! Não dá mais. Coloquei uma espécie de CAPTCHA nos comentários (perguntinhas básicas de soma de 2 números). Desculpe-me por este incomôdo, mas apagar 300 spams por dia estava ficando totalmente inviável.
Update: Se você quer adicionar este suporte ao seu blog (Wordpress), adicione o código abaixo ao arquivo "functions.php", presente no diretório do seu tema. Caso ele não exista, crie-o.
<?php
/* author: Nando Vieira <fnando dot vieira at gmail dot com> */
function challenge_check($comment_id)
{
global $wpdb, $user_ID, $comment_count_cache;
if ($user_ID) {
return;
}
$hash = $_POST['challenge_hash'];
$challenge = md5($_POST['challenge']);
$post_id = $_POST['comment_post_ID'];
if ($hash != $challenge) {
$wpdb->query("DELETE FROM {$wpdb->comments} WHERE comment_ID = {$comment_id}");
$count = $wpdb->get_var("select count(*) from $wpdb->comments where comment_post_id = {$post_id} and comment_approved = '1'");
$wpdb->query("update $wpdb->posts set comment_count = {$count} where ID = {$post_id}");
wp_die(__('Sorry, but your answer is incorrect.'));
}
}
function challenge_form()
{
global $user_ID;
if ($user_ID) {
return;
}
$nums = array(rand(1,4), rand(1,4));
$n1 = max($nums[0], $nums[1]);
$n2 = min($nums[0], $nums[1]);
$challenge = ($n1 + $n2);
$hash = md5($challenge);
$question = "Quanto é {$n1} + {$n2}?";
$field = sprintf('<p><label for="challenge">%s</label> <input type="hidden" name="challenge_hash" value="%s" /> <input type="text" name="challenge" id="challenge" size="2" /></p>', $question, $hash);
echo $field;
}
add_action('comment_post', 'challenge_check');
add_action('comment_form', 'challenge_form');
?>
Update: não recebi mais nenhum spam! ;)
- Permalink
- Trackback
- Comentários (19)
- Ao som de: Consumed – Glory Hole
