我需要将一组分类术语除以术语名称的第一个字母。我找到了一些可能有用的代码,但当我实现代码时,没有得到返回值。我确信它在我的代码中一定很小,但我就是找不到它。
此分类法包含我的网站上列出的商店所携带的品牌和标签。因此,术语的数量相当大。随着网站的发展,一些标签/品牌/术语以数字开头,其他字母和其他外来字符,如俄语,可能是日语、阿拉伯语等
下面的代码只是我第一次运行,只显示以字母开头的术语。
$letters = array(\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\');
$numbers = array(0,1,2,3,4,5,6,7,8,9);
$chracters = array_merge( $letters, $numbers );
$args = array( \'orderby\' => \'name\', \'order\' => \'asc\' );
$terms = get_terms( $taxonomy, $args );
if( count($terms) > 0 ):
foreach( $terms as $term ):
$firstchar = (string) substr( $term->name, 0 );
$firstchar = strtoupper( $firstchar );
$termlink = get_term_link( $term->slug, $taxonomy );
if( in_array($firstchar,$letters) ):
?>
<div class="post-box alignleft">
<p class="post-title"><a href="<?php echo $termlink; ?>"><?php echo $term->name; ?></a></p>
</div>
<!-- /end .post-box -->
<?php
endif;//is a letter
endforeach;//$terms as $term
endif;//count>0
我不确定是什么原因导致术语不显示。这里是到开发服务器的链接
http://obeliskwebdesign.com/sandbox/directorysexy/in-stock-sort/感谢您的任何见解或帮助。我被难住了。