Cómo crear un sencillo plugin de preguntas frecuentes de WordPress

Category: Tutorial 5 0

La sección "Preguntas frecuentes" es una gran herramienta para dar a sus clientes la respuesta correcta a sus preguntas. Eso se está volviendo muy popular. Pero muy a menudo las preguntas frecuentes están integradas dentro del tema premium, pero ¿qué pasa con los temas gratuitos? Aquí tienes un tutorial para crear un sencillo plugin de FAQ que funcionará con cualquier tema. Este tutorial cubrirá sólo los pasos básicos para que puedas personalizar la sección de preguntas frecuentes y hacerla tuya.

Paso 1: Crear el plugin

Para empezar, crea una nueva carpeta en tu "wp-content/plugins" carpeta llamada "rc-faq". Luego crea un nuevo archivo dentro de esta carpeta llamado "rc-faq.php" y coloca este código:

pre line-numbers language-php"<?php /* Nombre del plugin: RC Faq URL del plugin: http://remicorson.com/rc-faq Descripción: Un simple plugin de preguntas frecuentes Versión: 1.0 Autor: Remi Corson Autor URI: http://remicorson.com Contribuyentes: corsonr */

Paso 2: Registrar la FAQ Tipo de correo personalizado

Ahora necesitamos registrar un tipo de puesto personalizado. Si no está familiarizado con esta parte, puede echar un vistazo al códice.

pre line-numbers language-php"/* * Register CPT rc_faq * */ function rc_faq_setup_post_types() { $faq_labels = apply_filters( 'rc_faq_labels', array( 'nombre' => 'FAQs', 'nombre_singular' => 'FAQ', 'add_new' => __('Add New', 'rc_faq'), 'add_new_item' => __('Add New FAQ', 'rc_faq'), 'edit_item' => __('Editar FAQ', 'rc_faq'), 'new_item' => __('New FAQ', 'rc_faq'), 'all_items' => __('All FAQs', 'rc_faq'), 'view_item' => __('View FAQ', 'rc_faq'), 'search_items' => __('Search FAQs', 'rc_faq'), 'no_encontrado' => __('No se encontraron FAQs', 'rc_faq'), 'not_found_in_trash' => __('No se encuentran preguntas frecuentes en Trash', 'rc_faq'), 'parent_item_colon' => '', 'nombre_del_menú' => __('FAQs', 'rc_faq'), 'exclude_from_search' => true ) ); $faq_args = array( 'etiquetas' => $faq_labels, 'public' => true, 'public_queryable'=> true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'tipo_de_capacidad' => 'post', 'has_archivo' => falso, 'jerárquico' => falso, 'supports' => apply_filters('rc_faq_supports', array( 'title', 'editor' ) ), ); register_post_type( 'rc_faq', apply_filters( 'rc_faq_post_type_args', $faq_args ) ); } add_action('init', 'rc_faq_setup_post_types');

Tenga en cuenta el uso de la función “apply_filters()”. Esto permite modificar el soporte y los argumentos sin modificar el propio plugin.

Paso 3: Crear un código corto para mostrar las preguntas frecuentes

En este paso es donde vamos a crear un simple atajo con un solo parámetro que mostrará las preguntas frecuentes a su visitante. La idea es listar sólo el título de las FAQs y mostrar las respuestas sólo cuando se hace clic en el título.

El código abreviado tendrá un único parámetro "limit" que define el número de elementos a mostrar. Por supuesto, puedes añadir tus propios atributos: orden, orden por, etc…

Además, este atajo contiene un fragmento de javascript incluido directamente dentro del propio atajo para que el javascript sólo se cargue cuando estés en la página que tiene el atajo.

Por último, ocultamos por defecto el contenido de las FAQ y lo mostramos sólo cuando se hace clic en su título.

pre line-numbers language-php"/* * Añadir [rc_faq limit="-1"] shortcode * */ function rc_faq_shortcode( $atts, $content = null ) { extract(shortcode_atts(array( …límite, límite, límite; =&amp, gt, &apos, ' ), $atts ) ) ); // Definir límite si ( $limit ) { $posts_per_page = $limit; } más { $posts_per_page = '-1'; } ob_start(); // Crear la consulta $post_type = 'rc_faq'; $orderby = 'menu_order'; $order = 'ASC'; $query = nueva WP_Query( array ( ='tipo_postal' => $postal_tipo, ='posts_per_page' => $posts_per_page, 'orderby' => $orderby, 'orden' => $orden, 'no_encontré_las_filas& $post_count = $query- $i = 1; // Muestra la información de las FAQ si ( $post_count > 0) : // Loop mientras que ($query- ~ – have_posts()) : $query- ~ – the_post(); ? www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. www. ww. www. www. www. www. www. www. www. www. www. ww. ww. www. ww. www. www. ww. www. www. www. www. www. www. www. www. www. ww. www. www. www. www; ?php eco get_the_content(); ?>p >&lt </h3;~; ?;?php $i++; mientras tanto; endif; // Reajustar la consulta para prevenir conflictos wp_reset_query(); ?> wp_reset_query(); ?wp_reset_query(); ?wp_reset_query(); ?wp_reset_query(); ?wp_reset_query(); ?wp_reset_query() function rc_faq_toggle(id) { var e = document.getElementById(id); e.style.display = ((e.style.display!=none) ? none : block); } //…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/…/..; …y el guión..; <?php devuelve ob_get_clean(); } add_shortcode( “rc_faq”, “rc_faq_shortcode” ); ?nbsp;;

¡Y eso es todo!

El resultado final

Aquí está el resultado final en la administración:

Y en el lado de los visitantes:

Eso es simple pero funciona y puedes personalizarlo como quieras! Espero que hayas disfrutado de este tutorial, me encantaría recibir tus comentarios en la sección de comentarios!

Related Articles