Pytanie zostało zaktualizowane. Poniżej znajduje się najnowsza wersja:Get_the_terms - wyświetla wszystkie typy wpisów:
Mam problemy ze zobaczeniem wszystkich typów postów podczas korzystania z niestandardowych postów. Jest to oparte na izotopach, a użytkownik powinien kliknąć linki, aby zobaczyć posty w tej kategorii.
Wyświetlane są wszystkie posty utworzone przez standardowe posty postów Wordpress, ale żadne nie zostały utworzone przy użyciu typów (postów niestandardowych).
<ul id="filters" class="whitetext whitelink myeluft">
<li><a href="#" data-filter="*" class="selected">Alle</a></li>
<li><a href='#' data-filter='.foto'>Foto</a></li>
<li><a href='#' data-filter='.video'>Video</a></li>
<li><a href='#' data-filter='.web'>Web</a></li>
</ul>
<?php $the_query = new WP_Query('posts_per_page=50'); //Check the WP_Query docs to see how you can limit which posts to display ?>
<?php if ($the_query->have_posts()) : ?>
<div id="isotope-list">
<?php while ($the_query->have_posts()) : $the_query->the_post();
// Query posts - post_types
$anypost = get_posts(array(
'post_type' => 'any' // every post type, but not attachments
));
$termsArray = get_the_terms($post->ID, "category", $anypost); //Get the terms for this particular item
$termsString = ""; //initialize the string that will contain the terms
foreach ($termsArray as $term) { // for each term
$termsString .= $term->slug.' '; //create a string that has all the slugs
}
?>
<div class="<?php echo $termsString; ?> item col-md-3"> <?php // 'item' is used as an identifier (see Setp 5, line 6) ?>
<h3><?php the_title(); ?></h3>
<?php if (has_post_thumbnail()) {
the_post_thumbnail();
} ?>
</div> <!-- end item -->
<?php endwhile; ?>
</div> <!-- end isotope-list -->
<?php endif; ?>
Jak widzisz, próbowałem go naprawić, wstawiając poniższy kod, ale nadal nie pokazuje wszystkich typów wpisów.
// Query posts - post_types
$anypost = get_posts(array(
'post_type' => 'any' // every post type, but not attachments
));
$termsArray = get_the_terms($post->ID, "category", $anypost); //Get the terms for this particular item
Czytałem this article, ale znalazłem mój własny więcej strat niż rozpoczął/
co byłoby rozwiązanie działa?
Aktualizacja
za pomocą następującego kodu jestem w stanie zobaczyć wszystkie posty, ale nie jest w stanie je odfiltrować. Patrz strona tutaj: http://goo.gl/e3cLuM (przewinąć w dół, aż zobaczysz wszystkie posty)
<?php $post_type = 'any';
$post_taxonomy = 'any';
// Get all
$terms = get_terms($post_taxonomy);
$portfolio = new WP_Query('post_type='.$post_type.'&post_per_page=-1'); ?>
// First we loop our porfolio_category to show all categories as filter.
<ul id="filters" class="whitetext whitelink myeluft">
<a href="#" data-filter="*" class="selected"><li class="smoothtrans">Alle</li></a>
<a href='#' data-filter='.foto'><li class="smoothtrans">Foto</li></a>
<a href='#' data-filter='.video'><li class="smoothtrans">Video</li></a>
<a href='#' data-filter='.web'><li class="smoothtrans">Web</li></a>
</ul>
<?php if ($portfolio->have_posts()) : ?>
<div id="isotope-list">
<?php while ($portfolio->have_posts()) : $portfolio->the_post();
// Get current post terms.
$item_terms = wp_get_post_terms(get_the_ID(), $post_taxonomy, $args);
$classes = '';
// Append classes to use with each item.
foreach($item_terms as $item_term){
$classes .= $item_term->slug.' ';
}
?>
<div class="<?php echo $termsString; ?> item col-md-4">
<ul class="grid cs-style-3">
<li>
<figure>
<?php // 'item' is used as an identifier (see Setp 5, line 6) ?>
<?php if (has_post_thumbnail()) {
the_post_thumbnail();
} ?>
<figcaption class="lefttext">
<h3><?php the_title(); ?></h3>
<span class="offgrey">Nettside</span>
<a href="#" class="smoothtrans">Se prosjekt</a>
</figcaption>
</figure>
</li>
</ul>
</div> <!-- end item -->
<?php endwhile; ?>
</div> <!-- end isotope-list -->
<?php endif; ?>
używasz niestandardowej taksonomii do niestandardowego typu postu? –
Dzięki za odpowiedź. To jest negatywne, ale byłoby możliwe dodanie taksonomii, jeśli jest to konieczne, aby działało. – Olen
Czy próbowałeś tablica ("posts_per_page" => 50, "post_type" => any) dla WP_Query –