Template per tassonomia personalizzata non funzionante
Ho creato un custom post type chiamato property, con una tassonomia associata chiamata city. Ci sono diverse città (termini) come toronto, taiwan, dhaka.
Voglio creare un template che mostri tutti i post sotto una città. Ho creato il file taxonomy-city.php, ma non funziona.
Ecco il codice del mio file taxonomy-city.php:
<?php
/*
* Nome template: Città
*/
get_header();
?>
<div id="page_content">
<div class="page-wrapper">
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div id="page_content_wrapper">
<div id="careers_table">
<p class="content_text">asdsd</p>
</div>
<?php endwhile; ?>
<?php else : ?>
<div class="post">
<h3><?php _e('Errore 404: Non trovato', 'cmeasytheme'); ?></h3>
</div>
<?php endif; ?>
</div>
<div style="clear:both;"></div>
</div>
</div>
<?php get_footer(); ?>
Mostra tutto, ma non stampa nulla all'interno del loop.
Ho visitato anche questi link, ma nessuno è stato d'aiuto:
Innanzitutto, un file taxonomy-{taxonomy}.php è un Template di Archivio e non un nome adatto per un template personalizzato. Quindi se vuoi procedere con un template personalizzato, prova a nominare il file con qualcosa come template-cities.php e chiama il file su una Pagina.
In alternativa, crea un semplice template di archivio taxonomy-{taxonomy}.php, e nel tuo caso taxonomy-city.php con codice come:
<?php get_header(); ?>
<div id="page_content">
<div class="page-wrapper">
<div id="page_content_wrapper">
<?php if (have_posts()) : ?>
<div id="careers_table">
<?php while (have_posts()) : the_post(); ?>
<p class="content_text"><?php the_title(); ?></p>
<?php endwhile; ?>
<?php // codice di paginazione qui ?>
</div>
<?php else : ?>
<div class="post">
<h3><?php _e('Nessuna Città Trovata', 'cmeasytheme'); ?></h3>
</div>
<?php endif; ?>
</div> <!-- .page_content_wrapper -->
<div style="clear:both;"></div>
</div> <!-- .page-wrapper -->
</div> <!-- .page_content -->
<?php get_footer(); ?>
In questo modo, NON C'È BISOGNO di creare alcuna pagina e chiamare un page template.
Suggerimenti
Anche se i suggerimenti non sono correlati a WordPress, ma riguardano le Buone Pratiche:
- Prova a nominare le tue classi separate da trattino (-), NON da underscore (_). Quindi una classe come
page_content_wrappersarebbepage-content-wrapper. - Evita gli stili inline e crea invece una classe. Quindi il div di clear
<div style="clear:both;"></div>può essere qualcosa come<div class="clearfix"></div>e puoi inserire.clearfix{clear:both}nel tuo file CSS esterno. - Usa commenti importanti in modo da poter tracciare i div di chiusura, ecc.
Grazie per la tua risposta. Mi è stata molto utile. Ma il problema era diverso, ho commesso un errore quando ho creato il tipo di post "property". Ho impostato 'exclude_from_search' => true, dopo averlo cambiato in false, ora il template mostra i dati
Mithun Sarker
ho trovato un tutorial relativo alle tassonomie personalizzate basate su gerarchiche e non gerarchiche. Spero che ti aiuti a risolvere il tuo problema https://www.wpblog.com/create-custom-taxonomies-in-wordpress/
Owais Alam