[英]Filtering PHP posts on a for loop
我在一個安裝了主題的網站上工作,我正在更改功能,但有一個我無法修復。
下面的代碼顯示一個網格,其中包含“藝術家”的帖子縮略圖,這些藝術家的帖子有“slug”、“描述”、“名稱”等類別,所以我的網站顯示每個人,但首先按誰的類別排序有更多的帖子,但我想做的是按照我用字母設置的“描述”來排序:A,B,C,D ...
<?php
$fimg = get_the_post_thumbnail_url(get_the_ID(),'full'); //imagen
$categories = wp_get_post_terms( $post->ID, 'filter'); //
$c = $categories[0];
$filtros = count($categories);
$filter = '';
for ($i=0; $i < $filtros; $i++) {
$f = $categories[$i];
$filter_ = $f->{'slug'};
$filter__ = $f->{'name'};
if($i > 0){
$text_f = $text_f.' - '.$filter__;
} else {
$text_f = $filter__;
}
$filter = $filter.' '.$filter_;
};
$url = get_permalink();
$hover = rwmb_meta( 'talento-image_hover', array( 'size' => 'full' ) );
foreach ( $hover as $image ) {
$hover = $image['url'];
}
?>
<div data-order="<?php echo $c->{'description'} ?>" class="col-lg-4 col-md-4 col-sm-12 talent grid-item my-3 <?php echo $filter; ?> thumb" id="post-<?php the_ID(); ?>">
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="fdw-background" >
<a href="<?= $url;?>">
<img class="foto-artista" src="<?php echo $hover; ?>">
</a>
<span class="talent-data">
<?php the_title( sprintf( '<h2 class="entry-title text-center"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
'</a></h2>' ); ?>
<p class="text-center col-lg-12"><?php echo $text_f; ?></p>
</span>
</div>
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->
我試過切換 $filter_ = f-.{'slug'} 變量,甚至嘗試解決計數問題,但沒有任何進展,如果有人能指出正確的方向來修復這個 function 我非常感謝 <3
感謝你
您應該按描述對$categories
進行排序。
usort($categories, function($a, $b) {
return strcmp($a->description, $b->description);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.