04Jun 2012 0 Comments */?>

Como crear un plugin de WordPress

Categorías: Tips de wordpress, Wordpress - Tags:

Crear un plugin de WordPress no es tan difícil si lo que queremos obtener no es complejo. Hoy les voy a explicar como crear un plugin para activar o desactivar una pequeña función de forma sencilla.

El otro día un lector pregunto como hacer para enviar emails a los usuarios cada vez que se publique un post mediante un plugin, así puede activarlo y desactivarlo facilmente sin estar editando functions.php.

Para empezar creemos una carpeta por ejemplo llamada email-usuarios y dentro de ella un archivo llamado email-usuarios.php.

Dentro del archivo incluimos lo siguiente:

emails-usuarios/email-usuarios.php

<?php
/*
Plugin Name: Mails a usuarios
Plugin URI: http://www.masquewordpress.com/como-crear-un-plugin-de-wordpress
Description: Un simple plugin que envia emails a los usuarios cuando se publica un post
Version: 1.0
Author: Damián
Author URI: http://www.masquewordpress.com
License: GPL2
*/
 
function mqw_email_usuarios($post_ID)  {
    global $wpdb;
    $usersarray = $wpdb->get_results("SELECT user_email FROM $wpdb->users;");
    $users = implode(",", $usersarray);
    mail($users, "Nuevo tip de Wordpress!", "Se acaba de publicar un nuevo tip de Wordpress en http://www.masquewordpress.com . Saludos!!");
    return $post_ID;
}
 
add_action('publish_post', 'mqw_email_usuarios');
?>

Con eso es todo, ya pueden subir todo a wp-content/plugins/ o simplemente comprimir el archivo en un zip e instalarlo normalmente como cualquier otro plugin.

Como ven el código es igual que al incluirlo en functions.php, salvo que es esta ocasión incluimos la cabecera que necesitan los plugins para ser detectados por WordPress.

Saludos!

Damián Logghe

Programador freelancer y emprendedor en sueños. Contento de ser mi jefe y poder hacer lo que me gusta. WordPress es mi principal fuente de ingreso y me escribo tanto para ayudar como para tener una guia de memoria. Quieres contratarme? Déjame un mensaje.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle Plus