Mostrar tipos de posts personalizados en el frontend

1 dic 2014, 07:36:28
Vistas: 17K
Votos: 0

Estoy intentando entender los tipos de posts personalizados. Lo que quiero lograr es un listado simple de sucursales. Hay un menú de distribuidores con desplegables de regiones. Cuando haces clic en una región, solo quiero que muestre las sucursales de esa zona. Nada complicado, sin mapas, solo texto plano con el nombre de la sucursal y datos de contacto + dirección. Algo así:

Nombre Sucursal
Persona de Contacto
Dirección
Teléfono


Nombre Sucursal 2
Persona de Contacto 2
Dirección 2
Teléfono 2

He usado el plugin Custom Post UI y otro que me permite añadir estos datos en el backend. Pero no logro entender cómo mostrarlos en el frontend.

No quiero que funcione como un post normal donde lista todo y haces clic para más detalles. Debe mostrarse como arriba cuando haces clic en una región del desplegable. ¿Hay algún plugin que haga esto o hay que programarlo manualmente?

3
Comentarios

Tienes que crear un archivo de tipo de entrada personalizado en tu tema como: archive-{$post-type}.php. Eso es todo. Es lo fundamental. :)

Mayeenul Islam Mayeenul Islam
1 dic 2014 07:55:11

¿Creaste el CPT y los campos personalizados usando un plugin?

Brad Dalton Brad Dalton
1 dic 2014 10:44:37

Hola. Sí, usé un plugin. Creo que fue Custom Post UI

Iggy's Pop Iggy's Pop
1 dic 2014 22:08:35
Todas las respuestas a la pregunta 3
1

Puedes hacerlo fácilmente de esta manera, simplemente duplica single.php y renómbralo como single-custom-post-type-name.php, por ejemplo single-cars.php, lo mismo aplica para archive o taxonomy, taxonomy-taxonomy-name.php o archive-taxonomy-name.php

O puedes crear tu consulta para una página aleatoria, página de inicio o blog:

<?php
// La Consulta
$query = new WP_Query(array('post_type' => 'your-custom-post'));
query_posts( $query );

// El Loop
while ( $query->have_posts() ) : $query->the_post();  
  // tu contenido del post (título, extracto, imagen destacada....)
endwhile;

// Reiniciar Consulta
wp_reset_query();
?>

¡Buena suerte! ;)

1 dic 2014 10:31:24
Comentarios

Gracias, voy a probar esto en el próximo día o dos. Muchas gracias por tu respuesta.

Iggy's Pop Iggy's Pop
1 dic 2014 22:09:37
1
?php while (have_posts()) : the_post(); ?>
<?php
    $args = array('post_type' => 'empleado', 'posts_per_page' => 10);
    $the_query = new WP_Query($args);
    ?>
    <?php if ($the_query->have_posts()) : ?>
      <?php while ($the_query->have_posts()) : $the_query->the_post();?>

        <?php endwhile;
        wp_reset_postdata(); ?>
    <?php else :  ?>
        <p><?php _e('Lo sentimos, no hay publicaciones que coincidan con tus criterios.'); ?></p>
    <?php endif; ?>
<?php
endwhile;
?>
12 oct 2021 12:10:16
Comentarios

No estoy seguro de qué está pasando aquí: tienes el bucle principal en la primera y última línea, y tienes un bucle separado para mostrar los mismos primeros 10 empleados entre cada publicación del bucle principal?

Rup Rup
13 oct 2021 12:31:21
1

Pruébalo y buena suerte



$args = array(
    'post_type' => 'tu tipo de entrada personalizada', // Cambia por tu nombre de post type personalizado
    'post_status' => 'publish', // Mostrar solo posts publicados
    'posts_per_page' => 10, // Número de posts a mostrar
);
$arr_posts = new WP_Query( $args );

if ( $arr_posts->have_posts() ) :
while ( $arr_posts->have_posts() ) :
$arr_posts->the_post();
    echo the_title(); // Muestra el título del post
endwhile;endif;
wp_reset_postdata(); // Restablece los datos del post

12 oct 2021 14:27:05
Comentarios

Tu respuesta podría mejorarse con información adicional de apoyo. Por favor, [edita] para añadir más detalles, como citas o documentación, para que otros puedan confirmar que tu respuesta es correcta. Puedes encontrar más información sobre cómo escribir buenas respuestas en el centro de ayuda.

User User
13 oct 2021 14:56:30