S
SoloNegocios
Xi
SEO
Esta función que les dejare es solo para las personas que en sus Blogs permiten que los visitantes puedan escribir en el Blog cualquier cosa diferente a los comentarios (Contacto, Posts, Preguntas, etc)
La función usa el poder del Akimest el cual como saben marca como SPAM los comentarios, pero muchas veces los Spammers no solo dejan su basura en los comentarios, los que tenemos sitios donde los visitantes se pueden registrar y escribir Posts sabemos que los Spammers se registran y dejan su basura.
En el Functios.php colocan esto:
Su uso es sencillo tan solo le tenemos que pasar el texto que ingresaron en el formulario donde permitimos que nuestros visitantes puedan escribir: formularios de contacto (Aunque los mejores Plugins de contacto usan esta misma función), formularios donde los visitantes pueden escribir Posts o hacer preguntas.
Con esto he eliminado el Spam de mis sitios en los cuales estoy dejando que los visitantes puedan escribir preguntas, la primera semana llegaba bastante Spam ya que no estoy filtrando nada los visitantes pueden preguntar cosas sin registrarse, desde que coloque la función se fue el Spam.
La función no es mía la saque de un Plugin de contacto lo único que hice fue sacarle cosas que no eran necesarias.
La función usa el poder del Akimest el cual como saben marca como SPAM los comentarios, pero muchas veces los Spammers no solo dejan su basura en los comentarios, los que tenemos sitios donde los visitantes se pueden registrar y escribir Posts sabemos que los Spammers se registran y dejan su basura.
En el Functios.php colocan esto:
PHP:
function es_spam($msg)
{
if(function_exists('akismet_http_post') && get_option('wordpress_api_key') )
{
global $akismet_api_host, $akismet_api_port;
$c['user_ip'] = preg_replace( '/[^0-9., ]/', '', $_SERVER['REMOTE_ADDR'] );
$c['blog'] = get_option('home');
$c['comment_content'] = $msg;
$ignore = array( 'HTTP_COOKIE', 'HTTP_COOKIE2', 'PHP_AUTH_PW' );
foreach ( $_SERVER as $key => $value )
{
if ( !in_array( $key, $ignore ) && is_string($value) )
$c["$key"] = $value;
else
$c["$key"] = '';
}
$query_string = '';
foreach ( $c as $key => $data )
{
if( is_string($data) )
$query_string .= $key . '=' . urlencode( stripslashes($data) ) . '&';
}
$response = akismet_http_post($query_string, $akismet_api_host, '/1.1/comment-check', $akismet_api_port);
if ( 'true' == $response[1] )
return 1;
else
return 0;
}
}
Su uso es sencillo tan solo le tenemos que pasar el texto que ingresaron en el formulario donde permitimos que nuestros visitantes puedan escribir: formularios de contacto (Aunque los mejores Plugins de contacto usan esta misma función), formularios donde los visitantes pueden escribir Posts o hacer preguntas.
PHP:
if( es_spam("Viagra enlargement pennis") == 1)
echo "Maldito Spammer jode a tu madre";
Con esto he eliminado el Spam de mis sitios en los cuales estoy dejando que los visitantes puedan escribir preguntas, la primera semana llegaba bastante Spam ya que no estoy filtrando nada los visitantes pueden preguntar cosas sin registrarse, desde que coloque la función se fue el Spam.
La función no es mía la saque de un Plugin de contacto lo único que hice fue sacarle cosas que no eran necesarias.