Woocommerce Short Description Excerpt Length


Woocommerce Short Description Excerpt Length

我正在尝试更改简短描述摘录的长度。

发现了以前的帖子,指出我应该改变

<?php echo apply_filters( 'woocommerce_short_description', $post->post_excerpt ) ?>

<?php $excerpt = apply_filters( 'woocommerce_short_description', $post->post_excerpt );
    echo substr($length,0, 10);
?>

但是,当这样做时,我的摘录就会消失。

怕你正在编辑插件...如果是这样,你做错了。

创建一个函数,然后挂接到该过滤器...像这样的东西...

add_filter('woocommerce_short_description', 'reigel_woocommerce_short_description', 10, 1);
function reigel_woocommerce_short_description($post_excerpt){
    if (!is_product()) {
        $post_excerpt = substr($post_excerpt, 0, 10);
    }
    return $post_excerpt;
}

将其粘贴到主题的函数.php文件中。

而不是直接在插件中编辑文件(这是一个非常糟糕的主意,因为一旦更新插件,您的所有更改都将丢失!

您可以使用此代码来限制字数 -

add_filter('woocommerce_short_description', 'limit_woocommerce_short_description', 10, 1);
    function limit_woocommerce_short_description($post_excerpt){
        if (!is_product()) {
            $pieces = explode(" ", $post_excerpt);
            $post_excerpt = implode(" ", array_splice($pieces, 0, 20));
        }
        return $post_excerpt;
    }

Explode 将原始字符串分解为单词数组,array_splice允许您获取这些单词的某些范围,然后 implode 将这些范围重新组合成单个字符串。

使用此代码更改"商店页面"而不是"产品详细信息"页面上的"限制"。