Woocommerce品牌按slug排序

时间:2014-04-05 09:29:19

标签: wordpress-plugin woocommerce

我是php新手,请原谅这是否是一个初学者问题。我正在使用插入woocommerce的品牌。现在我的品牌是作者。品牌名称类似于" FirstName Lastname&#34 ;, slug,使其按姓氏排序,是" lastname-firstname"。现在,品牌索引页面正在将它们排序到索引中,但在索引中,它们只按第一个字母排序,而不是什么。

像 [一个] Ian Andrews // Olanike Adebayo // Revd Frank Andrews

有没有办法让这些arrways按完整的slug名称排序?

非常感谢! 加布里埃尔

这是功能:

function output_product_brand_list( $atts ) {

    extract( shortcode_atts( array(
        'show_top_links'    => true,
        'show_empty'        => true,
        'show_empty_brands' => false
    ), $atts ) );

    if ( $show_top_links === "false" )
        $show_top_links = false;

    if ( $show_empty === "false" )
        $show_empty = false;

    if ( $show_empty_brands === "false" )
        $show_empty_brands = false;

    $product_brands = array();
    $terms          = get_terms( 'product_brand', array( 'hide_empty' => ( $show_empty_brands ? 0 : 1 ) ) );

    foreach ( $terms as $term ) {

        $term_letter = substr( $term->slug, 0, 1 );
        if ( ctype_alpha( $term_letter ) ) {

            foreach ( range( 'a', 'z' ) as $i )
                if ( $i == $term_letter ) {
                    $product_brands[ $i ][] = $term;


                    break;
                }

        } else {
            $product_brands[ '0-9' ][] = $term;
        }

    }

    ob_start();

    woocommerce_get_template( 'shortcodes/brands-a-z.php', array(
        'terms'             => $terms,
        'index'             => array_merge( range( 'a', 'z' ), array( '0-9' ) ),
        'product_brands'    => $product_brands,
        'show_empty'        => $show_empty,
        'show_top_links'    => $show_top_links
    ), 'woocommerce-brands', untrailingslashit( plugin_dir_path( dirname( __FILE__ ) ) ) . '/templates/' );

    return ob_get_clean();
}

0 个答案:

没有答案