Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Desarrollo Web / Crear un plugin wordpress «Banned Word»

Crear un plugin wordpress «Banned Word»

Por jc mouse sábado, julio 6, 2013

En este post, escribiremos un sencillo plugin para wordpress el cual consistirá en reemplazar palabras en los comentarios que nosotros consideremos «prohibidas» y cambiarlas por otra que nosotros deseemos :).

Este plugin no tendrá panel de administración ni interactuara con la base de datos, ni nada complicado, eso lo dejaremos para próximos plugins 🙂

Que necesitamos

– WordPress 3 o superior instalado en local «http://localhost/wordpress/»

– Netbeans

– Uso básico del IDE y del lenguaje php

Nivel: Novato

Tiempo: 15 minutos

1. Crea un proyecto PHP Aplication en Netbeans, el nombre del proyecto sera «Plugin Banned Word» y la dirección donde guardaremos el proyecto sera:

C:\AppServ\www\wordpress-3.5.1\wp-content\plugins\banned_word

donde «wordpress-3.5.1» es la versión de WP que tengo instalado en mi equipo, y «banned_word» es la carpeta donde guardaremos el código del plugin.

php netbeans

2. Presionamos siguiente, nos encontramos en la opción de «run configuration«, aquí debemos indicar como se ejecutara nuestra aplicación, dado que el plugin forma parte de WP, debemos colocar en «Project URL» la dirección principal de nuestro worpress y no del plugin, en mi caso es «http://localhost/wordpress-3.5.1/», así también, estamos trabajando en local por lo que en Run As elegimos Local Web Site.

wp beans

Para terminar presionamos FINISH

3. Creamos el archivo PHP correspondiente a nuestro plugin «banned_word.php» y escribimos:

<?php
/*
Plugin Name: Plugin Banned Word
Plugin URI: http://wwww.example.com
Description: Plugin que reemplaza palabras prohibidas en los comentarios por otra indicada por el administrador
Author : jc mouse
Version: 1.2.3
Author URI: htpp://www.jc-mouse.net/
*/

?>

Nuestro plugin en Netbeans tiene este aspecto:

proyecto php

4. Ingresemos al panel de administración de WP -> plugins instalados y veremos que nuestro plugin ya se encuentra registrado:

poder palabra

Activa  el plugin, no pasara nada, no tenemos nada escrito, aún.

5. Para terminar el plugin, debemos agregar el siguiente código en nuestro archivo banned_word.php, debajo, de lo que ya teníamos escrito 🙂

/**
 * Reemplaza palabras de los comentarios que se encuentra en una 'Lista Negra'
 * y las reemplaza por otra 
 * @param $comments comentarios worpress
 */
function bw_change_word( $comments ) {
        //pagina
        global $pagenow;
        //palabras prohibidas
 $str = array("chile", "peru", "argentina","venezuela","brasil");
        //palabra(s) de reemplazo
 $newstr = '<a href="#">Bolivia :)</a>' ;  
        //Si no se encuentra en la pagina de EDICION DE COMENTARIOS
        //muestra comentarios con palabras censuradas
        if( $pagenow != 'edit-comments.php' )
        {            
            $html = str_ireplace( $str, $newstr, $comments );    
            return $html;
        }
        else //muestra comentarios originales
        {
            return $comments;
        } 
}
//se añade funcion 
add_filter('comment_text', 'bw_change_word',1 );

La función bw_change_word(), es la encargada de reemplazar las palabras prohibidas en los comentarios, add_filter(…) es una función propia de WP para añadir filtros, puedes ver con detalle como funciona en el CODEX de WP.

add_filter(‘nombre_del_gancho’, ‘tu_filtro’, [prioridad], [argumentos]);

nombre_del_gancho es el nombre de la acción provista por WordPress, que define cuando tu filtro debe ser aplicado.

tu_filtro es el nombre de la función que quieres sea usada para realizar el filtrado. Puede ser una función integrada en PHP, una función presente en el núcleo de WordPress, o una función definida por ti en el archivo de tu Plugin.

prioridad es un argumento opcional (dígito) que puede ser usado para especificar el orden en que serán ejecutadas las funciones asociadas el filtro en particular (valor predeterminado: 10). Números mas bajos corresponden a una ejecución mas temprana, y funciones con la misma prioridad son ejecutadas en el orden en el que fueron añadidos al filtro.

Argumentos es opcional 🙂

Para probar nuestro plugin, agregamos algunos comentarios que contengan las palabras que tenemos prohibidas, desde el panel de administración, veremos los comentarios tal cual fueron escritas.

admin wp

Pero vistos desde un post, veremos que las palabras prohibidas son reemplazadas 🙂

bolivia

Proyecto Plugin WP

Tags

Artículos similares

Store Procedure: Result Set

Los procedimientos almacenados no solo pueden retornar valores como números, cadenas, etc, sino también datos como los R[...]

Borrar código protegido en Netbeans

Cuando programamos visualmente desde Netbeans, el IDE nos ayuda mucho al generar rapidamente código predefinido, sin emb[...]

Reconocimiento Óptico de Caracteres con Tess4J

El reconocimiento óptico de caracteres o OCR (Optical Character Recognition), es un proceso dirigido a la digitalización[...]

SQLite: Encriptación de datos

SQLite es un sistema de gestión de bases de datos relacional,  escrita en C, si se desea hacer uso de encriptación con S[...]

Vulnerabilidad Crítica en Ditty: ¿Está Tu WordPress en Riesgo de SSRF?

Se ha descubierto una vulnerabilidad de tipo Server-Side Request Forgery (SSRF) en el plugin de WordPress Ditty, específ[...]

Aprende a usar transacciones con Laravel

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a[...]