¿Qué es PHP? Una guía para principiantes del lenguaje de secuencias de comandos principal de WordPress

Publicado: 2022-03-22

Como hablamos mucho en el blog de WPKube, WordPress tiene muchas partes móviles. Como tal, también utiliza varios lenguajes de programación y scripts diferentes para hacer que todo hable y funcione en conjunto. Si bien a menudo leerá sobre los lenguajes de la 'santa trinidad' (HTML, CSS y JavaScript), también hay un cuarto lenguaje involucrado del que habrá oído hablar: 'PHP: preprocesador de hipertexto' (PHP). Si lee el término y todavía pregunta, ¿Qué es PHP? , ¡podemos ayudar!

PHP es un lenguaje de secuencias de comandos que ayuda a los diferentes elementos de WordPress a comunicarse con el servidor. Esto le permite acceder a las bases de datos, hace que su sitio sea dinámico y casi ejecuta el programa. Sin PHP, no tendríamos la web moderna tal como la conocemos.

En el transcurso de esta publicación, responderemos la pregunta: ¿Qué es PHP? Comprenderá los beneficios de usarlo, cómo funciona con WordPress y cómo su sitio debe ser compatible con una versión actual del idioma. Para terminar, también hablaremos sobre algunas alternativas a PHP, que pueden influir en el futuro código base de WordPress.

Una breve introducción sobre cómo funciona la web (y los lenguajes de programación que utiliza)

Para los que no lo saben, la mayoría de los archivos de sitios web viven en un servidor web. Esto le permite extraer y enviar archivos de manera óptima y tiene una infraestructura diferente a la de una computadora normal. Sin embargo, hay dos elementos en un sitio que necesitan diferentes enfoques con respecto a los datos que proporciona:

  • Lado del cliente. Para el propósito de esta publicación, el cliente es su navegador (aunque podría ser su computadora si hablamos del Protocolo seguro de transferencia de archivos (SFTP)).
  • Lado del servidor. El servidor web cumple esta función y, en un sentido básico, es un único servidor web. Sin embargo, podría tener múltiples servidores para manejar diferentes tareas con su base de datos.

Cuando se trata de los lenguajes web de la santísima trinidad, estos son todos del lado del cliente. Ellos manejan lo siguiente:

  • Lenguaje de marcado de hipertexto (HTML). Considere este el lenguaje estructural para su sitio. Si echa un vistazo a nuestra hoja de trucos de HTML5, verá que le permite definir "contenedores" y divisiones para su sitio.
  • Hojas de estilo en cascada (CSS). Si HTML es la estructura de su sitio, CSS es el lenguaje de diseño. Puede agregar todo tipo de colores, tipografías y formas a su sitio. Es correcto decir que casi todo lo que ves en una página web usa CSS para mostrarlo.
  • JavaScript. Este es el genial lenguaje de secuencias de comandos de la web, con una inmensa popularidad. Casi el 98 por ciento de la web usa JavaScript en el lado del cliente para producir elementos animados, interactividad y más. Ayuda a que un sitio se vuelva dinámico, en lugar de estático.

Sin embargo, debido a que también hay que considerar la funcionalidad del lado del servidor, y la mayoría de los sitios web usan bases de datos, también necesita otro idioma para ayudar a que los lados del cliente y del servidor hablen. Introduzca PHP.

Qué es PHP (y cómo funciona)

PHP es un lenguaje de secuencias de comandos del lado del servidor que actúa como una parte fundamental de la web. Se ejecuta en el servidor web y permite que todo lo que haga en el front-end lo sepa. Por ello, tiene una importante labor que realizar.

Por ejemplo, considere la simple tarea de navegar a un sitio web. Ingresará la URL en el navegador y, cuando confirme la acción, el código PHP se ejecutará en el servidor y devolverá el HTML, CSS y JavaScript relevantes. Si bien a menudo puede ver los lenguajes del lado del cliente y el marcado dentro de un navegador, es raro ver PHP.

Un navegador que muestra el sitio web de WPKube, con las herramientas para desarrolladores abiertas.

De hecho, la única vez que verá el código PHP en la interfaz se debe a un error: ya sea por "codificación incorrecta" o un problema genuino con su sitio.

Por supuesto, un sitio web también tendrá una base de datos, y PHP es igual de vital para acceder a ella y devolver los datos como parte de la solicitud. Si bien no es el único lenguaje de secuencias de comandos del lado del servidor disponible (y lo discutiremos más adelante), tiene una participación de mercado masiva de casi el 80 por ciento.

Qué pueden hacer las secuencias de comandos por un sitio

En este punto, debería quedar claro cómo PHP (y las secuencias de comandos en general) pueden ayudar a un sitio, pero es posible que no comprenda exactamente lo que puede hacer. Si bien verá algunos ejemplos del mundo real en una sección posterior, podemos darle algunos fragmentos para reflexionar:

  • Es la mejor manera de generar contenido dinámico en un sitio web, como datos de formulario.
  • Puede usar secuencias de comandos para manejar la información de las cookies.
  • Las secuencias de comandos administrarán y trabajarán con archivos y carpetas en el servidor web.
  • Junto con el lenguaje de consulta estructurado (SQL), en la mayoría de los casos, su base de datos también necesitará usar secuencias de comandos para agregar, eliminar y modificar sus datos.

Como tal, un lenguaje de secuencias de comandos es un componente esencial, uno de los 'cuatro fabulosos', y cuando se trata de PHP, es el lenguaje líder.

Por qué la mayor parte de la web usa PHP

Debido a que casi el 80 por ciento de la web usa PHP, la conclusión lógica es que tiene algo especial. De hecho, existen tantos beneficios en el uso de PHP como en la creación de secuencias de comandos en general:

  • PHP es un lenguaje de código abierto. Esto significa que es gratis para descargar y usar como mejor le parezca.
  • Hay cientos, si no miles, de tutoriales sobre cómo aprender PHP, y la curva de aprendizaje es superficial.
  • Debido a que el idioma es tan popular, hay toneladas de soporte de casi todos los hosts disponibles.
  • PHP también ofrece soporte incorporado para bases de datos MySQL, lo que lo convierte en la mejor opción para muchos 'desarrolladores de back-end'.
  • El programa de actualización y mantenimiento es regular. A menudo verá que salen nuevas versiones, con el apoyo de su anfitrión. Por ejemplo, PHP 7.3 y 7.4 son populares, mientras que PHP 8 ofrece grandes mejoras para su sitio, pero aún no tiene una adopción total.

Para abordar un poco más este último punto, una base de datos puede venir en varios "sabores", y WordPress arrojará un error si no tiene una base de datos. MySQL es popular, pero MariaDB es una bifurcación completa de código abierto que ofrece compatibilidad total.

El logotipo de MariaDB.

PHP es compatible con ambos, pero también le permite conectarse a cualquier tipo de base de datos, como PostgreSQL e incluso nuevos ejemplos modernos como MongoDB.

Sin embargo, PHP tiene sus detractores que afirman que el código es confuso en un nivel fundamental y que otros lenguajes de codificación modernos pueden hacer un mejor trabajo. Aun así, WordPress usa PHP, por lo que es una buena idea entender más sobre cómo funciona la plataforma y el lenguaje.

Cómo WordPress usa PHP bajo el capó

WordPress no usa PHP de manera diferente a otras aplicaciones, per se . Sin embargo, necesita algunas explicaciones. Si se dirige al sitio de WordPress.org, puede descargar la versión completa de los archivos principales de la plataforma:

La página de descarga de WordPress.org, resaltando el botón azul de descarga.

Si extrae el archivo ZIP y echa un vistazo a los contenidos, notará que la mayoría termina con la extensión .php :

Un explorador de archivos que muestra todos los archivos y carpetas principales de WordPress.

Cada archivo que quiera usar el lenguaje de secuencias de comandos, necesitará esa extensión. Sin embargo, también verá HTML allí, y le mostraremos un ejemplo de esto más adelante. Los temas y complementos que usa WordPress también usan el mismo tipo de archivos.

Dentro de los archivos de su sitio, también habrá muchas 'funciones', 'ganchos' (tanto 'acciones' como 'filtros') y más que ayudan a WordPress a usar el lenguaje PHP de una manera segura y típica. Incluso puede usarlos dentro de su archivo functions.php para mejorar el conjunto de funciones de la plataforma.

Estos fragmentos pueden ser compactos y sucintos. Por ejemplo, las dos palabras the_content(); La función mostrará la publicación completa o el contenido de la página. Como tal, hay mucho poder dentro de PHP para lograr casi cualquier cosa que necesites en tu sitio. También es por eso que WordPress puede ser un sistema de gestión de contenido (CMS) tan flexible.

Un ejemplo del mundo real de PHP utilizado en WordPress

Una página de WordPress 404 que contiene una barra de búsqueda.

Para mostrarle cómo usa PHP dentro de WordPress, podemos abrir un archivo y echar un vistazo. Vamos a usar el archivo 404.php , porque es breve y fácil de entender:

 <?php get_header(); ?> <header class="page-header alignwide"> <h1 class="page-title"><?php esc_html_e( 'Nothing here', 'twentytwentyone' ); ?></h1> </header><!-- .page-header --> <div class="error-404 not-found default-max-width"> <div class="page-content"> <p><?php esc_html_e( 'It looks like nothing was found at this location. Maybe try a search?', 'twentytwentyone' ); ?></p> <?php get_search_form(); ?> </div><!-- .page-content --> </div><!-- .error-404 --> <?php get_footer();

Hemos eliminado algunos de los comentarios por brevedad, pero el código central aquí es suficiente para trabajar. Notarás que las tres primeras líneas declaran que el código es PHP ( <?php ?> ). De hecho, estas etiquetas deben sujetar cada pieza de código PHP, como verá.

El archivo primero llama a una función para obtener el encabezado del sitio, luego, después de la etiqueta de cierre, hay un grupo de código HTML. Esto muestra algo de la flexibilidad (y complejidad) de cómo los diferentes lenguajes funcionan juntos. Puede escribir HTML y PHP en el mismo archivo, pero debe ser estricto con cada idioma. HTML no requiere las etiquetas de apertura y cierre.

A lo largo de ese HTML, también notará una o dos líneas de PHP. Así es como el contenido dinámico entra en WordPress. Los fragmentos extraerán datos de su servidor y base de datos, y los mostrarán donde lo anote dentro de su HTML. Usted define la estructura con HTML y muestra los datos con PHP.

Al final del archivo, vuelve a abrir una nueva etiqueta PHP y le indica a la página que muestre el contenido del pie de página. Esta es una descripción general simplista, pero muestra cuántas partes móviles tiene WordPress. También muestra por qué puede encontrar errores en función de la cantidad de complementos o temas que instale, especialmente si son ejemplos deficientes sin el mantenimiento del desarrollador.

Alternativas a PHP (y por qué WordPress no las usa)

Aunque PHP controla el 80 por ciento del mercado cuando se trata de secuencias de comandos del lado del servidor, no es la única solución de la que escuchará. De hecho, hay una serie de otros lenguajes que un desarrollador podría usar. Por ejemplo:

  • Rubí. Esto es tan antiguo como PHP, pero no es un lenguaje de desarrollo web dedicado. Aun así, ve algún uso como parte de la 'pila' de desarrolladores como Ruby on Rails, y tiene una gran base de fans.
  • ASP.NET. Esta es la versión de Microsoft de las secuencias de comandos del lado del servidor. Tiene una participación de mercado del diez por ciento y encuentra uso como lenguaje de secuencias de comandos para operaciones de mediana y gran escala. Tiene una calidad más alta discutible que PHP, pero cuesta más desarrollarlo.
  • Java. No debe confundir Java con JavaScript, ya que ambos son lenguajes diferentes con un enfoque diferente. Java es ideal para aplicaciones de nivel empresarial, es fácil de depurar, es rápido y seguro. Si bien los costos de desarrollo pueden ser más altos, en una línea de tiempo alternativa, WordPress podría haber usado Java como su lenguaje de secuencias de comandos.
  • Pitón. Es probable que conozca Python como un lenguaje de propósito general que es popular en la ciencia de datos. Aun así, junto con un marco como Django o Flask, Python es un fantástico lenguaje del lado del servidor con una estructura simple.

Descubrirá que estos idiomas combinados solo representan alrededor del 15-20 por ciento de todos los sitios. PHP ofrece una combinación de bajos costos de desarrollo, una curva de aprendizaje poco profunda y un alto nivel de soporte. En cuanto a por qué WordPress usa PHP, estos factores juegan un papel.

Sin embargo, es justo decir que la convención también es un factor. La bifurcación original de WordPress (b2/cafelog) usaba PHP, así que WordPress hizo lo mismo. No es una mala elección y, de hecho, permite que WordPress ofrezca todos los elementos que damos por sentado hoy.

Terminando

WordPress tiene muchas más cosas bajo el capó de lo que la mayoría de los usuarios se dan cuenta. De hecho, hay un lenguaje de programación que funciona para ayudar a que los archivos del CMS funcionen con el servidor web y la base de datos. PHP es un lenguaje central para el desarrollo web y también es fundamental para el funcionamiento de WordPress.

Esta publicación ha buscado responder a la pregunta: ¿Qué es PHP? En todo momento, hemos hablado sobre lo que puede hacer, cómo funcionan las secuencias de comandos en general e incluso un ejemplo de código PHP de los archivos de WordPress. Si bien también hay otros lenguajes de secuencias de comandos con muchos aspectos positivos, PHP es un líder del mercado y ofrece un poder casi incomparable para todos los sitios web de WordPress.

¿Te ayudó este artículo a comprender qué es PHP? ¿Tienes más preguntas? ¡Pregunte en la sección de comentarios a continuación!