Wordpress: ampliando la funcionalidad del plugin “Most commented”
En mi trabajo hemos empezado a utilizar Wordpress en forma seria. Es decir, tratar de sacarle el 110% a ésta excelente aplicación que cada vez se acerca más a ser una plataforma de publicación de contenidos (CMS) y no sólo un administrador de blogs.
El caso es que una de las funcionalidades requeridas era generar un listado de los posts más comentados, algo más bien simple que sólo requiere generar un listado con los titulos de los 5 (pueden ser más o menos) post con más comentarios y mostrar la cantidad de comentarios que tiene cada uno.

En mi trabajo hemos empezado a utilizar Wordpress en forma seria. Es decir, tratar de sacarle el 110% a ésta excelente aplicación que cada vez se acerca más a ser una plataforma de publicación de contenidos (CMS) y no sólo un administrador de blogs.
El caso es que una de las funcionalidades requeridas era generar un listado de los posts más comentados, algo más bien simple que sólo requiere generar un listado con los titulos de los 5 (pueden ser más o menos) post con más comentarios y mostrar la cantidad de comentarios que tiene cada uno.
Después de una breve investigación, la mejor opción resultó ser el plugin “Most Commented” de Nick Momrick, ya que su funcionalidad es simple y se ajusta a los requerimientos.
A raíz de un problema que solucionamos por otra vía y que no viene al caso mencionar, surgió una ampliación de la funcionalidad de éste plugin que permite algo muy simple pero que a más de alguien le puede ser útil: lograr excluir de la lista de los más comentados los posts que se determinen que no deben ir ahí.
¿Para qué serviría esto?. Supongamos que yo tengo 2 filtros de posts, Los más vistos y Los más comentados. Se parecen pero no son lo mismo, y aunque puede que en algún momento coincida que un mismo post es uno de los más vistos y también uno de los más comentados, yo no quiero un mismo post aparezca en los 2 listados.
La solución
Con la ayuda de uno de los nuevos desarrolladores de nuestro equipo y su experiencia en php logramos excluir de la lista de los posts más comentados cualquier post que se desee. A continuación los pasos necesarios considerando que el plugin ya se encuentra instalado y funcionando.
- Agregamos una palabra clave, en éste caso, (nopublicar) en la línea inicial del artículo. Vía css podemos encerrar (nopublicar) en un span y esconderlo a través de la propiedad {display: none;} lo que deja nuestra artículo sin modificaciones a vista de usuario.
- Se agrega la siguiente línea de código al archivo del plugin “most_commented.php”: ‘publish’ AND NOT post_content LIKE ‘%(nopublicar)%’”; inmediatamente después de $request .= ” WHERE post_status =. Lo que dice ésta línea que agregamos es algo así como “no muestres los posts que contengan (nopublicar)”. Aquí está el plugin ya modificado.
- Eso es todo.
Posibles usos
La manera más simple y sin necesidad de plugins de excluir determinados posts de la lista de los más comentados es no permitir los comentarios en esos posts.
Esta modificación es para aquellos casos específicos en que esa pequeña cuota de control extra es necesaria y, si bien los casos pueden ser muy pocos, no está de más contar con una solución igual de específica.
