Crear un formulario de contacto para un theme de WordPress

¿Para que crear un formulario de contacto en un theme si ya existe algún plugin que te lo hace todo y muy bien?. Fácil, porque cuando subes un theme a wordpress.org, no te deja meter plugins, y si lo quieres vender, no puedes meter mil instrucciones para instalarlo, lo lógico es que copie el theme y poco más.

El tutorial explica paso a paso cómo crear la página, hacer que WordPress la entienda, crear el formulario de contacto, validación por jQuery haciendo uso de un plugin y envío del email.

How to create a built-in contact form for your WordPress theme

Vía / DZone

Clase para usar Google Translate desde PHP

La verdad es que tiro de vez en cuando Google Translate, pero sobre todo para temas personales, para alguna aplicación web no creo que sea muy útil, entre otras cosas porque a veces las traducciones en algunos casos son un poco raras, pero nunca vienen mal tener esta librería para realizar traducciones.

El uso es muy sencillo:

require_once('googleTranslate.class.php');
$gt = new GoogleTranslateWrapper();
/* Traduce una pagina web */
$page_contents = file_get_contents('http://some-web-page/');
/* Traduce al frances */
echo $gt->translate(page_contents , "fr", "en");
/* Si hay error lo muestra */
if(!$gt->isSuccess()) {
    echo $gt->getLastError();
}

Google Translation PHP wrapper

Vía / PHPDeveloper.org

Actualización: me avisa Javier Martín que él ha implementado una librería parecida que añade algunas características interesantes como independencia de CURL.

Crear un sistema de notificación web con XMPP y PHP

Completísimo tutorial que nos explica como realizar un sistema de notificación web en tiempo real mediante XMPP y PHP. El tutorial nos explica cómo funciona el XMPP, cómo instalar Openfire (yo he usado ejabberd y este no le conozco, si alguien lo conoce que me comente que tal).

En el ejemplo hará uso de jQuery y Strophe para acceder al servidor XMPP.

Build a web-based notification tool with XMPP

Gracias Gerardo por el aviso

Tutorial y librería para caché fragmentado

El caché fragmentado se usa para dividir una página en partes y cachearlas independientemente para así poder reutilizarla en diferentes partes, por ejemplo si se trata de un módulo del sidebar que va en distintas páginas, se puede cachear independientemente y utilizarlo en cada uno de ellas.

La página que referencio explica muy bien el concepto de cache fragmentado y a su vez ofrece una librería que facilita su uso de este tipo de cache.

if (!FragmentCache::beginCache('all_available_products')) {
echo "content to be cached...";
FragmentCache::endCache();
}

Fragment Cache - an introduction / PHP

Vía / PHPDeveloper.org

Cómo autenticar usuarios con Facebook Connect usando PHP

Completo tutorial que nos explica paso a paso qué tenemos que hacer para que nuestros usuarios se puedan autenticar usando Facebook Connect (la nueva API de Facebook mucho más sencilla que la anterior).

El tutorial se divide en los siguientes pasos:

  • Crear la tabla MySQL para nuestra aplicación, esto lo tendremos que modificar según nuestra aplicación
  • Dar de alta la aplicación en Facebook
  • La petición de permiso
  • El registro y la autenticación
  • Extender los permisos que se solicita
  • Comprobar si se tiene permisos
  • Publicar en el muro

How to Authenticate Users With Facebook Connect

Vía / PHPDeveloper.org

Crear extensiones para Chrome

La gente de Tutorialzine nos enseña cómo realizar extensiones para Google Chrome, y la verdad parece bastante sencillo. Para ello realizan una extensión de ejemplo que muestra los últimos posts de su feed.

La extensión debe constar de un fichero de configuracion (manifest.json) y luego el CSS, HTML5 y jQuery de la extensión. Chrome permite desarrollar las extensiones sin tener que instalarlos, para lo que desde chrome://extensions/ tendremos que ir a Developer mode y desde allí cargar el script.

Para tener más información podéis ir a la página oficial de Google

Making Your First Google Chrome Extension

Vía / @jlantunez

Enviar SMS desde Movistar con PHP (desde España)

Movistar tiene una API para PHP muy sencillita que permite enviar SMS desde un número que tenga contrato con ellos de forma increíblmente sencilla.

Para poder enviar los SMS primero hay que darse de alta, para lo cual hay que mandar un SMS con texto ‘CLAVE’ al 22770, recibes otro SMS con una password y ya puedes enviar SMS desde tus aplicaciones, aunque eso sí, no son gratuitos y te costará lo mismo que tengas contratado.

include "APISMS.php";
$sms = new MensajeriaWeb();
$log = "6xxxxxxxx"; // Tu telefono
$pwd = "xxxxxx";	// password que te han mandado vía SMS
$dest = "6xxxxxxxx"; // telefono de destino
$msg = "texto+del+mensaje"; // Mensaje
$sms->EnviaMensaje($log, $pwd, $dest, $msg);

SMS Send

Usar Neo4j con PHP usando REST

neo4j es una base de datos de grafos que puede ser muy útil para aplicaciones tipo redes sociales. El problema para los que usamos PHP es que neo4j está en Java y para usarlo desde PHP o se una un bridge que conecte con Java o usar la versión REST de neo4j y acceder vía web.

Su uso es muy sencillo:

$graphDb = new GraphDatabaseService('http://localhost:9999/');
$node = $graphDb->createNode();
$node->message = "Hello, ";
$node->blah = "blah blah";
$node->save();

Se le puede añadir todas las propiedades que se quieran, que se transforman en un array de datos que luego se enviarán en json.

El único problema que tiene esta librería es que no genera índices, aunque es muy sencillo modificar, ya que tan solo es necesario añadir una llamada para generar el índice:

HTTPUtil::jsonPostRequest($this->_neo_db->getBaseUri().'index/node/clave/'.$this->_data['clave'], $this->_neo_db->getBaseUri().'node/'.$this->_id);

siendo ‘clave’ lo que queramos añadir como índice. También es necesario modificar HTTPUtil::jsonRequest para que cuando $data no sea un array no se codifique en JSON.

Neo4J REST PHP API client

Enlaces rápidos (04-06-2010)

Más enlaces rápidos sobre NOSQL, para variar: