我想将WooCommerce产品标签的显示限制为一定数量的单词。
(最多说5个字)。
我只想用-“ ...”或“ ...查看更多”或“ ...查看全部”来隐藏其他关键字。
我对Woocommerce产品标头做了或多或少的相同技巧,但是找不到类似的标签解决方案。
我在下面使用此CSS,在产品名称的末尾添加了三个点。
.woocommerce ul.products li.product h3 {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
您可以申请的内容:
https://github.com/woocommerce/woocommerce/blob/4.1.0/templates/single-product/meta.php
- 可以将此模板复制到
yourtheme/woocommerce/single-product/meta.php
来覆盖它。
替换:行36
<?php echo wc_get_product_tag_list( $product->get_id(), ', ', '<span class="tagged_as">' . _n( 'Tag:', 'Tags:', count( $product->get_tag_ids() ), 'woocommerce' ) . ' ', '</span>' ); ?>
有
<?php
// Set taxonmy
$taxonomy = 'product_tag';
// Get the terms
$terms = get_the_terms( $product->get_id(), $taxonomy );
// Error or empty
if ( is_wp_error( $terms ) ) {
return $terms;
}
if ( empty( $terms ) ) {
return false;
}
// Start
echo '<span class="tagged_as">' . _n( 'Tag: ', 'Tags: ', count( $product->get_tag_ids() ), 'woocommerce' );
// Loop trough
foreach ( $terms as $index => $term ) {
$link = get_term_link( $term, $taxonomy );
if ( is_wp_error( $link ) ) {
return $link;
}
// Below 5
if ( $index < 5 ) {
echo '<a href="' . esc_url( $link ) . '" rel="tag">' . $term->name . '</a>' . ', ';
} else {
echo '...';
break;
}
}
// Close
echo '</span>';
?>
结果: