Modificar el estilo del formulario de JetPack

Uno de los plugins totalmente imprescindibles para un blog en WordPress es JetPack.

JetPack es de hecho un pack de plugins, que dotan al blog de multitud de funcionalidades adicionales, que puedes activar o no según tus necesidades. Si no lo conoces, échale un vistazo.

Una de las funcionalidades que ofrece es la posibilidad que un lector de nuestro blog se suscriba, de forma que será avisado cuando se publique una nueva entrada.

De hecho puedes ver el widget de este plugin el menú derecho de este mismo blog. Y si quieres suscribirte, pues adelante! Jeje

Estilo propio

Un problema que nos podemos encontrar, es que este widget viene con su estilo visual ya predefinido. Y no se adapta al estilo que tiene nuestro tema. Por lo que gráficamente podemos ver que no acaban de cuadrar…

En el caso de este blog, el tema de WordPress que uso define los campos de texto con un padding bastante grande (de 16px por todos lados), lo que hace que los campos de texto sean muy altos.  En cambio, el campo de texto del correo electrónico de JetPack, es todo lo contrario:

Entonces de alguna forma tenemos que cambiar el estilo de ese campo para que sea igual que el resto del blog.

Modificar el estilo

Podríamos hacer dos cosas:

  1. Modificar el fichero CSS de Jetpack para poner a nuestro gusto el estilo del campo de texto
  2. Añadir un estilo adicional en el CSS de nuestro tema hijo.

Si hacemos lo primero, se perderán los cambios a la que actualicemos el plugin (algo que pasa como cada 15 días o 1 mes máximo).

Por lo tanto, lo mejor es hacer lo segundo: editar el fichero style.css de nuestro tema hijo, para hacer que ese campo de texto en concreto, siga el mismo estilo que el resto de campos del blog.

Editar el Style.css de nuestro tema

La forma sencilla y rápida es hacerlo desde la interfaz de administrador de nuestro blog.

Vamos a Apariencia > Editor.

Nos aseguramos que estamos editando el tema que nos interesa (tenemos que tenerlo seleccionado en el desplegable de arriba a la derecha). Y en la lista de archivos de la derecha, seleccionamos el fichero style.css.

Lo ideal es que todas las modificaciones que hagamos en ese archivo, estén juntas en un mismo lugar, para facilitar el localizarlas cuando nos haga falta.

Añadiremos la siguiente modificación:

El 16px es el ancho que tiene por defecto los componentes de texto en nuestro tema. Por eso pondremos ese valor.

Y el !important hay que ponerlo para asegurarnos que coge este valor a la hora de dibujar el campo de texto. Si no lo pusiéramos, usaría el valor definido en el fichero de estilo de Jetpack, porque tiene una mayor precedencia respecto al style.css de nuestro tema.

Y esto es todo, una vez guardados los cambios en el fichero, recargamos la página donde aparezca el campo de texto del correo electrónico del formulario de suscripción, y veremos que el aspecto visual es el mismo que el de cualquier otro campo de texto del blog.

Cambio de Drupal a WordPress

Si te habías pasado por aquí tiempo atrás, te habrás dado cuenta que ha cambiado un poco.

Por un lado, el aspecto visual es algo distinto. Pero el cambio está sobretodo “por dentro”. Y es que me he cansado ya del CMS que tenía instalado, y he cambiado de Drupal a WordPress.

De Drupal a WordPress

OccidentalValley.com cambia el CMS de Drupal a WordPress

OccidentalValley.com cambia el CMS de Drupal a WordPress

Desde que probé WordPress hará cosa de dos años, no he vuelto a usar ningún otro gestor de contenidos.  Algo parecido a lo que me pasó cuando usaba Joomla y probé el Drupal.

Desde entonces, los nuevos blogs o páginas web sencillas que he ido haciendo de nuevo, han sido ya con WordPress. Y es que es de lejos mucho más friendly que su competidor Drupal.

Mucho más ligero, mucho más fácil de gestionar, más fiable en las tareas automatizadas. Más comunidad, lo que radica en una mejor oferta de temas y plugins… En resumen, termina aportando más tranquilidad y menos problemas a la hora de gestionarlos.

El cambio de Drupal a WordPress va a facilitar la actualización de los contenidos, poderlos subir más a menudo. También un mejor control del Spam en los comentarios. Puesto que con Drupal, llegó un momento que me di por vencido y tras probar varios sistemas y que ninguno de ellos funcionara, opté por deshabilitar los comentarios.

La migración de contenidos de Drupal a WordPress ha sido de forma manual, puesto que no tenía demasiado contenido, y era algo complicado automatizarlo cuando no podía tener los dos sistemas accesibles a la vez por estar en el mismo nombre de dominio.

Últimos retoques

Aprovechando que estos días tengo algo más de tiempo libre, terminaré de adaptar temas visuales y algunas modificaciones de la plantilla que he instalado en este blog (la Metro Pro del framework Genesis).

Un buen framework del que iré escribiendo en el futuro, porque el tándem WordPress + Genesis aporta una potencia que vale la pena explotar para cualquier blogger o desarrollador de blogs.

Error al instalar librería XML de R

Al instalar la librería “XML” de R en un Ubuntu Server, ya sea mediante:

o desde la línea de comandos mediante:

el proceso no se completa, dando el siguiente error:

Solución:

Para poder instalar y ejecutar el package XML de R, hace falta el paquete libxml2-dev, por lo que lo instalaremos mediante apt-get:

Después de esto, volvemos a provar de instalar, desde la consola de R:

y el proceso se completa sin ningún otro problema.

Solo funciona portada de Drupal

Al finalizar la migración de una página Drupal a un nuevo servidor, podemos ver la portada de la página con todo su contenido, pero a la que vamos a cualquier link no funciona ninguno, dando un error 404.

Solución:

Las primeras cosas que leí, apuntaban a que el site de Drupal (versión 7) tenía las URL limpias activadas, y cabía la posibilidad que el apache del nuevo servidor no tuviera activado el módulo mod_rewrite, necesario para que funcionen las URL limpias. No obstante, después de hacer las comprovaciones el módulo estaba activado. De hecho, en el mismo servidor había ya otras dos instalaciones Drupal funcionando correctamente.

En mi caso, el problema vino porque en el directorio /etc/apache2/conf.d/ había el fichero de configuración drupal.conf. En este fichero parece ser que es donde se especifica el funcionamiento del módulo mod_rewrite para Drupal. Y lo más importante, es que tiene que haber una entrada para cada uno de los sites de Drupal (lo que nos permite una configuración distinta para cada sitio del servidor). Entonces, solucionamos el tema añadiendo la configuración de mod_rewrite para el nuevo site de Drupal en el fichero drupal.conf.

En mi caso fue algo así como replicar el contenidor que ya habñia para cada sitio Drupal del servidor:

En negrita marcado lo único que cambié de un site al otro (el nombre del sitio)

En busca de los 100MB con Fibra Óptica

Como comenté la semana pasada, después de la instalación de FTTH de 100Mb/10Mb de Movistar, la velocidad del sobremesa de casa se quedaba bastante por debajo de esa cifra, alrededor de los 30Mb.

En cambio con el MacBook conectado via Ethernet, la velocidad sí que llegaba a esa velocidad prometida, por lo que queda claro que no es problema de la conexión,  si no de ese PC en cuestión. Se trata de un PC que empieza a tener ya cierta edad, alrededor de los 5 años, y funcionando con Vista.

El instalador que vino a hacer la instalación de fibra, me comentó que muchas veces quien está limitando la velocidad de la conexión es la tarjeta de red del ordenador. Cosa que tiene toda su lógica, y teniendo en cuenta que el PC empieza a tener una edad, es bastante probable que la velocidad de la tarjeta no sea demasiado alta.

Así que voy a hacer la prueba, y a instalar una tarjeta Ethernet de tipo Gigabit (compatible con conexiones de red de 1000Mbps), para ver si así la conexión que se establece con el router es más rápida, y puede aprovechar todo el potencial de la Fibra Óptica.

La elección de la tarjeta

No hace falta que sea nada del otro mundo, simplemente que tenga conectividad Gigabit y de alguna marca más o menos conocida. Buscando por Amazon, de entre las más vendidas encuentro una por 10€, que cumple ese requisito, conectividad Gigabit y marca reconocida (D-Link):

D-Link DGE-528T Tarjeta Red PCI Gigabit Ethernet 10/100/1000 Mbps

Tarjeta Ethernet con conexión de 1Gb

Tarjeta Ethernet con conexión de 1Gbps

Además con bastantes comentarios positivos, así que es la perfecta candidata. La pedí el sábado, y ayer al mediodía la tenía en el trabajo.

Test a priori

Vamos a hacer una prueba de velocidad antes de cambiar la tarjeta, para ver exactamente qué velocidad de bajada y subida tenemos. Estos son los resultados:

Test velocidad antes de cambiar ethernet

Intervención

La actual tarjeta Ethernet va integrada en la placa base, así que ahí se quedará si uso, y montaremos la nueva en uno de los puertos PCIs libres. Cerramos el PC, conectamos el cable Ethernet a la nueva tarjeta, encendemos el ordenador.

Windows Vista nos avisa de la detección de un nuevo hardware, nos pide el CD que venía con el producto, y en unos 5 minutos (que es Windows Vista!) nos avisa que el dispositivo está listo para ser usado. Probamos si tenemos conexión a Internet, y efectivamente está funcionando!

Test a posteriori

Volvemos a repetir la prueba de velocidad, en la misma página, testvelocidad.eu, para ver ahora si el tema ha mejorado o qué (esperemos que así sea), y este es el resultado:

Test velocidad posterior al cambio

Bingo! Pues queda más que probado que efectivamente la limitación de velocidad venía originada por una tarjeta de red no suficientemente rápida.

Así que si después de instalaros fibra en casa no conseguís los 100Mb ni de casualidad, pensad en la posibilidad de cambiar la Ethernet por una compatible con velocidades de Gigabit.

FTTH, Fiber To The Home

Hace un par de semanas, llamaron a casa los de Telefónica para ofrecer la posibilidad de cambiar el tipo de conexión a Internet, y pasar de ADSL a Fibra Óptica, aprovechando que recientemente la habían hecho el despliegue por la zona. Como teníamos pendiente de juntar el móvil de mi pareja y el teléfono de casa con algún plan para mejorar el precio, me decidí por contratar un Movistar Fusión con fibra óptica. Me ofreció el Imagenio gratis durante un par de meses, que le dije que no porque en casa apenas miramos la tele.

A la semana siguiente llamó la empresa instaladora para realizar la instalación. Quedamos el sábado de esa misma semana a las 9 de la mañana para que hicieran la instalación de la fibra, con una previsión de 2-3 horas.

La instalación de la FTTH

La instalación de fibra óptica se basa en hacer llegar el cable de fibra óptica del nodo de la calle hasta el router de casa.

Al lado del router montan una especie de roseta donde se hace el empalme de la fibra de la calle con un latiguillo de fibra que queda ya dentro de casa. Este latigullo es el que se conecta a la ONT, que es la unidad que hace la conversión de señal óptica a impulsos eléctricos. Por lo tanto, le entra la fibra óptica, y sale cable de red que conectaremos al router. También de la ONT sale el cable de teléfono para dar el servicio telefónico a casa. Luego ya, a partir del router conectamos los equipos que queramos conectar via Ethernet del modo convencional.

En mi caso, el router que montaron fue un Comtrend VG-8050.

El día del montaje

El técnico para empezar se presentó a casa sobre las 9:30h, después del esfuerzo que hice para levantarme temprano un sábado por la mañana! Después de haberle dicho expresamente al comercial del teléfono que no quería el Imagenio (los comerciales son habituales del “Habla chucho que no te escucho…“), el técnico me aseguraba que en su parte de instalación le aparecía como que sí tenía que instalarlo. En ese momento me lo pensé mejor, y le dije que vale, que me lo quedaba durante el tiempo promocional, y luego ya lo devolvería.

De esta forma, me aseguraba que el técnico me dejaría conectado al router tanto el PC de sobremesa como la TV del comedor, ahorrándome tener que hacer yo el trabajo de cablear unos cuantos metros (entre 12 y 15 metros) con cable Ethernet por dentro del piso. Después de negarme a conectar con un adaptador wifi el PC de sobremesa para ahorrarse él tener que cablear el tema, me pasó el cable hasta el PC.

Todo montado, hace la primera prueba y no llegaba Internet. Rápido se dió cuenta que era culpa de la ONT, que dijo literalmente que eran “basura” y que esta semana ya le habían fallado 3. Bajó a buscar otra ONT al coche, conectó y listo. Hizo una prueba con su portátil, y le daba una velocidad de bajada de 30Mb… y yo con cara de circumstancias… todo este jaleo por 30Mb… Le digo, y eso…? Y me contesta que nada, que no hay problema, que llegar llegan 100Mb. Y yo… ya, y eso de los 30Mb que pone en el portátil…?? Y dice, nada, estos routers que dá telefónica que son malísimos y fallan la mitad de ellos. Voy al coche a buscarte otro y te lo monto. Baja, monta otro, hace la prueba y estamos igual… Luego ya, me dice que si es su portátil que son viejos y que no dan más velocidad que esa… Yo ya un poco mosca… El tío con prisas para que le firmara el parte porque llevaba una hora y media de retraso en la hora de inicio de su siguiente instalación. Pruebo ahora con mi PC de sobremesa, ahora da unos 45Mb… yo ya flipando… demasiado bonito era lo que había leído de los 100Mb reales… Al final, hago una última prueba con el portátil conectado por cable. Y por fin:

Con el Macbook sí que pude ver que con una tarjeta de red más o menos moderna no había problemas y la conexión efectivamente daba los 100Mb prometidos y los 10Mb de subida. Por fin!!

Según me comentó el técnico, con las tarjetas Ethernet antiguas, la conexión que se establece con el router no da tampoco los 100Mb, así que tocará cambiar la tarjeta del PC de sobremesa para aprovechar la conexión.

Bueno, al final el técnico se marchó de casa sobre las 13.45 del mediodía (cuando la hora estimada era terminar sobre las 11h-12h…) Pero bueno, yo ya con mi conexión de 100Mb y con el cableado tanto hasta la TV como hasta el despacho, más feliz que una perdiz.

La conexión vía Wifi, obviamente no es igual que conectada por cable, pero también es bastante rápida:

Así que, por lo menos hasta el momento, la valoración es muy positiva.

Primera letra en mayúsculas en PHP

Si queremos que cada palabra de una frase empiece con la primera letra en mayúsculas, podemos usar la función de PHP ucwords().

Esta función se encarga justamente de eso: que todas las primeras letras de cada palabra que le pasemos como parámetro, estén en mayúscula:

Vemos en la segunda llamada, llamamos habiendo convertido toda la cadena de texto en minúsculas, para que así nos quede todo en minúsculas excepto la primera letra inicial de las palabras.

Arduino a la vista!

UnboxingArduino

Esta mañana he recibido un Arduino Uno en casa! Hacía tiempo que me rondaba por la cabeza el hacerme con uno, y el otro día me animé y pedí uno por Internet, junto a un kit básico de elementos electrónicos para empezar a trastear un poco.

La plataforma Arduino

Arduino Open Source sticker

Arduino es una plataforma libre y de bajo coste, que consiste por un lado en una placa hardware que incorpora básicamente un microcontrolador programable, junto a entradas y salidas analógicas y digitales, todo ello en una placa con interfície USB para conectarla directamente a un ordenador y programarla. Por otra parte está el software que nos facilita la comunicación entre PC y Arduino, y nos permite programar el microcontrolador o transferir datos de un lado para otro.

Hardware Libre

Un gran punto a favor de Arduino es que, no solo se trata de una iniciativa con el código fuente abierto y libre,  sino que también la parte física es  hardware libre. Lo que significa una total libertad a la hora de trabajar con Arduino. Esto se traduce por ejemplo en el hecho que uno puede comprarse una placa ya montada, o puede optar por descargarse los planos y montársela por su cuenta, hacer las modificaciones y mejoras que le apetezca a la placa original, o incluso en que el usuario tiene la libertad para explotar comercialmente, si lo desea, cualquier proyecto basado en Arduino. Esto, y el hecho de ser una plataforma con un coste asequible, ha ayudado a crear alrededor de Arduino, una gran comunidad de usuarios de carácter multidisciplinar, entre estudiantes universitarios de todas las áreas científicas, aficionados a la electrónica, amantes del DIY, inventores, empresas fabricantes de hardware, etc.

Funcionalidades…

Arduino permite leer información de cualquier tipo de sensor (por ejemplo, sensor de temperatura, humedad, luz, de presencia, de sonido, de existencia de gas en el ambiente, de humo, de agua, y un larguísimo etcétera), incluso leer información de cualquier página de Internet, procesar esa información y en base a ello, actuar sobre cualquier dispositivo electrónico o actuador de la vida real (como por ejemplo, las luces de casa, las persianas, el agua, un robot inalámbrico, etc.).

A parte de las prestaciones que tiene la placa principal de Arduino, existen infinidad de dispositivos que dotan a nuestra placa Arduino de funcionalidades adicionales como, por ejemplo, capacidad de localización via GPS, capacidad de almacenamiento de datos en unpendrive o en una tarjeta SD, capacidad de comunicación con Internet via Ethernet, via Wifi, via 3G con una tarjeta de telefonía, conexión a otros dispositivos vía puerto serie (cableado), por RFID, por Bluetooth, por infrarojos, etc.

Podéis encontrar información adicional sobre Arduino en la página oficial del proyecto: Arduino.cc

De vez en cuando ya iré contando por aquí mis avances y montajes con la plataforma. Por ahora no me voy a poner con un proyecto en concreto con Arduino, sino que me voy a dedicar a ir probando funcionalidades y posibilidades. De todas formas, sí tengo en mente algo relacionado con la domótica y la automatización del riego, en el que intervenga la obtención de estadísticas, y la posibilidad de control desde una aplicación para el móvil. Pero de momento lo dejo para más adelante…

Modificar título de biografía en Latex

Cuando insertamos referencia bibliográficas en un documento Latex mediante el comando bibliography{}, el propio motor de Latex se encarga de añadir el título de la sección donde aparecerán las referencias, usando el idioma en que se ha definido el documento.

Es posible modificar el texto de esa sección, redefiniendo el comando refname:

o simplemente eliminar el título del apartado:

En nuestro caso, queríamos que el título de la bibliografía pasara a ser el título de una sección (por temas de estilo predefinidos del documento). Lo que no permite Latex es definir directamente una section dentro de la redefinición del command, es decir:

Entonces la solución (correcta desde el punto de vista visual, aunque no conceptual) ha sido, primero eliminar el título por defecto del bloque bibliografía, escribir un nuevo título con el estilo que nos conviene, y reajustar espacio:

 

from_unixtime() con timestamps negativos

La función FROM_UNIXTIME() de MySQL es la que nos permite convertir fechas almacenadas como TIMESTAMP a formato DATE.

Pero a la hora de usarla hay que tener en cuenta una limitación importante de esta, y es que esta función no acepta timestamps negativos, es decir, representaciones de fechas inferiores al año 1970. Por lo que si hacemos esto, nos devolverá NULL:

Una solución para los casos en que las fechas pueden ser timestamps negativos, es obtener la fecha no usando directamente la FROM_UNIXTIME(), si no con la función DATE_ADD(), sumando al timestamp 0, el intervalo de segundos que coincide con nuestro timestamp. De esa forma, tanto si el timestamp es positivo como si es negativo, obtendremos siempre la fecha correctamente: