Conocimientos básicos de PHP para WordPress

Conocimientos básicos de PHP para WordPress

Compartir esta noticia

Los conocimientos básicos de PHP para WordPress son imprescindibles si quieres entender y trabajar con WordPress. Y sí, es cierto que existen muchos plugins para solucionar la gran mayoría de necesidades básicas. Pero quizá no es suficiente.

Muchos plugins solucionan algún problema puntual que puedas tener. El conflicto puede llegar porque estos sean muy grandes y ralenticen tu sitio web porque solo necesitas una característica.

Por ejemplo, Jetpack, de Automattic -la empresa de WordPress-, es un plugin con multitud de funcionalidades como un módulo para compartir en redes sociales, estadísticas sobre visitas, SEO o compatibilidad con distintos módulos de publicidad como Facebook Ads y Google Ads.

Sin embargo, una función y un conector en el archivo functions del tema hijo de tu plantilla te puede ayudar a añadir un módulo para redes sociales. Luego solo necesitarías algunos conocimientos en HTML y CSS para estructurar y maquetar ese código respecto a lo que desees.

Pero, ¿qué conocimientos básicos en PHP me pueden ayudar con WordPress?

Sintaxis de PHP

La sintaxis básica de PHP es muy sencilla. Esto lo convierte en un lenguaje con una curva de aprendizaje sencilla. Sin embargo, eso no quiere decir que no requiera tiempo, práctica y dedicación para dominarlo.

El código que puedes ver arriba es un pequeño fragmento totalmente funcional. Si tienes un servidor local o un servidor remoto -en la web-, crea un archivo con formato PHP y pega ese código. Verás que ha sido sencillo con tan solo el bloc de notas de tu sistema operativo.

Este lenguaje es muy robusto porque no solo admite su lenguaje. Se creó por y para la web. Estos archivos admiten las tecnologías front-end de la web: HTML, CSS y JavaScript.

Al igual que en el ejemplo anterior, si piensas utilizar este lenguaje, necesitas englobar todo dentro de las etiquetas correspondientes. <?php es la etiqueta de apertura y ?> la de cierre. Todas las sentencias acaban siempre con punto y coma (;).

Además, te permite colocar comentarios según tus necesidades.

  • Las dos barras laterales (//) sirve para comentarios en una única línea.
  • La almohadilla (#) también es menos común y tiene la misma funcionalidad que las dos barras laterales.
  • El contenido englobado entre una apertura con una barra lateral y un asterisco (/*) y cerrado con un asterisco y una barra lateral (*/), será un comentario con más de un línea.

Imprimir sentencias: Echo / Print

Si te has fijado en el primer código que he colocado, verás que he utilizado la palabra echo delante del contenido entre comillas. Tanto echo como print se utilizan para imprimir en la pantalla distintos tipos de datos. Los tipos de datos los vamos a ver en el siguiente punto.

Ambas funciones están destinadas a mostrar los datos en pantalla. Se pueden utilizar de dos maneras: echo o print seguido del dato (echo 2 / print “cadena”) o echo o print con el paréntesis con el dato (echo (2) / print (“cadena”)).

Existen diferencias marginales entre ambas funciones. La diferencia es que print es capaz de retornar un valor mientras que echo no lo es. Como función, echo puede tener más parámetros, aunque apenas se usan, y es marginalmente más rápido que print.

Variables

Las variables son muy útiles en prácticamente todos los lenguajes de programación. Una variable se podría definir como un contenedor de datos, distintos tipos de datos.

Las variables pueden contener casi cualquier tipo de dato como números enteros o cadenas de texto. En próximos puntos, veremos los tipos de datos o los arreglos (arrays), que permiten almacenar múltiples datos en una única variable.

Además, se pueden concatenar distintas variables, cadenas de texto o números en una única línea o distintos variables dentro de otra variable (el límite es tu capacidad de improvisar una solución). Otra de las ventajas de las variables es que se pueden utilizar operadores matemáticos para sumar o restar números, por ejemplo.

Arreglos o arrays

Es curioso como se ha extendido arreglo para definir un array en castellano. Si bien una traducción más acertada sería una variedad o selección de algo, supongo que la palabra arreglo se parece mucho más a la inglesa. No obstante, eres libre para usar la expresión que quieras.

Un arreglo no es más que otra función específica creado a propósito para almacenar distintos datos. Lo que yo te he mostrado es un array muy básico, pero pueden ser muy complejos. Se podría crear algo parecido con variables para almacenar un amigo cada vez. Esto no sería para nada eficiente.

Existen tres tipos de arreglos en PHP:

Arreglos indexados

Los arreglos indexados son aquellos a los que accedemos a través de la numeración. Debo recordarte que en PHP el contador se inicia en 0 y no en 1. Vamos a seguir el ejemplo anterior para exponerte cómo imprimirlos en pantalla.

Puedes comprobar que para acceder a cada elemento del array, se utiliza un número entre corchetes con el nombre de la variable que lo almacena. Y, además, tienes un buen ejemplo para ver el uso de la concatenación.

Si quieres probar todos los códigos que voy dejando en este post, tan solo necesitas seguir las instrucciones que te he dado anteriormente. Crea un archivo con formato PHP en un servidor local (te ahorras pagar o buscar uno gratuito), pega este código con el bloc de notas, colocalo en la carpeta del servidor que te indique y ábrelo en tu navegador.

Arreglos asociativos

Este tipo de arrays son un poquito más complejos, aunque son más sencillos de acceder a ellos porque controlas una llave a la que le asignas el dato.

¿Te parecen más fáciles o más difíciles que los indexados? Yo soy de los que piensa que los arreglos asociativos son más sencillos porque tú asignas una llave (el primer elemento) a un valor (el segundo elemento). Al programar otros elementos, es más sencillo acceder y reconocerlos.

Arreglos multidimensionales

Se riza el rizo. Este tipo de arreglos no son más que un arreglo dentro de otro arreglo. Y no, no es un trabalenguas para molestarte. Te voy a mostrar un ejemplo, pero esto no debería formar parte de unos conocimientos básicos de PHP.

Tipos de datos

Los lenguajes, ya sean informáticos o humanos, están destinados a la comunicación. Y para ello necesitan datos. En los lenguajes de programación, existen distintos tipos de datos como los enteros o flotantes (números), lógicos, cadenas (caracteres) o arreglos.

Y ya hemos visto un tipo de dato en el apartado anterior. Los arreglos también se consideran como un tipo de información que recogen las variables. He preferido sacar ese apartado de este porque era más largo y denso.

Así que, ¡vamos a empezar a ver datos!

Cadenas

Las cadenas (strings en inglés) son básicamente una secuencia de caracteres dentro de comillas simples o dobles. Estas ya las hemos visto en ejemplos anteriores como, por ejemplo, los nombres de los coches en el arreglo multidimensional. Sin embargo, te voy a colocar otro ejemplo.

Comprobarás que he utilizado dos tipos de comillas, una en cada variable. En la mayoría de los casos no hay diferencia entre un tipo y otro. Encuentra por ti mismo las diferencias en Internet o te tocará esperar a otro post con PHP más avanzado. Eso sí, ¡solo se puede usar un tipo de comilla por cadena!

Enteros

Los números enteros (integers) siguen el mismo esquema que en las matemáticas. Hay que recordar que los primeros lenguajes de programación nacieron para esta ciencia y la creación de las calculadoras científicas. Los enteros admiten numeración entre 2.147.483.648 y -2.147.483.648.

Voy a mostrarte los distintos tipos de números enteros que admite este lenguaje:

  • Decimal.
  • Hexadecimal (comienzan con 0x).
  • Octal (comienzan con 0).
  • Binario (comienzan con 0b).

Si quieres comprobar que estos tipos de datos son correctos, puedes utilizar la funcion var_dump($variable) para que te lo muestre. Esto vale para cualquier tipo de dato, se suele utilizar mucho para analizar la profundidad de los arreglos.

Flotantes

Los números flotantes (float pointing number) son aquellos que utilizan el punto decimal o números exponenciales. Los decimales se colocan seguidos de un punto, te aviso para que no te confundas con los miles y las comas que hemos usado toda la vida en clase.

Lógicos

Los datos lógicos (boolean) son los más simples que vas a encontrar: verdadero (true) o falso (false). La expresión booleano se ha ido adaptando al castellano en lugar de utilizar su equivalente. Este tipo de datos se suelen utilizar para elaborar condicionales, que veremos más adelante.

Existen otros tipos de datos: los nulos (NULL) que solo contienen esa información, pero que no necesitas conocer ahora. También existen los objetos (objects) en PHP para programación. No te voy a mostrar cómo es un objeto porque están destinados para una explicación más avanzada. Necesitaría un artículo o más para explicarlo correctamente.

Operadores

Muchos te van a recordar a tu etapa en las matemáticas, si ha acabado claro. Los operadores se suelen utilizar para realizar distintas operaciones con las variables y los distintos datos que existen en PHP. No te sorprendas si te cuesta cogerle un poco el truquillo aunque conozcas básicamente la mayoría de los caracteres.

Aritméticos

Los operadores aritméticos son aquellos que se utilizan básicamente con los números. Estoy seguro de que sabes cuáles son. Se trata, al fin y al cabo, de la suma (+), la resta (), la multiplicación (*) y la división (/). Existen otros dos menos usadas como el resto de una división (%) y las potencias (**).

Todos estos operadores aritméticos precisan de dos valores numéricos para funcionar. Por ejemplo, 4 + 5 o 9 / 3. En el caso del resto, hace la división de los números que indiques mostrando el resto. Y en las potencias, simplemente eleva el primer valor (base) al segundo valor (exponente).

Asignación

Los operadores de asignación están concebidos para colocarle un valor a una variable. El operador de igual (=) se usa para asignar un valor a cualquier variable, pero los demás son solo válidos para caracteres numéricos.

El funcionamiento del operador puede que no lo hayas visto, pero verás que es muy sencillo cuando le coges el truco. Se trata básicamente de usar el operador aritmético deseado junto al operador de asignación. Se pueden utilizar todos los anteriores menos la potenciación.

Este es el patrón a seguir: x += y. Esto quiere decir lo mismo que x = x + y. La variable utilizada tiene que contener algún dato numérico para poder realizar la operación el siguiente dato. Por ejemplo:

Comparación

La función de los operadores de comparación es, valga la redundancia, comparar dos valores (números o cadenas). En este caso, te voy a mostrar los distintos caracteres en una lista porque son más y más variados:

  • Igual – == – Devuelve un valor verdadero si los valores comparados son iguales.
  • Idéntico – === – Devuelve un valor verdadero si los valores son iguales y del mismo tipo.
  • No igual – != o <> – Devuelve un valor verdadero si los valores no son iguales.
  • No idéntico – !== – Devuelve un valor verdadero si los valores no son iguales o del mismo tipo.
  • Mayor que – > – Devuelve un valor verdadero si el primer valor es mayor que el segundo.
  • Menor que – < – Devuelve un valor verdadero si el primer valor es menor que el segundo.
  • Mayor o igual que – >= – Devuelve un valor verdadero si el primer valor es mayor o igual que el segundo.
  • Menor o igual que – <= – Devuelve un valor veridadero si el primer valor es menor o igual que el segundo.

Aumento y reducción

Estos son para aumentar o reducir uno a un valor númerico. Son básicamente estos:

  • Aumento anterior – ++$x – Incrementa en uno el valor y devuelve la $x. Esto quiere decir que si estás imprimiendo la variable aparecerá directamente con el número aumentado.
  • Aumento posterior – $x++ – Primero devuelve el valor y luego incrementa uno. Esto quiere decir que necesitas volver a llamar a la variable tras aumentarle uno.
  • Reducción anterior – –$x – Reduce en uno el valor y devuelve la $x. Esto quiere decir que si estás imprimiendo la variable aparecerá directamente con el número reducido.
  • Reducción posterior – $x– – Primero devuelve el valor y luego incrementa uno. Esto quiere decir que necesitas volver a llamar a la variable tras reducirle uno.

Lógicos

Los operadores lógicos se usan para establecer distintas condiciones. Veremos mejor su uso en el próximo punto sobre las funciones condicionales.

  • and o && – La traducción literal es la conjunción y, por lo que se tienen que cumplir ambos valores en la condición.
  • or o || – La traducción literal es la conjunción o, por lo que solo se tiene que cumplir un valor para funcionar.
  • xor – La condición solo se cumple si uno de los valores es verdadero, pero no ambos.
  • ! – La exclamación de finalización funciona si la variable no es verdadera. Este caracter se coloca delante de la variable o valor.

Condicionales

Las sentencias condicionales establecen la ejecución de distinto código si se cumplen. Una condición se puede utilizar, por ejemplo, para decidir a qué tipo de usuarios les va a mostrar un contenido. Imagina qué eres un periódico y a tus usuarios de pago les ofreces un contenido de mayor calidad y elaboración.

If

If significaría en castellano si y es la palabra que se usa para comenzar un condicional. Esta es su sintaxis:

if(se cumple la condición) {

// Código a ejecutar

}

Si seguimos el ejemplo que he puesto antes, vamos a crear un condicional ficticio para mostrarle a los suscriptores conectados más contenido especial. Esto es solo ejemplo porque en realidad sería muchísimo más complicado de crear.

If… else

Esta sentencia está creada para ejecutarse tanto si se cumple o no la condición. Si se cumple la función mostrará el primer fragmento de código y si no se cumple mostrará el otro. Esta es su sintaxis:

if(se cumple la condición) {

// Código a ejecutar

} else {

// Código a ejecutar

}

Vamos a seguir con el ejemplo anterior. En este caso, le decimos a nuestro código que si el usuario está registrado le muestres el contenido especial. Si el visitante no está registrado, entonces solo mostraría el contenido gratuito.

If… elseif… else

¿Qué hay más? Siento decirte que es así. Esta sentencia está hecha para ejecutar más de dos condiciones (esto quiere decir que si necesitas más de dos puedes utilizar otro elseif más). Este ejemplo sigue el mismo patrón con usuarios registrados y usuarios de pago. Esta es su sintaxis:

if(se cumple la condición) {

// Código a ejecutar

} elseif(se cumple la condición) {

} else {

// Código a ejecutar

}

Seguimos haciendo algo más complejo nuestro ejemplo. En este caso, tenemos dos tipos de usuario: el suscriptor que paga por un servicio, el usuario registrado que obtiene ciertas ventajas por darnos sus datos y el visitante neutro.

Sin embargo, si quieres usar una sentencia con más de tres condiciones para ejecutar distinto código, existe otra más sencilla para esto. La sentencia switch. Se suele usar menos, por lo que considero que no es tan relevante y la lectura del artículo será más ligera.

Bucles

Los bucles son fragmento de código que se repetirá en función de las condiciones establecidas. Este tipo de sentencias están creadas para que el propio servidor se encargue de repetir distintos códigos muy parecidos sin tener que escribir todos. WordPress utiliza los bucles para mostrar las distintas entradas, por ejemplo.

Existen cuatro tipos de bucles, pero solo te voy a mostrar tres porque el otro es menos común y muy parecido al primero que vamos a ver:

While

La sentencia while ejecuta un bloque de código mientras se cumplan las condiciones. WordPress tiene creada una clase -PHP avanzado, amigo/a- denominada WP_Query para mostrar entradas, páginas o post personalizados en función de las necesidades de tu tema. Las opciones son casi infinitas. Esta es su sintaxis

while (se ejecutará mientras se cumpla la función) {

// Fragmento de código a ejecutar

}

Imagínate que tienes un sitio de viajes. A lo mejor te gustaría tener un post personalizado para poner los distintos destinos ofertados. Seguirías teniendo disponibles las entradas para el blog y las páginas. Sin embargo, te voy a dejar un ejemplo del funcionamiento de while.

Como podemos comprobar si ejecutásemos este código, imprimiría en pantalla la misma frase en pantalla cuatro veces, con la salvedad de que aumentaría el número en cuestión. Cuando llegase al cinco, la condición dejaría de cumplirse y finalizaría el bucle.

For

El bucle for está pensado para ejecutar un código sabiendo de antemano las veces que vas a necesitar que se ejecute. La diferencia sustancial entre while y for está en que while puede ser infinito. Un error muy común es configurar erróneamente un bucle while y saturar los recursos del servidor porque se está ejecutando continuamente.

Esta es su sintaxis:

for(valor inicial, valor comparado, aumentador) {

// Fragmento de código a repetir

}

La sintaxis de esta sentencia es algo más complicada de lo que hemos visto, ¿no? Te lo explicó brevemente. El primer parámetro define el valor inicial para empezar el bucle. El segundo parámetro es el que se comprueba para saber si se cumple la condición. El tercer parámetro es el aumentador del contador. Para muestra un botón:

En este caso, sabemos cómo va a funcionar este bucle. La frase comenzará desde el número 5 y se repetirá en las ocasiones necesarias hasta llegar al número 10. El aumentador que he usado te sonará porque te lo he puesto anteriormente en los operadores.

Foreach

Este bucle es distinto a los demás porque está ideado para recorrer los arreglos. Un foreach recorre la llave y el valor de un array si es asociativo y el valor si es indexado. Esta es su sintaxis:

foreach($array as $value) {

// Código para ejecutar en un arreglo indexado

}

foreach($array as $key => $value) {

// Código para ejecutar en un arreglo asociativo

}

Si ejecutas ese código en un archivo PHP, podrás comprobar que ha imprimido las distintas marcas en Fórmula Uno. En el otro foreach, imprime las distintas escuderías y su piloto principal.

Funciones

Este es el verdadero poder de PHP. Este lenguaje ya tiene creado más de 1000 funciones para poder utilizar por el programador sin tener que crear una línea de código más. Tan solo te quedará declararla y colocar los argumentos necesarios si te los pide.

Una función ejecuta un fragmento de código cuando se la llama. Además, puede recibir distintos argumentos para modificar su comportamiento. Esta es su sintaxis:

function (argumentos) {

// Código a ejecutar

}

Una función solo puede empezar con una letra o una barra baja. Este es un pequeño ejemplo de su funcionamiento.

Cuando declaras la función, solo sirve para que guardar los datos que queremos ejecutar en un futuro. La función solo puede arrancar cuando la ejecutamos. En otras palabras, tenemos que escribir su nombre seguido de los paréntesis como en el ejemplo anterior.

Las funciones permiten utilizar diferentes argumentos que se comportan como las variables, es decir, admiten distintos tipos de datos.

En este ejemplo le hemos introducido un argumento a nuestra función. Hemos conseguido que en la función introduzcamos nuestro nombre para que lo muestre en pantalla. O el nombre que queramos porque este lenguaje se plega a tu voluntad.

Además, si le asignamos un valor a la variable del argumento se mostrará este si no añadimos ningún dato al ejecutar la función. En el siguiente ejemplo, podemos comprobar que si no colocamos ningún número al llamar a la función, esta directamente muestra el 50.

Por último, las funciones pueden retornar valores también. Por ejemplo:

Y 3.500 palabras después, hemos acabado este repaso básico por las variables, las funciones, los condicionales, los bucles, los tipos de datos y los operadores en PHP. Uff, al final, se hace un poquito pesado.

¿Tenías algún conocimiento de PHP? ¿Te han resultado útiles las explicaciones que he dado sobre lo más básico en PHP? ¿Echas de menos algo? ¿O crees que algo no está lo suficientemente bien explicado?

Te invito a que me dejes tu comentarios en la caja de abajo. ¡Gracias por leerme!

Deja un comentario

Información sobre protección de datos:

  • El responsable es Pedro Peralta.
  • El fin del tratamiento es el control el spam y la gestión de comentarios.
  • La legitimación es tu consentimiento en el checkbox.
  • Los datos no se comunicarán a terceros salvo por obligación legal.
  • Derechos de acceso, rectificación, cancelación, portabilidad, olvido.
  • Contacto en mi página de contacto.
  • Más información en la política de privacidad.

Cerrar menú