Archivo de la categoría ‘WordPress, Blogger y scripts’.

Formulario de contacto con captcha integrado en Wordpress como una página más (manual, sin plugin)

Nos creamos una cuenta en reCAPTCHA (es de Google ahora). En “My account” veremos nuestras claves, una pública y otra privada, las tenemos en cuenta para después. Y nos bajamos, descomprimimos recaptchalib y subimos al directorio donde tenemos el Wordpress recaptchalib.php quedando en /TUBLOG/recaptchalib.php

Abrimos un documento en blanco (en texto plano) y nos basamos en el index.php que está en el directorio donde tenemos el Wordpress /TUBLOG/index.php, que contiene

<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */

/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define('WP_USE_THEMES', true);

/** Loads the WordPress Environment and Template */
require('./wp-blog-header.php');
?>

Está todo comentado menos cuatro líneas (las comentadas se podrían borrar) y comentamos o borramos tambien define('WP_USE_THEMES', true); quedando así

<?php
require('./wp-blog-header.php');
?>

Añadimos más código debajo de eso. Nos basamos en el código de otro index.php, pero el de nuestra plantilla, que esta en el directorio /TUBLOG/wp-content/themes/TUTEMADEBLOG/index.php.

Tenemos que usar una parte de ese código, no todo. Hay que fijarse que un blog como éste, tiene por ejemplo, la cabecera (header.php), la barra lateral derecha (sidebar.php) y el pie (footer.php). Con usar un código llamando a esos 3 elementos (porque mi blog no usa más), es suficiente. Si tu blog tiene un segundo sidebar por ejemplo u otro elemento más, habría que llamarlo también y seguro que aparece en tu index.php.

Mi index.php es largo y necesito sólo las primeras líneas, que llaman al header.php <?php get_header(); ?> y abren un div <div id="content">. Y las últimas, que cierran el div </div>, llaman al sidebar.php <?php get_sidebar(); ?> y al footer.php <?php get_footer(); ?>. Quedando así junto con lo anterior:

<title>TUTITULO | TUBLOG</title>
<?php
require('./wp-blog-header.php');
?>

AQUI VA A IR EL CSS

<?php get_header(); ?>
<div id="content">

AQUI VAN A IR LOS CODIGOS

</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Ahora lo guardamos dos veces en el directorio donde tenemos Wordpress, junto al primer index.php, una llamándolo contacto.php y otra enviado.php.

En contacto.php donde está AQUI VA A IR EL CSS ponemos:

<style type="text/css">

#content {
margin-top:10px; 
}

.name, .mail, .asunto, .msg {
padding: 0px 10px 0px 10px;
background: #FEFEFE;
border: 1px solid #626262;
font: normal 1em Arial, Helvetica, sans-serif;
}

.name, .mail {
width: 140px;
height: 20px;
}

.asunto {
width: 380px;
height: 20px;
}

.msg {
width: 420px;
}

#re {
margin:0 auto; width:500px; 
}

#con1, #con2, #con3, #re {
margin:0 auto; width:500px; 
}

</style>

y donde está AQUI VAN A IR LOS CÓDIGOS ponemos un formulario (miramos nuestra clave pública de recaptcha para ponerla):

<div id="content">

<div id="con1">
<p>Ningún campo es obligatorio. No obstante, si deseas respuesta, deberás<br />introducir algún e-mail de contacto.</p>
</div>

<form id="contacto" name="contacto" method="post" action="http://TUBLOG/enviado.php">

<div id="con2">
<p>Nombre y Apellidos
<input name="nombre" type="text" id="nombre" class="name"/>
Mail
<input name="mail" type="text" id="mail" class="mail"/> 
</p>
<p>
Asunto
<input name="asunto" type="text" id="asunto" class="asunto"/> 
</p>
<p>Mensaje</p>
<p>
<textarea name="mensaje" type="text" id="mensaje" class="msg" rows="10"/></textarea>
</p>
</div>

<div id="re">
<?php 
require_once('recaptchalib.php');
$publickey = "CLAVEPUBLICARECAPTCHA";
echo recaptcha_get_html($publickey);
?>
</div>

<div id="con3"><p>
<input type="submit" name="Submit" value="Enviar" align="center"/>
</div>

</form>

</div>

En enviado.php donde está AQUI VAN A IR LOS CÓDIGOS ponemos el código php que envía el e-mail (aquí está nuestra clave privada de recaptcha y ponemos el email que va a recibir el correo):

<div id="content">
  
<p style="margin:0 auto; width:500px; margin-top:50px"align="center">

<?php 
require_once('recaptchalib.php');
$privatekey = "CLAVEPRIVADARECAPTCHA";
$resp = recaptcha_check_answer ($privatekey,
                                $_SERVER["REMOTE_ADDR"],
                                $_POST["recaptcha_challenge_field"],
                                $_POST["recaptcha_response_field"]);

if ($resp->is_valid) {
  $header = 'From: ' . $_POST['mail'] . " \r\n";
  $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  $header .= "Mime-Version: 1.0 \r\n";
  $header .= "Content-Type: text/plain";
  
  $mensaje .= "De " . $_POST['nombre'] . " \r\n";
  $mensaje .= "e-mail: " . $_POST['mail'] . " \r\n";
  $mensaje .= "Enviado el " . date('d/m/Y', time()) . " \r\n";
  $mensaje .= "Mensaje: \r\n" . $_POST['mensaje'] . " \r\n";

  $para = 'TUEMAIL';
  $asunto = $_POST['asunto'] . " \r\n";
  
  mail($para, $asunto, utf8_decode($mensaje), $header);
    echo "Enviado correctamente";
  } else {
    die ("El reCAPTCHA no fué introducido correctamente. Vuelve a intentarlo.");
  }
?>

</p>

</div>

¿El resultado de todo esto? Vean mi propio formulario de contacto :mrgreen:

Cambiar tema de emoticonos de wordpress y añadirlos en el formulario de comentarios

En una pausa para descansar de mis tareas se me ocurrió que el tema de iconos original de wordpress no me gustaba mucho y además quería añadir más iconos. También agregar unas líneas de iconos en el formulario de comentarios para facilitar a los comentaristas usarlos. Sí, ya sé que esto se habrá dicho varias veces, pero como nadie lo hace ni le queda exactamente igual, antes de que me lo pregunten allá va :P

¿Se fijaron en el formulario de comentarios? Voy a explicar como lo he dejado así.

Lo primero, que me gusta más, porque me parece más expresivo, el tema de emoticonos de Menéame.net. Click derecho y “guardar imagen como”. Me los bajé todos. Y después, en esdebian.org los que me llamaron más la atención ojeando el foro. Estos son iguales a los originales de wordpress pero hay más.

Usando FileZilla o similares los subimos al hosting, en el directorio donde se aloja wordpress, a una ruta parecida a ésta. Sobreescribiendo los que estan y añadiendo nuevos:

/wp-includes/images/smilies

Después en

/wp-includes/functions.php

buscamos algo como esto:

function smilies_init()

y ya debemos reconocerlo, ahí cada emoticono se asocia a una palabra o caracteres (lo que escribimos, que luego mágicamente se convierte en un emoticono :P ) Asociamos los emoticonos que bajamos y ya se pueden usar.

Para que aparezcan en el formulario de comentarios nos basamos en este código y buscamos unas lineas como ésta:

<img src="http://TUBLOG/wp-includes/images/smilies/ICONO.gif" alt=":ICONO:" onclick="emoticonos(':ICONO:');">

Sustituimos TUBLOG por nuestro blog y buscamos cada emoticón en /wp-includes/images/smilies/. Por cada uno, copiamos la línea y sustituimos ICONO por el icono que queramos.

Tras eso, tenemos el código del enlace pero modificado, eso lo copiamos en el archivo

/wp-content/themes/TUTEMADEBLOG/comments.php

justo antes de algo parecido a esto:

<p><textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"></textarea></p>

Y ya debería funcionar, si no, avisarme en los comentarios. Good luck! :grin:

Código para detectar el navegador + OS (modificado por mí)

Les dejo el código que modifiqué para detectar el navegador + OS, incluye BSD’s y distribuciones Linux. Es ése que según L.J.Marín, es “largiiisimo” xD .

Que les sirva ;)

A cualquiera que lo pruebe y vea que no sale correcto: díganme su cadena de user agent, así mejoraré la detección, ya que si bien la lista es larga, la he hecho basándome en la lógica, no tengo a mano todos los user agent.

Ocultar la barra de navegación

Puede ser para dificultar el que “marquen el blog” o simplemente porque es antiestético, si por algún motivo se quieren deshacer de la barra de navegación…

Buscan esto:

Y justo encima ponen esto:

Espero que les sirva.

Les vigilo

Si, si les estoy vigilando, miren en la barra lateral… ¿Ven? soy un bot que se cuela en sus ordenadores y ve que tienen dentro… xD

Ahora en serio, aunque la gracia estaría en que se viera cuando me dejan comentarios a modo de “comentario de … usando xnavegador en xsistema“, no tengo ni la más remota idea de cómo se hace (este blog no está hecho para presumir de cuanto sé, de vez en cuando pregunto yo, la gracia está en que, lo diga quien lo diga, no tengo por que ser yo, cuando alguien esté buscando cómo se hace algo, pueda verlo, aquí o en otro sitio… así que… ¿alguien me lo dice?)

Hace unos días y todavía está under construction, he colocado un script en la barra lateral (que obviamente no funciona con JavaScirpt desactivado o con NoScript, y no se preocupen que sólo lo están viendo ustedes, nadie más ve qué usan, ni yo tampoco) Se llama Estas usando…

Creo que llegó la hora de someterlo a testeo, para esto cuento con ustedes, no tengo yo solita todas las combinaciones posibles, así que les voy a pedir que prueben todas las combinaciones que se les ocurran para ver si responde… o si simplemente tienen curiosidad. Me dejan un comentario diciendo que tal les va, ya he avisado que nadie mas que ustedes ve su propia combinación.

He incluido varios navegadores, versiones de Windows, Mac, Linux y sus distribuciones, otros OS…

Así que… ¡A testear! ;)

EDITADO: A cualquiera que lo pruebe y vea que no sale correcto: díganme su cadena de user agent, así mejoraré la detección, ya que si bien la lista es larga, la he hecho basándome en la lógica, no tengo a mano todos los user agent.

He añadido los BSD’s ¿Alguien con BSD?

Poner buscador Google en tu sito web

Hola a todos, aunque ya se haya dicho muchas veces quedan otras tantas porque siempre hay alguien que no lo ha visto y puede ser de utilidad. A mí me ha costado un poco encontrarlo. Aquí explica como poner un buscador Google en tu sitio web:

http://www.documentalistaenredado.net/755/creando-un-buscador-especifico-para-tu-blog-o-web/

Espero que os sirva, cada día se aprenden cosas nuevas, así da gusto. Yo lo he puesto porque nunca se sabe… xD Saludos.

  • Posts recientes

  • Comentarios recientes

  • Categorías

  • Archivo

  • Improve the web with Nofollow Reciprocity.