Bem vindo ao
Blog da FULL.

Aprenda, crie e cresça seu negócio na internet.

Encontre conteúdos, dicas, tutoriais e novidades sobre as principais ferramentas Wordpress

Como criar um plugin simples de perguntas frequentes do WordPress

Você está em:

Como criar um plugin simples de perguntas frequentes do WordPress

Uma seção de “Perguntas Frequentes” é uma ótima ferramenta para dar a seus clientes a resposta certa para suas perguntas. Isso está se tornando muito popular. Mas muitas vezes as perguntas frequentes são integradas ao tema premium, mas e os temas gratuitos? Aqui está um tutorial para criar um plugin de FAQ simples que funcionará com qualquer tema. Este tutorial cobrirá apenas as etapas básicas para que você possa personalizar a seção de perguntas frequentes e torná-la sua!

Etapa 1: criar o plug-in

Para começar, crie uma nova pasta em sua pasta “wp-content/plugins” chamada “rc-faq”. Em seguida, crie um novo arquivo dentro desta pasta chamado “rc-faq.php” e coloque este código:

<?php

/*

Plugin Name: RC Faq

Plugin URL: http://remicorson.com/rc-faq

Description: A simple FAQ plugin

Version: 1.0

Author: Remi Corson

Author URI: http://remicorson.com

Contributors: corsonr

*/

Etapa 2: registrar o tipo de postagem personalizada de perguntas frequentes

Agora precisamos registrar um tipo de postagem personalizado. Se você não estiver familiarizado com esta parte, você pode dar uma olhada no Codex .

/*

 * Register CPT rc_faq

 *

 */

function rc_faq_setup_post_types() {

$faq_labels =  apply_filters( ‘rc_faq_labels’, array(

‘name’                => ‘FAQs’,

‘singular_name’       => ‘FAQ’,

‘add_new’             => __(‘Add New’, ‘rc_faq’),

‘add_new_item’        => __(‘Add New FAQ’, ‘rc_faq’),

‘edit_item’           => __(‘Edit 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’),

‘not_found’           => __(‘No FAQs found’, ‘rc_faq’),

‘not_found_in_trash’  => __(‘No FAQs found in Trash’, ‘rc_faq’),

‘parent_item_colon’   => ”,

‘menu_name’           => __(‘FAQs’, ‘rc_faq’),

‘exclude_from_search’ => true

) );

$faq_args = array(

‘labels’ => $faq_labels,

‘public’ => true,

‘publicly_queryable’=> true,

‘show_ui’ => true,

‘show_in_menu’ => true,

‘query_var’ => true,

‘capability_type’ => ‘post’,

‘has_archive’ => false,

‘hierarchical’ => false,

‘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’);

Observe o uso da função apply_filters() . Isso permite que você modifique o suporte e os argumentos sem modificar o próprio plug-in.

Etapa 3: crie um código de acesso para exibir as perguntas frequentes

Esta etapa é onde vamos criar um código de acesso simples com apenas um parâmetro que mostrará as perguntas frequentes para o seu visitante. A ideia é listar apenas o título das perguntas frequentes e exibir as respostas apenas quando o título for clicado.

O shortcode terá um parâmetro de “limite” exclusivo que define o número de itens a serem exibidos. Claro que você pode adicionar seus próprios atributos: pedido, pedido por, etc…

Além disso, esse código de acesso contém um snippet de javascript incluído diretamente no próprio código de acesso, para que o javascript seja carregado apenas quando você estiver na página que contém o código de acesso.

Por fim, ocultamos por padrão o conteúdo do FAQ e o exibimos apenas quando seu título é clicado.

/*

 * Add [rc_faq limit=”-1″] shortcode

 *

 */

function rc_faq_shortcode( $atts, $content = null ) {

extract(shortcode_atts(array(

“limit” => ”

), $atts ) );

// Define limit

if ( $limit ) { 

$posts_per_page = $limit; 

} else {

$posts_per_page = ‘-1’;

}

ob_start();

// Create the Query

$post_type = ‘rc_faq’;

$orderby   = ‘menu_order’;

$order     = ‘ASC’;

$query = new WP_Query( array ( 

‘post_type’      => $post_type,

‘posts_per_page’ => $posts_per_page,

‘orderby’        => $orderby, 

‘order’          => $order,

‘no_found_rows’  => 1

) );

//Get post type count

$post_count = $query->post_count;

$i = 1;

// Displays FAQ info

if ( $post_count > 0) :

// Loop

while ($query->have_posts()) : $query->the_post(); ?>

<h3 class=”rc_faq_title”><a href=”#” onclick=”rc_faq_toggle(‘rc_faq_<?php echo get_the_ID(); ?>’);”><?php the_title(); ?></a></h3>

<p id=”rc_faq_<?php echo get_the_ID(); ?>” style=”display: none;”><?php echo get_the_content(); ?></p>

<?php

$i++;

endwhile;

endif;

// Reset query to prevent conflicts

wp_reset_query(); ?>

<script type=”text/javascript”>

<!–

function rc_faq_toggle(id) {

var e = document.getElementById(id);

e.style.display = ((e.style.display!=’none’) ? ‘none’ : ‘block’);

}

//–>

</script>

<?php

return ob_get_clean();

}

add_shortcode( “rc_faq”, “rc_faq_shortcode” ); ?>

E é isso !

O resultado final

Aqui está o resultado final na administração:

Painel de administração do plugin WordPress FAQ

E do lado dos visitantes:

Interface de usuário do plug-in de perguntas frequentes do WordPress

Isso é simples, mas funciona e você pode personalizá-lo como quiser! Espero que tenham gostado deste tutorial, adoraria receber seus comentários na seção de comentários!

Aprenda com a FULL.

Junte-se a mais de 50 mil pessoas que recebem em primeira mão as principais ferramentas e tecnologia para desenvolvimento web

O meu carrinho
🎁 Faltam 300,00 para liberar o Cupom Secreto
O seu carrinho está vazio.

Parece que ainda não tomou uma decisão.