<?php
/*
Plugin Name: Random Talk
Plugin URI: http://www.proyectoisla.com/mangasverdes/?page_id=1226
Description: Muestra una lista dinámica de comentaristas en tu blog con WordPress
Version: 1.0 Beta
Author: Manuel M. Almeida
Author URI: http://www.proyectoisla.com/mangasverdes

Basado en Comment Plugger, de Nick Momrik (MtDewVirus)
http://mtdewvirus.com/code/wordpress-plugins

Random Talk es un plugin "social" para WordPress que te permite
incluir una lista "al azar" de los comentaristas de tu blog fuera del loop.
Te puede ser útil para crear un blogroll basado en tus usuarios
o cualquier otra lista de usuarios "al azar" con varias posibilidades.

Copyright (c) 2005 by Manuel M. Almeida

Este programa es software libre. Puede redistribuirlo y/o modificarlo
bajo los términos de la Licencia Pública General de GNU según es
publicada por la Free Software Foundation, bien de la versión 2 de
dicha Licencia o bien de cualquier versión posterior.
   
Este programa se distribuye con la esperanza de que sea útil, pero SIN
NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL implícita o sin
garantizar la CONVENIENCIA PARA UN PROPÓSITO PARTICULAR. Véase la
Licencia Pública General de GNU para más detalles.
   
Debería haber recibido una copia de la Licencia Pública General junto
con este programa. Si no ha sido así, escriba a la Free Software
Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU.
*/

//$limit es el número de autores que quieres mostrar.
//Cámbialo a tu gusto.

//Funciones:

//random_talk: muestra sólo aquellos comentaristas que tienen URL (pingbacks y trackbacks no aparecerán).

function random_talk($limit=10) {
        global 
$wpdb;
        
$commenters $wpdb->get_results("SELECT comment_author, comment_author_url FROM $wpdb->comments WHERE comment_approved = '1' AND comment_type <> 'pingback' AND comment_type <> 'trackback' GROUP BY comment_author_url ORDER BY RAND() LIMIT $limit");
        foreach (
$commenters as $commenter) {
        if (!empty(
$commenter->comment_author_url)) {
        
$output .= '<li><a href="' $commenter->comment_author_url '" title="Visita a ' $commenter->comment_author '">' $commenter->comment_author '</a> </li>';
       }
    }
        echo 
'<ul>' $output '</ul>';
}
        
        

//get_random_talk: muestra todos los comentaristas (pero no pingbacks ni trackbacks).

function get_random_talk($limit=10) {
        global 
$wpdb;
        
$commenters $wpdb->get_results("SELECT comment_author, comment_author_email, comment_author_url FROM $wpdb->comments WHERE comment_approved = '1' AND comment_type <> 'pingback' AND comment_type <> 'trackback' GROUP BY comment_author_email, comment_author ORDER BY RAND() LIMIT $limit");
        foreach (
$commenters as $commenter) {
        if (!empty(
$commenter->comment_author)) {
        if (!empty(
$commenter->comment_author_url))
        
$output .= '<li><a href="' $commenter->comment_author_url '" title="Visita a ' $commenter->comment_author '">' $commenter->comment_author '</a> </li>';
        else 
$output .= '<li>' $commenter->comment_author ' </li>'
       }
    }
        echo 
'<ul>' $output '</ul>';
}



//all_random_talk: muestra todos los comentaristas, incluidos pingbacks and trackbacks.

function all_random_talk($limit=10) {
        global 
$wpdb;
        
$commenters $wpdb->get_results("SELECT comment_author, comment_author_email, comment_author_url FROM $wpdb->comments WHERE comment_approved = '1' GROUP BY comment_author_email, comment_author ORDER BY RAND() LIMIT $limit");
        foreach (
$commenters as $commenter) {
        if (!empty(
$commenter->comment_author)) {
        if (!empty(
$commenter->comment_author_url))
        
$output .= '<li><a href="' $commenter->comment_author_url '" title="Visita a ' $commenter->comment_author '">' $commenter->comment_author '</a> </li>';
        else 
$output .= '<li>' $commenter->comment_author ' </li>'
       }
    }
        echo 
'<ul>' $output '</ul>';

}

?>