Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Gostaria de mostrar apenas um dos diversos post type cadastrados como faço? Segue meu codgido abaixo.

Essa Funçao esta no arquivo functions.php cria meu post type.

function cadastrando_post_type_QuemSomos(){
      $nomePlural = 'Quem Somos';
      $nomeSingular = 'Quem Somos';
      $decription = 'Informaçoes Sobre Missão, Visão e Valores da Empresa';

      $labels = array(
        'name' => $nomePlural,
        'name_singular' => $nomeSingular,
        'add_new_item' => 'Adcionar novo',
        'edit_item' => 'Editar Item'
      );

      $supports = array(
        'title',
        'editor',
        'thumbnail'
      );
      $args = array(
        'labels' => $labels,
        'public' => true,
        'decsription' => $description,
        'menu_icon' => 'dashicons-admin-home',
        'supports' => $supports
      );
      register_post_type( 'Quem_Somos', $args );
}
add_action('init', 'cadastrando_post_type_QuemSomos');

Aqui é como estou tentando mostrar, o loop esta funcionando mais nao consigo mostrar apenas um, que é o que desejo.

<?php
            $args = array('post_type=Quem_Somos&posts_per-page=1');
            $loop = new WP_Query( $args );
            if($loop-> have_posts() ) : while ($loop-> have_posts() ) : $loop->the_post();
        ?>
        <div class="row">
            <div class="col-lg-12 col-sm-6 wow fadeInLeft delay-05s">
                <div class="service-list">
                    <div class="service-list-col1">
                        <i class="fa-gear"></i>
                    </div>

                    <div class="service-list-col2">
                        <h3><?php the_title(); ?></h3>
                        <p><?php the_content(); ?></p>
                    </div>

                </div>

            </div>
            <figure class="col-lg-12 col-sm-6  text-center wow fadeInUp delay-02s">
                <?php the_post_thumbnail(); ?>
            </figure>
          <?php endwhile; else: ?>
          <?php endif; ?>
          <?php wp_reset_postdata(); ?>
2 respostas

Fala John, tudo bom?

Acho que na hora da criação do Array o WordPress está se perdendo com o _ do Quem Somos, da uma olhada nesse exemplo:

// WP_Query arguments
$args = array(
    'post_type'              => array( 'Quem Somos' ),
    'post_status'            => array( 'publish' ),
    'posts_per_page'         => '1',
);

// The Query
$query = new WP_Query( $args );

// The Loop
if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();
        // do something
    }
} else {
    // no posts found
}

// Restore original Post Data
wp_reset_postdata();

Se quiser uma dica extra, este site ajuda a criar querys no WordPress: https://generatewp.com/wp_query/

Espero ter ajudado :)

solução!

Mario ja tinha consegui resolver mais vou postar aqui pra vc compartilhar caso alguém mais tenha a mesma duvida.

Os Argumentos do meu Array no $args estavam errados estava asim: $args = array('post_type=Quem_Somos&posts_per-page=1');

a maneira correta é: $args = array( 'p' => 'IDdoPostTypeCadastrado', 'post_type' => 'nomeDoPostType' );