no más plugins

Post on 13-Jun-2015

414 Views

Category:

Education

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

No se recomienda el uso excesivo de plugin, es mejor usar funciones propias de WordPress

TRANSCRIPT

WordPress: No más plugins

Diego Lerma

Plugins

● Existen 18 365 plugins en el repositorio oficial de WordPress.

● Se han realizado hasta el momento 267 994 015 descargas de plugins.

● Toda instalación de nueva ya viene con 2 plugins pre-instalados.

● Se puede decir que prácticamente hay plugins para (casi) todo.

Problema común

Mi cliente / Mi amigo / Mi novi@ / Yonecesita(o)

Permitir al usuario a crear un nuevo post.

Solución común

Busco un plugin!

Solución común

Solución común

Lo encontré!!!!

Solución común

Holy crap! Esta en InglesóChs! Le falta algo!!!!

Solución común

Solución común

Googleo una respuesta..."A alguien ya le debe haber pasado"Uso Google TranslateLo hice!

Solución común

Solución común

Como este problema hay muchos¿Que pasaría si todos los solucionamos así?

Resultado final

Implicancias

Nuevo servidor!

Resultados en el Mundo Real™

Perdida de tiempo y dinero

Plugins

● Nos hemos acostumbrado a resolver problemas con un plugin que solucione (parcialmente) nuestro problema.

● Al final, siempre terminamos metiendo mano al plugin ya sea para arreglar algo del CSS o por lo menos traducirlo.

● Todos ya sabemos al menos lo básico de PHP y el que menos ha oido hablar del CODEX

Solución

Puedo hacerlo yo?

Solución

● Soy un diseñador○ Entiendo algo de PHP ○ Al menos sé como mandar formularios por

que todos mis clientes me piden al menos un formulario de contacto.

○ Sé concatenar variables!● Soy un coder que no le da miedo el Codex

Solución

Solución

wp_insert_post($post);

FTW!http://codex.wordpress.org/Function_Reference/wp_insert_post

Solución

Caso real!

www.discotecaslima.comGuia de discotecas en Lima

Solución

Creamos un formulario como cualquier otro

Solución<form name="agregar" method="post" action="http://discotecaslima.com/agregar"> <p><label for="txt_nombre">Nombre del local</label><br /><input type="text" name="nombre" id="txt_nombre" /></p> <p><label for="txt_distrito">Distrito</label><br /><input type="text" name="distrito" id="txt_distrito" /></p> <p><label for="txt_direccion">Direcci&oacute;n del local</label><br /><input type="text" name="direccion" id="txt_direccion" /></p> <p><label for="txt_referencia">Algunas referencias?</label><br /><input type="text" name="referencia" id="txt_referencia" /></p> <p><label for="txt_telefono">Tel&eacute;fono del local</label><br /><input type="text" name="telefono" id="txt_telefono" /></p> <p><label for="txt_web">Web del local</label><br /><input type="text" name="web" id="txt_web" /></p> <p><label for="txt_FB">FB del local</label><br /><input type="text" name="facebook" id="txt_FB" /></p> <p><label for="txt_horario">Horario de atenci&oacute;n</label><br /><input type="text" name="horario" id="txt_horario" /></p> <p><label for="txt_chela">Costo de cerveza o promedio de tragos</label><br /><input type="text" name="chela" id="txt_chela" /></p> <p><label for="txt_comentarios">Comentanos algo del local</label><br /><textarea cols="50" rows="10" name="comentarios" id="txt_comentarios" /></textarea></p> <p><label for="txt_recomendaciones">Recomendaciones</label><br /><textarea cols="50" rows="10" name="recomendaciones" id="txt_nombre"></textarea></p><p><input type="submit" name="enviar" value="Recomendar local" /></form>

Solución

Leemos todas las datos que hemos pedido del usuario

Solución

$nombre = $_POST["nombre"];$distrito = $_POST["distrito"];$direccion = $_POST["direccion"];$referencia = $_POST["referencia"];$telefono = $_POST["telefono"];$web = $_POST["web"];$FB = $_POST["facebook"];$horario = $_POST["horario"];$chela = $_POST["chela"];$comentarios = $_POST["comentarios"];$recomendaciones = $_POST["recomendaciones"];

Solución

Concatenamos las variables a nuestro gusto y necesidad

Solución$contenido = nl2br($comentarios);$contenido .= "<p><strong>Direcci&oacute;n de " . $nombre . "</strong>: " . $direccion . "</p>";$contenido .= "<p><strong>Distrito de " . $nombre . "</strong>: " . $distrito . "</p>";$contenido .= "<p><strong>Como llegar a " . $nombre . "</strong>: " . $referencia . "</p>";$contenido .= "<p><strong>Tel&eacute;fono de " . $nombre . "</strong>: " . $telefono . "</p>";$contenido .= "<p><strong>P&aacute;gina web de " . $nombre . "</strong>: " . $web . "</p>";$contenido .= "<p><strong>Facebook de " . $nombre . "</strong>: " . $FB . "</p>";$contenido .= "<p><strong>Horario de atenci&oacute;n de " . $nombre . "</strong>: " . $horario . "</p>";$contenido .= "<p><strong>Costo de la chela " . $nombre . "</strong>: " . $chela . "</p>";

Solución

Usamos el codex!

Solución

$post = array( 'comment_status' => 'open', 'ping_status' => 'open', 'post_author' => 6, 'post_content' => $contenido, 'post_date' => date("Y-m-d H:i:s"), 'post_date_gmt' => date("Y-m-d H:i:s"), 'post_name' => $nombre, 'post_status' => 'draft', 'post_title' => $nombre, 'post_type' => 'post', 'post_excerpt' => $recomendaciones ); wp_insert_post( $post );?><p>Gracias por tu recomendaci&oacute;n de <?php echo $nombre; ?>.</p><p>Ser&aacute; revisado por nuestro equipo juerguero y luego ser&aacute; aprobado.</p>

Solución

http://diegolerma.info

Gracias

top related