Los estándares de codificación de WordPress comillas simples y comillas dobles

En esta serie, echamos un vistazo a los estándares de codificación PHP de WordPress para comprender mejor cómo se debe escribir el código de WordPress de calidad..

Claro, todo esto está documentado en los estándares de codificación de WordPress y es un sitio que todo desarrollador de WordPress debería tener marcado y a mano cuando trabaja en un tema, un complemento o una aplicación; Sin embargo, si recién se está iniciando en el desarrollo de WordPress, entonces es importante entender la lógica de por qué Las convenciones son como son..

En este artículo, vamos a echar un vistazo al uso de comillas simples y comillas dobles específicamente cuando se trata de cadenas.

Este puede ser el artículo más corto y directo de la serie, pero debería cubrir algunos matices importantes relacionados con el trabajo con comillas simples, comillas dobles y cadenas en WordPress.


Cadenas en PHP y Cadenas en WordPress

Antes de que realmente discutamos las cadenas en relación con WordPress, es importante entender cómo el lenguaje PHP interpreta las cadenas cuando se incluyen entre comillas simples o dobles..

Cotizaciones individuales en PHP

Primero, la forma más simple y directa de definir una cadena en PHP es simplemente envolverla con comillas simples (es decir, el 'carácter').

Como con la mayoría de los lenguajes de programación, hay son formas de escapar de los caracteres para que puedas escribir una cadena literal. Por ejemplo, si desea escribir: "Las cadenas en PHP son fáciles", como una cadena, puede hacer esto:

'Cadenas en PHP son fáciles.'

¿Ver? Las barras invertidas indicarán a PHP que escriba la comilla simple en lugar de terminar la cadena real.

La segunda cosa a tener en cuenta es que si tiene una variable, no ser reemplazado cuando se cita entre comillas simples. Por ejemplo, suponga que tiene una variable llamada $ nombre y contiene el valor "Envato".

Más específicamente, en código, esto se vería así:

$ name = 'Envato'

Si fueras a insertar el $ nombre variable en otra cadena, 'Envato' no sería reemplazado.

 $ name = 'Envato'; echo 'Estoy escribiendo para $ nombre. Es muy divertido.';

Esto solo haría eco: Estoy escribiendo para $ nombre. Es muy divertido.

Aquí es donde las comillas dobles comienzan a ser útiles.

Cotizaciones dobles en PHP

Directamente del manual de PHP:

Si la cadena está entre comillas dobles ("), PHP interpretará más secuencias de escape para caracteres especiales.

Puedes leer más sobre los caracteres de escape y otra información en el manual de PHP, pero digamos que deberíamos volver a trabajar algunas de las cadenas que hemos definido anteriormente..

Nuestro primer ejemplo, que es el que tiene la comilla simple escapada, ahora podría definirse así:

"Las cadenas en PHP son fáciles".

Nuestro segundo ejemplo podría ir un paso más allá: no solo ya no se necesita la secuencia de escape, sino que también se evaluará la variable:

 $ name = 'Envato'; echo "Estoy escribiendo para $ name. Es muy divertido";

La segunda línea literalmente hará eco: Estoy escribiendo para Envato. Es muy divertido.

Entonces, con esto cubierto como una introducción, hablemos sobre los detalles de las cadenas en WordPress. La verdad es que, si tiene un buen conocimiento de todo lo anterior, no hay mucho más que agregar aparte de unos pocos casos puntuales..

Cotizaciones individuales en WordPress

Para mantener la coherencia con las convenciones de codificación de PHP, la regla general a seguir es usar siempre comillas simples para definir sus cadenas.

Dado que gran parte del trabajo realizado en WordPress también incluye escribir un marcado dentro una cadena PHP, es mejor colocar esas cadenas entre comillas simples para que los atributos del elemento HTML puedan encerrarse entre comillas dobles.

Por ejemplo:

$ html = 'WordPress';

Obviamente, lo anterior es una experiencia de lectura mucho más limpia que tener que colocar varios caracteres de escape para manejar las comillas dobles, las barras diagonales, etc..

Si está tratando con un marcado que necesita abarcar varias líneas o donde está creando varios elementos, algunos de los cuales son elementos secundarios de otros, siempre recomiendo sangrar el código para que se vea como un documento HTML..

Por ejemplo:

 $ nombre = 'Tom McFarlin'; $ html = '
'; $ html. = ''. $ nombre. ''; $ html. =
';

Es importante tener en cuenta que esto no forma parte de los estándares de codificación de WordPress; esta convención es una que simplemente me parece útil cuando se trata de mantener el código. Sin embargo, recuerde que las cadenas entre comillas simples sí lo hacen. no evaluar el valor de una variable.

Como tal, es importante tener en cuenta que, en este caso, estamos usando la concatenación de cadenas para incluir la definición de la variable.

Cotizaciones dobles en WordPress

Al igual que con las comillas dobles en PHP, es importante tener en cuenta que hay veces en que es más preferible usarlas, especialmente cuando se necesita evaluar una variable..

Al utilizar el ejemplo del código anterior, lo adaptaríamos de la siguiente manera:

 $ nombre = 'Tom McFarlin'; $ html = "
"; $ html. ="$ nombre"; $ html. ="
";

Observe que reemplazamos todas las comillas simples por comillas dobles y que ya no tenemos que realizar ninguna concatenación de cadenas con la $ nombre Variable ya que será evaluada..

También es importante tener en cuenta que aunque es discutible más común para ver las comillas dobles aplicadas a los atributos HTML, las comillas simples también funcionan bien, especialmente en escenarios como este.


Pero hay Son Excepciones

Al trabajar con cadenas y varios lenguajes de programación, a saber HTML, puede complicarse un poco en términos de cómo está anidando su código.

Por ejemplo, digamos que estás usando PHP para escribir JavaScript, que es el responsable de representar un poco de HTML. En este escenario, vas a estar escribiendo muchas citas.

Aunque es posible simplemente alternar sus estilos de cotización, esto no funcionará el 100% del tiempo.

Incluso los estándares de codificación establecen:

Una excepción a esto es JavaScript, que a veces requiere comillas dobles o simples.

Aunque hay ocasiones en las que no puede hacer esto, esto refuerza la idea de que debemos esforzarnos por mantener cada lenguaje de programación en su propio estilo de archivo e incluirlos cuando y donde sea necesario..


¿Hay algún problema de seguridad?

Sí, pero WordPress los hace extremadamente fáciles de administrar, y aunque esto técnicamente se encuentra bajo la validación de datos, está estrechamente relacionado con exactamente lo que estamos discutiendo en este artículo..

El problema principal es que hay ocasiones en las que podemos escribir dinámicamente atributos HTML en nuestro marcado que tienen valores que no podemos anticipar. En casos como este, necesitamos poder escapar de dichos datos..

Afortunadamente, WordPress proporciona la esc_attr función. En pocas palabras, esta función tomará una cadena entrante y codificará los caracteres para asegurarse de que estén representados correctamente en el navegador.

En la práctica, lo usaría exactamente como lo demuestra el Codex:

 eco '';

Para más información, asegúrese de revisar el artículo del Codex.


Conclusión

Por lo tanto, como regla general, debe seguir usando comillas simples a no ser que vas a estar evaluando una cadena o vas a regresar y harás eco de HTML, JavaScript o, posiblemente, incluso de CSS a la persona que llama.

Así como las Normas de Codificación establecen:

Casi nunca debería tener que escapar de las comillas en una cadena, ya que solo puede alternar su estilo de cotización.

Entonces, mientras trabaja con cadenas en su trabajo futuro, tenga en cuenta estos principios y podría ayudarlo a asegurarse de que sus cadenas sean lo más limpias y fáciles de entender posible dentro del contexto de sus proyectos basados ​​en WordPress..