Cómo agregar taxonomías existentes a publicaciones de WordPress

Este artículo aborda cómo agregar las taxonómicas existentes a un tipo de publicación personalizado y cómo hacer que ese tipo de publicación personalizada aparezca en las páginas del archivo de las taxonomías respectivas. Tomaremos un ejemplo de nuestro trabajo. Recientemente hemos lanzado cursos, una nueva forma de enseñar temas en el desarrollo de WordPress. Por ahora, los cursos son solo publicaciones ordinarias, pero las convertimos en su tipo de publicación personalizada. Esto tiene una serie de ventajas, como facilitar la existencia de una página de archivo de “solo cursos”. Sin embargo, incluso si serán su propio tipo de publicación personalizada, queremos que los cursos usen tres de nuestras taxonomías existentes de WordPress:
Categoría, la taxonomía predeterminada de las categorías de WordPress,
post_tags, la taxonomía de etiqueta de WordPress predeterminada y
Dificultad, una taxonomía personalizada de dificultad que nos hemos registrado.
Además, queremos que los cursos se mezclen con nuestros otros tipos de publicaciones en las páginas de archivo. Si, por ejemplo, haga clic en el “Intermedio” para encontrar todo nuestro contenido que esté en dificultad intermedia, queremos que nuestros cursos intermedios aparezcan incluso con nuestros artículos intermedios ordinarios. Esto resulta tener más pasos. Entonces, esta semana, abordaremos cómo agregar las taxonomías existentes a un tipo personalizado de publicación y cómo hacer que ese tipo de publicación personalizada aparezca en las páginas de archivo de la taxonomía respectiva.
Algo más antes de comenzar. Si quieres aprender el desarrollo de WordPress, escribí la mejor guía para ello:
¡La mejor manera de aprender el desarrollo de WordPress y ejecutar hoy!

En funcionamiento está nuestro curso completo “Aprende el desarrollo de WordPress”. Ahora, en la tercera edición actualizada y extendida, ha ayudado a cientos de compradores felices a aprender el desarrollo de WordPress de una manera rápida, inteligente y completa. Esto es lo que tienen que decir: “Creo que cualquiera está interesado en aprender el desarrollo de WordPress necesita este curso. Ver videos era como si estuvieran muchas luces encendidas “. -Jason, desarrollador de WordPress
“Otros cursos que casi siempre he intentado no tienen explicaciones claras sobre lo que WordPress hace las cosas de cierta manera o cómo funcionan juntas. En funcionamiento hace todo esto y todo se explica claramente en un lenguaje fácil de entender “. -Caroline, WordPress Freelancer
Despierta y corre ahora
Ahora, profundicemos en el código para la adición de una taxonomía existente a una publicación personalizada de WordPress. El siguiente código es el código completo que analizaremos hoy. Este sería el mejor como el único archivo de un complemento independiente. Para obtener más información sobre la grabación de complementos, consulte nuestro artículo sobre este tema.
// 1. registrar el tipo de publicación add_action (‘init’, ‘wpshout_register_cpts’); Function wpshout_register ‘admite’ => array (‘title’, ‘editor’, ‘autor’, ‘miniatura’, ‘extracto’, ‘comentarios’, ‘revisiones’),); Register_post_type (‘curso’, $ args); } // 2. Agregue las taxonomías existentes al tipo de tipo ADD_ACTION (‘init’, ‘wpshout_add_taxonomies_to_courses’); Function wpshout_add_taxonomies_to_courses () {registre_taxonomy_for_object_type (‘categoría’, ‘curso’); registro_taxonomy_for_object_type (‘dificultad’, ‘curso’); registro_taxonomy_for_object_type (‘post_tag’, ‘curso’); } // 3. Haga que las publicaciones de cursos aparezcan en las páginas de archivo add_filter (‘pre_get_posts’, ‘wpshout_add_custom_post_types_to_query’); Function wpshout_add_custom_post_types_to_query ($ query) {if (is_archive () && $ query-> is_main_query () && vacía ($ query-> query_vars [‘supress_filters’)) {$ query-> set (‘post_type,’, ‘curso’) ); }} La conclusión más importante es que agregar taxonomías a los tipos de publicaciones personalizadas requiere tres pasos distintos. Lo anterior hace tres cosas, en orden:
Registre el tipo de “cursos” personalizados con los atributos necesarios.
Agregue tres taxonomías existentes (categoría, post_tag y nuestra dificultad de taxonomía personalizada) al tipo de publicación de cursos.
Haga que los cursos aparezcan en las páginas del archivo, de modo que una búsqueda de categoría, dificultad, etc. incluya los resultados de los cursos. La que entre estas tres piezas no es excepcionalmente difícil, sabiendo que tiene que hacer los tres, lo fue en mayor medida para mí y, espero, para ti. Veamos cada pieza más detallada.
1. Registro de cursos con registro_post_type () Esta sección usa el gancho de WordPress para ejecutar una llamada a registro_post_type () con una serie de argumentos dados por una matriz de $ args. Si nunca ha registrado una publicación de publicación personalizada, consulte la descripción del Codex sobre registro_post_type () en sí. La configuración $ args-y-Function-within-a-wordpress-ghook es absolutamente esencial para WordPress, y registrar_post_type () no es demasiado difícil de entender si está familiarizado con este modelo. Lo único que quiero mencionar es que la inclusión manual de un parámetro de ‘apoya’ en $ args ha sido necesaria para nosotros. Si lo deja completamente de $ Args, su tipo personalizado de publicación tiene algunas propiedades por defecto, pero no tiene (como fragmentos) que quería. Y si solo incluye ‘soportes’ => ‘extractos’, entonces deshabilitará cualquier otra cosa, como publicaciones, autores o contenido. Así que sentimos que es necesario enumerar cada característica estándar que queremos tener nuestros cursos:
‘Admite’ => array (‘title’, ‘editor’, ‘autor’, ‘miniatura’, ‘extracto’, ‘comentarios’, ‘revisiones’) 2. Agregar taxonomías existentes al tipo de cliente que publica esta simple sección Uso de uso Tres llamadas a registrar_taxonomy_for_object_type () para registrar las taxonomías de categoría, postag y dificultad. Estas tres cuerdas de personajes pequeños son “babosas” para las taxonomías de categoría, etiqueta y dificultad. Tuvimos que buscarlos para la categoría y la etiqueta (porque estos son las taxonómicas predeterminadas de WordPress) y supe que le di la dificultad de la babosa de dificultad cuando la registré. El resultado final se ve así:
Haga clic para aumentar

Vale la pena Pippin Williamson para el código básico de esta sección. Como nota, Pippin recomienda usar el gancho Plugins_Loaded en lugar del gancho inicial si lo hace en un complemento; Sin embargo, intenté esto y solo ITET trabajó para nosotros. 3. Uso de pre_get_posts () para agregar cursos a las páginas de archivo Esta última pieza es esencial si desea que los usuarios hagan clic, por ejemplo, “intermedios” y vea una lista de todas las publicaciones y cursos intermedios. Use una función que se conecta al importante gancho pre_get_posts de WordPress (¡que explicaremos en detalle pronto!) Para cambiar la consulta en cada página de archivo, de modo que se incluyan tanto las publicaciones como los cursos.
Aquí está el código de función nuevamente, con la lógica escrita más detallada como comentarios: función wpshout_custom_post_types_to_query ($ query) {if (// si estamos tratando de generar una página de archivo, e is_archive () && // si la consulta actual es La consulta principal de la página y $ query-> is_main_query () && // si la consulta no ha edificado al ignorar // filtros como el que estamos escribiendo ($ query-> query_vars [‘supress_filters’) {) {// luego configure la consulta para obtener publicaciones del tipo // tanto “POST” como “CURSO” $ QUERY-> SET (‘POST_TYPE’, Array (‘Post’, ‘curso’)); }} El resultado final (en un sitio de puesta en escena que mantengo localmente) se ve así: haga clic para aumentar
(Crédito por este modelo de código básico en CSS-Truss. Tenga en cuenta que hemos cambiado i_category () || is_tag () verifique solo is_archive () que cubre todos los tipos de archivo por parte del autor). Ahora sabe cómo agregar taxonomía a Los tipos de publicaciones personalizadas gracias por leer. Una vez más, cada paso en este proceso es algo simple, pero saber que tienes que hacer los tres fue un poco “aha”, como lo hice yo. ¡Como siempre, nos gustaría leer preguntas o comentarios a continuación! Imagen de crédito: Evelynishere

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 *