Creación de un complemento de WordPress Parte 4: Mirando la pantalla de contenido por códigos cortos

¡Bienvenido a la cuarta parte de nuestra serie de creación de arado! Hasta ahora, en nuestro viaje, hemos configurado en vista de la estructura utilizando el complemento de WordPress Boilerplate y creamos un lugar separado para que nuestro contenido viva en la parte posterior, grabando nuestro propio tipo de publicación personalizada. Esta vez, ofreceremos a los usuarios de las opciones de complemento para la visualización efectiva de las citas introducidas en el sistema. Comenzaremos las cosas construyendo algunas funcionalidades para administrar la selección de citas aleatorias, luego pasaremos a nuestras propias opciones de código corto.
Hasta que terminemos esta entrega, deberíamos poder introducir contenido a través del administrador al contenido de nuestro corazón y mostrarlo fácilmente en la parte delantera de una manera conocida por innumerables otros complementos. Comencemos por obtener acceso a los datos que nos interesan. Acceder a nuestras citas Después de que hayamos dado la cabeza para usar un tipo personalizado de publicación para almacenar nuestras citas, el primer elemento con el que debemos tratar es devolver los resultados solo de ese conjunto de datos. Un viaje rápido al lado relevante del manual del complemento nos ofrece una hermosa descripción de cómo hacer esto, junto con un código ilustrativo en cuestión:
$ args = array (‘post_type’ => ‘producto’, ‘Post_per_page’ => 10);
$ bucle = nuevo WP_Query ($ args);
while ($ loop-> have_posts ()): $ bucle-> the_post ();
el título();
echo ‘
;
el contenido();
Echou ‘
‘;
el fin de los tiempos; Como puede ver anteriormente, usaremos wp_query () para lograr resultados y transmitiremos argumentos que definen el tipo de publicación que estamos siguiendo y el número de resultados en la página que se devolverán. En teoría, esto se ve bien y bien, pero plantea dos problemas inmediatos: ¿cómo probamos rápidamente si funciona?
¿Dónde presentamos esto en nuestra configuración utilizando el complemento de WordPress Boilerplate?
Tomemos esas preguntas una a la vez. Pruebas Podemos devolver ciudades aleatorias de la base de datos como documentación WP_QUEY () y recomendamos altamente el punto de serie WP_Query McColin, debe transmitirse dentro del bucle para probar cosas. No tenemos nada elegante en nuestro sitio de prueba local en este momento, por lo que simplemente ingresaremos un código exploratorio en la plantilla de página principal de nuestro tema predeterminado para ver rápidamente si las cosas funcionan. En nuestro caso, es en /themes/twentysexteen/page.php. Nuestro tipo de publicación personalizada se ha definido previamente como RDM-Quote, por lo que todo lo que hacemos a continuación es recuperar esas publicaciones y pegarlas en una lista en la pantalla.
$ args = matriz (
‘post_type’ => ‘rdm-quote’
);
// Consulta personalizada.
$ query = new WP_Query ($ args);
// Compruebe si tenemos resultados de consulta.
if ($ query-> have_posts ()) {
Echou ‘
‘;
// Comience a hacer un bucle sobre los resultados de la consulta.
While ($ query-> have_posts ()) {
$ query-> post ();
?>
<a href="?> “title =” “>


<? Php}
Echou '
';
}
// Restaurar los datos de la publicación original.
wp_reset_postata (); Ya hemos introducido muchas citas sólidas a través de nuestra sección de administrador personalizado:
Según el código anterior, esperamos ver sus títulos enumerados como enlaces en la parte inferior de cualquier página que verifiquemos en el frente. Hagamos un viaje rápido a la página, por ejemplo, que se entrega con WordPress en http://www.randomquotes.dev/sample-page:
¡Parece que somos potenciales en los negocios! Ahora queremos asegurarnos de que podemos limitar el número de citas que se muestran y asegurarnos de que sean aleatorias mientras que somos. Agregar los siguientes dos argumentos a nuestro código anterior debe hacer el trabajo: $ args = matrix (

‘post_type’ => ‘rdm-quote’,

‘Post_per_page’ => 4,
‘Ordeby’ => ‘rand’
); Algunos clics más en nuestra página de muestra son todo lo que es necesario para asegurarnos de que tengamos el número correcto de resultados y que sean diferentes cada vez:
¡Las cosas se ven bien! Ahora descubramos dónde debería vivir esta funcionalidad en nuestro complemento. Agregar extracción de cuotas aleatorias a nuestro complemento La opción principal para mostrar al usuario que buscaremos resolver inicialmente es la capacidad de simplemente agregar a través de un código corto. Suena como algo inherentemente público, por lo que veremos la carpeta en nuestro complemento. Como en la versión anterior, tomamos algunas indicaciones con respecto a la implementación real del complemento ilustrativo de Chris Wilcoxson en GitHub, que merece echar un vistazo si lo ve.
En nuestro caso, comenzaremos las cosas agregando una característica simple para devolver cotizaciones aleatorias a nuestra clase pública principal a/public/class-my-quotes-public.php:/*** Devuelve un ayuno de citas aleatorias

*
* @param array $ params una matriz de parámetros opcionales
* Número de cantidad de publicaciones de citas que se devolverán
*
* @Return objeto un objeto post
*/
Función pública get_rdm_quotes ($ params) {
$ return = ”;
$ args = matriz (
‘post_type’ => ‘rdm-quote’,
‘Post_per_page’ => $ params,
‘Ordeby’ => ‘rand’
);
$ query = new WP_Query ($ args);
if (is_wp_error ($ query)) {
$ return = ‘¡Hop! … ¡No hay publicación para ti!’;
} de lo contrario {
$ return = $ query-> publicaciones;
}
devolver $ return;
} // get_rdm Ahora veamos a través de un código corto.
Activación de los códigos cortos en nuestro complemento Una mirada rápida a la guía del manual del complemento para registrar los códigos cortos en un complemento muestra que los elementos básicos de la operación son relativamente simples. Necesitamos conectar el registro del código corto al init y luego enderezar WordPress en la dirección de la función que usaremos para administrar las cosas. En el caso de nuestra configuración local, esto significa hacer dos cosas. En primer lugar, agregamos una línea de código simple a nuestro define_public_hooks () en /includes/class-my-rdm-quot.php: /**
* Registre todos los ganchos relacionados con la funcionalidad pública
* del complemento.

*
* @From 1.0.0
* @Access Private
*/
Función privada define_public_hooks () {$ plugin_public = new my_rdm
$ this-> loader-> add_action (‘wp_enqueue_scripts’, $ plugin_public, ‘enqueu_styles’);
$ this-> loader-> add_action (‘wp_enqueue_scripts’, $ plugin_public, ‘enqueu_scripts’);
$ this-> loader-> add_action (‘init’, $ plugin_public, ‘registre_shortcodes’);
} Ahora, de hecho, entraremos en la clase pública principal en /public/class-my-rdm-quotes-public.php para hacer la conexión con el código específico que queremos establecer:
/**
* Registra todos los códigos cortos simultáneamente
*
* @return [tipo] [descripción] */
Función pública registro_shortCodes () {
add_shortCode (‘RandomQuote’, Array ($ this, ‘list_quotes’));
} // registrar_shortcodes () Como los documentos nos muestran, esto implica, prácticamente, decirle a WordPress el nombre de los de accesorio y la función específica que usaremos para ejecutar. Pasemos a eso ahora. Mostrando el contenido de contenido de pantalla corta OK, finalmente obtenga algunos resultados en la página llenando la lista de list_quotes (): /**
* Procesar un shortcode RandomQuote
*
* @param array $ atts los atributos en el código corto
*
*
* @return mixt $ salida de salida de buffer
*/
Funciones públicas list_quotes ($ atts = array ()) {
ob_start ();
$ args = shortcode_atts (array (
‘num-quotes’ => 5,
‘citas-tits’ => ‘palabras de sabiduría’,),
$ ATTS
);
$ ittems = $ this-> get_rdm_quotes ($ args [‘num-quotes’]);
// var_dump ($ elementos);
if (is_array ($ ittems) || is_object ($ ittems)) {
echo (‘

‘. $ args [‘Quotes-tits’]. ‘

‘); foreach ($ elementos como $ item) {
echo (‘
‘. $ item-> post_title.
} // para todo el mundo
echo (‘
‘);
} de lo contrario {
Echo $ artículos;
}
$ output = ob_get_contins ();
ob_end_clean ();
devuelve $ salida;
} // get_rdm
Podemos tomar los atributos de código corto a través de la función Shortcode_atts () y hemos establecido valores predeterminados para el número de publicaciones y título.
Hay una llamada rápida y sucia var_dump () allí si tenemos que examinar rápidamente los datos con los que estamos tratando.
Confesamos los datos con un aspecto HTML básico que se mostrará en la página y usamos el almacenamiento en búfer de salida para evitar posibles problemas de visualización frontal.
Por supuesto, aquí hay muchas mejoras, pero veamos si podemos obtener algunos resultados primero. Comenzaremos llamando a nuestro breve código básico en una publicación estándar:
Con respecto a la versión en vivo de la publicación, vemos que los valores predeterminados están bellamente instalados:
Ahora agregemos algunos de nuestros propios atributos para ver si también funciona:
Una actualización rápida de la página y podemos ver que los atributos funcionan bien:



Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *