Cómo pasar cambios de una rama a otra

Como pasar los cambios de una rama a otra.

Hoy vamos a hablar un poco de Git y veremos como pasar los cambios hechos en una rama a otra sin perder nada por el camino.

No os ha pasado nunca que por A o por B habéis tenido que trabajar en la rama master y que una feature ha tomado más peso que otra que en la que estábamos trabajando? O que sin darnos cuenta hemos hecho los cambios en master en vez de hacer los cambios en la rama que le tocaba.

¿Qué hacer cuando hemos escrito código en master y debería estar en otra rama?

Bueno tranquilos que para todo hay solución menos para la muerte y los científicos están trabajando en ello.

Pongámonos en situación, sin darnos cuenta estamos trabajando en la rama master, ya sea porque necesitamos que algún tester vea lo que estamos haciendo en nuestro ordenador o porque no nos hemos acordado de trabajar en la rama nueva.

Entonces lo que vamos a hacer es  pasarlo todo a una rama nueva, para que así podamos mantener lo que ya habíamos adelantado y seguir con lo nuevo.

Para hacerlo si aún no hemos hecho commit es sencillo, simplemente tendremos que hacer lo siguiente:

Esto lo que hará será crearnos una nueva rama con todo lo que tengamos en master y nos moverá a dicha rama.

Una vez allí, simplemente añadiremos todos los cambios al stage y haremos un commit, para guardar los cambios realizados:

Entonces volvemos a la rama master:

Con un git status, veremos que ya no están dichos cambios y todos los cambios se encuentran en la rama que hemos creado para dicho fin.

¿Qué hacer si ya hemos hecho commit en master?

En ese caso tendremos que deshacer dicho commit.

Es tan simple como ejecutar el siguiente comando de git:

Y con eso ya habremos deshecho el commit y podremos aplicar todo lo que hemos mencionado anteriormente.

Eso es todo, ¿habéis visto que fácil? espero que os haya servido de ayuda.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Cómo eliminar los emojis de WordPress

Como eliminar emojis en wordpress

WordPress siempre intenta incluir mejoras para nosotros, que nos hagan la vida más fácil. Pero a veces esas mejoras, no suponen realmente una mejora suficiente como para lo que nos consume en relación a WPO.

En la versión 4.2 de WordPress introdujeron los emojis, que si, que están muy de moda y son muy graciosos, ¿pero realmente los vamos a usar?

Yo la verdad es que en el caso de mi blog, no voy a utilizarlos e igualmente me está cargando el javascript, con lo cual no me aporta, sino que me perjudica a la hora de la carga de mi blog.

Así que vamos a ver como podemos desactivar los emojis, de tres formas distintas.

Sigue leyendo Cómo eliminar los emojis de WordPress

Saber si una hora está en un rango de horas en PHP

Rango de horas PHP

Los problemas con las fechas, son de lo más común a la hora de programar, añadir un día, restar días, comprobar si una fecha esta entre dos fechas.

Pero hoy vamos a hablar un poco más en profundidad y hablaremos de las horas de un día.

Porqué muchas veces trabajar con días es suficiente, pero a veces necesitamos tratar una franja horaria dentro de un día, para saber si pertenece esa franja al día anterior o al presente.

Así que vamos a ver como lo haríamos para ver si una fecha con hora se encuentra dentro de un rango de horas.

Función comprueba una hora entre un rango

A continuación os pongo la función que vamos a usar para ver si una hora se encuentra dentro de ese rango de horas que definamos.

En la función lo que haremos será pasarle, el desde y el hasta del rango de horas que queremos que se encuentre y el datetime con la hora que nos llega.

Comprobaremos si la segunda hora que le pasamos es inferior a la primera, con lo cual entenderemos que es para el día siguiente.

Y al final devolveremos true o false dependiendo si el valor introducido se encuentra entre lo que le hemos pasado.

Ejemplo de llamada a la función

Este sería el código que podríamos usar para hacer la llamada a la función que hemos creado para comprobar el rango de horas.

Aquí lo que hacemos es ir sumando una hora a partir de medianoche y comprobamos si esa hora que vamos sumando se encuentra dentro del rango de horas.

El resultado sería el siguiente:

Como veis al final, las 8 y las 9 no cumplen la condición y por eso sale que no y el resto si que coincide.

Como veis simplemente necesitamos un datetime, con el que poder trabajar y ver si la hora se encuentra dentro del rango de horas.

Así podríamos comprobar si una fecha guardada en base de datos se encuentra entre la sesión de un día o la sesión de otro día, en el caso de que por ejemplo tengamos algún evento que ocurre entre un cierto rango de horas.

Si os interesa también podéis consultar el artículo sobre como restar o sumar horas, minutos o segundos en PHP.

Espero que os haya sido útil.

Y recordad! No olvidéis comentar! Vuestro código y en el blog 😉

Asociar eventos a varios elementos con jQuery

Vamos a ver como asociar un evento a varios elementos de nuestro HTML, usando jQuery.

Algunas veces nos encontramos con que queremos aplicar el mismo método a varios elementos de nuestro HTML,

Para empezar creamos un formulario base donde tendremos precio, iva y total.

Hasta aquí es todo muy simple, no hemos hecho nada más que crear un formulario teniendo los campos con los que queremos trabajar.

Y como lo que queremos es que se calcule el resultado, ya sea a través del precio o bien a través de modificar el iva.

Tenemos varias opciones para hacer dicho código con jQuery, bien podríamos duplicar llamar a una función que nos haga el trabajo cada vez que ocurra algo en uno de los dos elementos:

Con lo cual no queremos tener que hacer la llamada dos veces.

Y nosotros no queremos eso, nosotros queremos tener las dos acciones en una sola, así que lo que haremos esto:

Y así de simplemente separando con comas, los elementos, podemos usar el mismo método para ambos.

Esto también podemos aplicarlo al evento que queremos que se dispare, aunque esto es sin comas, es separado por espacios:

Como podéis ver, en los elementos con el id price y tax, saltará la función, si se hace keyup, change o paste.

Espero que os haya servido para vuestros proyectos.

Y recordad! No olvidéis comentar! Vuestro código y en el blog 😉

Como mostrar los últimos posts de tu blog

Como mostrar los últimos posts de tu blog en tu web

Hoy vamos a ver cómo mostrar los últimos posts de tu blog, a veces nuestra web principal no está hecha con WordPress, y el blog es un añadido a nuestra web principal.

Y en ese caso quizás queramos mostrar los últimos posts de tu blog, para conseguir un buen interlinking y que Google nos tome en cuenta.

Conectar con la Base De Datos

El primer paso a realizar es tan simple como importante, debemos conectar con la base de datos donde tengamos nuestro WordPress.

Los datos de conexión, nos lo debería proporcionar nuestro proveedor del servicio ya sea desde el panel de administración de nuestro producto o bien sea por algún email que nos hayan enviado, o bien solicitandoselo a ellos por teléfono o email.

Una vez tengamos los datos de conexión deberemos hacer lo siguiente:

Usaremos una conexión con PDO, y que las funciones como mysql_connect está totalmente obsoleta y anticuada.

Os he dejado el ejemplo, pero cada cual puede usar la conexión como quiera 🙂 simplemente quiero hacer el ejemplo completo.

Hacemos la consulta

Ahora generamos la consulta para acceder a los últimos posts.

En esta consulta, cogemos lo que es el título del post y el nombre del post, que es lo que a mi me hacía falta

Aunque también podríamos coger más datos, como el contenido del post (post_content), la fecha del post (post_date), hay más datos, pero estos creo que son los más importantes.

Pero yo solo cojo, el post_title y el post_name. El primero

La tabla a la que accedemos en este caso es: «wp_posts«.

Podría ser que al instalar tu WordPress, hubieras puesto otro tipo de sufijo o ninguno llamándose la tabla, simplemente: «posts«.

Puede ser que al instalar el WordPress, o con la instalación que os hayan hecho, se haya añadido un sufijo a las tablas de WordPress. Así que si por ejemplo  habéis puesto como sufijo «blog» pues la tabla se llamará «blog_posts«.

Luego filtraremos por los posts que hayan sido publicados usando la condición «post_status = ‘publish’» ya que no creo que nos interese que la gente vea los posts que aún no hemos publicado.

Añadimos también la condición «post_type = ‘post’» donde estamos seleccionando que lo que mostremos sean tipo posts, ya que tenemos otras muchas opciones como:

  • Revision
  • Attachment
  • Page
  • Customize_changeset

Y seguro que alguno más…

Y aquí lo único que nos interesa es el post final, no queremos ni revisiones ni páginas.

Para acabar los he ordenado por fecha (post_date)  de forma descendiente, de post más nuevo a más viejo.

Y por último limitamos la consulta a 5 posts, usando LIMIT 0,5, aunque cada cual puede poner ahí lo que quiera por supuesto.

Mostramos los últimos posts

Y ya por último y no menos importante pues mostraremos estos últimos 5 posts en nuestra web.

Simplemente recorremos la variable donde tenemos el resultado de la consulta, y mostramos como queramos.

En mi caso he puesto un h2, anunciando el título de la sección y luego muestro los posts con un listado usando ul y li.

Para generar la url del enlace, cogemos la url principal de nuestro blog, en mi caso http://www.oyagum.com/articulos/ y le añadimos el valor de post_name, que es el nombre del enlace que usamos para el post.

Y usamos la variable post_title que es la que almacena el título de nuestro post.

Como veis, es bastante fácil y simple, espero que os haya servido y si algo no ha quedado claro, preguntad e intentaré explicarlo lo mejor posible.

Y recordad! No olvidéis comentar! Vuestro código y en el blog 😉

Un plugin ha roto mi Blog

Hoy me ha pasado, veo que hay una actualización y decido actualizar el plugin y entonces, ¡zas! ya no va nada. ¡El plugin ha roto mi Blog!

Bueno, primero de todo, que no cunda el pánico, como siempre digo, todo tiene solución menos la muerte, así que vamos a ver que podemos hacer.

Desactiva los plugins

En el caso de que solo haya muerto el frontend de nuestro WordPress, podemos desactivar todos los plugins que tenemos activados e ir activando uno a uno, para ver si encontramos cual es el problemático, y en ese caso, dejarlo sin activar a la espera de una nueva actualización, o buscar una alternativa que haga lo mismo que el plugin problemático.

En el caso, como en el mio, que el plugin haya destrozado todo tu WordPress, frontend y backend.

Renombra o elimina el directorio en tu ftp

Entra a través de tu cuenta de FTP y accede al directorio wp-content/plugins y si sabes cual es el plugin que te está dando la guerra, puedes renombrar el directorio o borrarlo.

Sino siempre también puedes renombrar la carpeta de plugins y volver a crear una vacía, pero recuerda de darle permisos para escritura.

Si todo esto falla o no puedes acceder pues entonces veamos la ultima opción.

Desactivar plugins desde la base de datos a través de PHPMyAdmin

Si puedes acceder a través de un PHPMyAdmin o similar al contenido de tu Base De datos, de donde tienes el Blog que el plugin ha roto.

Buscaremos a través del PHPMyAdmin la tabla de wp-options

Dentro de la tabla, tenemos el campo option_name, ahí buscaremos la fila con el valor «active_plugins».

En esa fila, veremos que tenemos algo similar a lo siguiente en el campo option_value:

a:6:{i:0;s:53:"accelerated-mobile-pages/accelerated-moblie-pages.php";i:1;s:19:"akismet/akismet.php";i:3;s:53:"another-mailchimp-widget/another-mailchimp-widget.php";i:4;s:27:"autoptimize/autoptimize.php";i:5;s:31:"cookie-notice/cookie-notice.php";i:6;s:45:"crayon-syntax-highlighter/crayon_wp.class.php";}

Como podéis ver, lo primero pone «a:6» en mi caso es porque hay 6 plugins en total, y luego va poniendo cada plugin como i:0;s:53:»accelerated-mobile-pages/accelerated-moblie-pages.php».

Entonces con lo cual para desactivar el plugin molesto, podemos desactivar dicho plugin de este campo y poner el valor de a a un valor inferior, o dependiendo el número de plugins que desactivemos.

Aunque también podemos eliminar todo el valor de dicho campo, y desactivaremos todos los plugins que tengamos activados, para poder acceder de nuevo a nuestro WordPress.

Y así vamos activando uno a uno los plugins hasta que todo funcione correctamente, o encontremos el plugin que nos rompe el blog, y no lo activamos.

Espero que os haya servido de ayuda.

Y recordad! No olvidéis comentar! Vuestro código y en el blog 😉

Variables variables en PHP

Variables variables o variables dinámicas en PHP

Variables variables en PHP, o variables dinámicas, son algo que no se le da mucho uso, pero que a veces lo necesitamos para la programación.

A veces en programación es necesario tener nombres de variables variables.  Básicamente son nombres de variables que se pueden establecer y usar dinámicamente.

Una variable normal se establece de la siguiente forma:

 

Si queremos hacer que una variable sea dinámica, debemos hacer uso del doble signo del dolar $$.

Con esto, hemos conseguido dos variables, una que es $var que tiene ‘hello’ y otra variable $hello que contiene la palabra ‘world’.

Así que si ponemos el siguiente código:

Vamos a visualizar en pantalla ‘Hello World’.

Aparte de esta manera de usar variables dinámicas, también podemos usar para trabajar con variables dinámicas, es usar las llaves {}.

Así que lo que metamos dentro de las llaves se tratará como un texto junto su variable.

Así que podríamos hacer lo siguiente:

Y así mostraremos todas las variables de name, recorriendo-las con su número.

Realmente creo que es lo más efectivo que podemos usar, pero hay que explicarlo todo, para poder dar la opción al usuario de que escoja lo que más le sirva en cada caso.

Hay que recordar que no somos máquinas, somos personas y evolucionamos gracias a que nos cuestionamos las cosas y siempre intentamos mejorarlas.

Espero que os haya sido útil.

Y recordad! No olvidéis comentar! En vuestro código y en el Blog! 😉

Cómo devolver los valores de una columna de un array de objetos

Hoy seguimos con PHP, que es donde mejor me muevo.

Y hoy vamos a ver cómo devolver todas las columnas de un array de objetos.

Partimos de la función array_column(), que nos devuelve las columnas de un array.

El resultado de está función sería:

Array

(

    [0] => 33

    [1] => 21

    [2] => 18

    [3] => 45

)

Así tenemos un array con las edades de las personas para poder trabajar con ellas.

Pero que ocurre si tenemos un array de objetos? En PHP 7 array_column() nos permite buscar en un array de objetos, pero en versiones anteriores debemos usar la función array_map().

Tenemos a continuación un array de objetos.

Con esta función conseguimos que ya sea un array de arrays o un array de objetos, nos devuelva un array con los valores de estas columnas.

Cómo he dicho antes, con PHP 7 no haría falta y con tan solo array_column() ya nos serviría, pero no siempre se puede pedir un entorno idílico 🙂

Espero que os haya sido útil.

Y recordad! No olvidéis comentar! En vuestro código y en el Blog!

Cómo pasar un número determinado de variables a una función en PHP

Hoy vamos a ver cómo pasar un número determinado de variables a una función en PHP, para hacer esto, usaremos la función call_user_func_array, la cual nos ayudará a llamar a una función pasando-le un determinado número de variables.

Puede que sea una situación extraña, pero por tal situación, siempre es complicado encontrar una solución, así que aquí os la pongo:

Aquí lo que hacemos es pasarle a la función test, las variables que tenemos dentro del array $params, de esta forma podremos pasar a la función las variables que nos hagan falta, sin tener que declararlas todas en la declaración de la función.ç

Esto lo que acabará mostrando será lo siguiente:

Le hemos pasado un total de: 3 variables a la función.
Que son las siguientes:
array(3) { [0]=> int(23) [1]=> string(11) "hello world" [2]=> string(29) "la página de oyagum.com mola" }

Con veis es bastante fácil pasarle las variables que necesitemos a la función.

En el caso de que en vez de tenerlo así, lo tenéis con clases, como por ejemplo $foo->bar no hay problema es tan simple como hacer lo siguiente:

Simplemente a la función call_user_func_array le pasamos como primera variable un array.

Y en el primer valor del array, tendremos la variable de la clase que queremos utilizar, en este caso $foo.

Como segundo valor le vamos a pasar un string, el cual será el nombre del método que queremos ejecutar, el cual en este caso es «bar».

Y entonces esto lo que hace es llamar a $foo->bar() pasando las 3 variables que ya hemos visto antes, tan sencillo como eso.

Espero que os haya servido lo explicado.

Y recordad! No olvidéis comentar! En vuestro código y en el Blog!

Buscar una cadena de texto dentro de un array en PHP

Hoy vamos a ver, como buscar una cadena de texto dentro de un array, utilizando diferentes funciones de PHP.

Tenemos varias formas de hacerlo y que cada una nos devuelve un resultado distinto, en las primeras opciones buscamos el valor integro en los campos, y en la última opción, buscamos el termino en el array con una expresión regular.

Vamos a ver como se hace en cada caso y que es lo que devuelve cada caso.

Buscar una cadena en el array  usando array_search

En este caso, usaremos la función array_search la cual nos buscará dentro del array para ver si dentro de los campos del array se encuentra el término que buscamos.

Aquí vemos que nos mostrará que se ha encontrado el termino «Zapatillas de tenis» en la posición 1, si hubiera más de un resultado de dicha búsqueda, solo nos mostraría el primero que encontrase.

Así que si nos interesa encontrar una coincidencia y devolver la primera que encontremos, esta opción nos serviría totalmente.

Buscar una cadena en el array  usando in_array

En esta opción, lo que vamos a hacer es buscar dentro de los campos del array, y dicha función lo que hace es devolvernos si existe o no dentro del array, simplemente eso.

Aquí no obtendremos la posición de donde se encuentra la cadena que hemos buscado, pero a lo mejor con un simple true o false nos sirva para hacer funcionar nuestro código.

Buscar una cadena en el array, usando array_filters

Los casos anteriores nos pueden servir para la mayoría de búsquedas que necesitemos. Pero ¿qué ocurre si queremos buscar en el array todos los campos que contengan un término en concreto? Que ninguna de las anteriores opciones nos sirve para lo que queremos, y es por eso que usaremos la función array_filters de PHP, con ella podremos conseguir añadir una función que nos permita hacer una búsqueda, para encontrar nuestro texto dentro de los campos del array, sin que tenga que ser exactamente el mismo que el del campo.

Como veis aquí lo que hemos hecho es tirar de la función stristr, que lo que hace es buscarnos, de forma insensible a mayúsculas y minúsculas, si el texto que le hemos dicho existe en el campo del array.

También podríamos usar si nos hiciera falta expresiones regulares, usando por ejemplo preg_match con una función como esta:

Que simplemente hace lo que hace stristr, pero usando una función más potente.

Pero al final, cada cual debe buscar lo que necesita, y en nuestro caso con la función stristr, hemos tenido suficiente.

Al final lo que nos devuelve el array_filter, es un array con el valor de los campos que coinciden, aquí hemos cogido y los hemos listado, pero vosotros luego podéis hacer lo que queráis con ellos.

Espero que os haya sido de utilidad.

Y recordad! No olvidéis comentar! En vuestro código y en el Blog!