Edit tag cloud widget number

时间:2014-07-20 作者:user1752759

默认情况下,标签云小部件有45个标签要显示。这可以在wp-includes/category-template.php 文件

默认情况下,我安装的WooCommerce插件及其产品标签云小部件也类似于此。

如何在我的wp-content/themes/functions.php 文件,例如,仅显示15个产品标签?

这是我到目前为止所拥有的,但它不起作用。

function custom_tag_cloud_widget($args) {
    $args[\'smallest\'] = 8; //smallest tag
    $args[\'largest\'] = 22; //largest tag
    $args[\'number\'] = 15; //adding a 0 will display all tags
    $args[\'unit\'] = \'pt\'; //tag font unit
    return $args;
}

add_filter( \'widget_tag_cloud_args\', \'custom_tag_cloud_widget\' );
更改核心内的编号时wp-includes.php/category-template.php 但是,它确实有效。

显然,我不想编辑任何核心文件,正在寻找替代解决方案。

谢谢

3 个回复
最合适的回答,由SO网友:Gabriel 整理而成

将以下内容添加到主题的功能中。php。默认值如下所示,只是将“数字”从45更改为15。只需要包含更改的值,因此您可以保留默认值或删除/注释掉这些行。

对于Wordpress标记云小部件:

function custom_tag_cloud_widget() {
    $args = array(
        \'smallest\' => 8, 
        \'largest\' => 22, 
        \'unit\' => \'pt\', 
        \'number\' => 15,
        \'format\' => \'flat\', 
        \'separator\' => "\\n", 
        \'orderby\' => \'name\', 
        \'order\' => \'ASC\',
        \'exclude\' => \'\', 
        \'include\' => \'\', 
        \'link\' => \'view\', 
        \'taxonomy\' => \'post_tag\', 
        \'post_type\' => \'\', 
        \'echo\' => true
    );
    return $args;
}
add_filter( \'widget_tag_cloud_args\', \'custom_tag_cloud_widget\' );
对于WooCommerce产品标签小部件:

function custom_woocommerce_tag_cloud_widget() {
    $args = array(
        \'number\' => 15,
        \'taxonomy\' => \'product_tag\'
    );
    return $args;
}
add_filter( \'woocommerce_product_tag_cloud_widget_args\', \'custom_woocommerce_tag_cloud_widget\' );

SO网友:Vijay Dhanvai

我找到了一个简单的解决方案,把这个钩子放在你的function.php 文件这对我来说很好。您只需根据需要更改数字参数值。

//Register tag cloud filter 
add_filter(\'widget_tag_cloud_args\', \'tag_widget_limit\');

//Limit number of tags inside widget
function tag_widget_limit($args){

 //Check if taxonomy option inside widget is set to tags
 if(isset($args[\'taxonomy\']) && $args[\'taxonomy\'] == \'post_tag\'){
  $args[\'number\'] = 10; //Limit number of tags
 }

 return $args;
}
这是来源https://w3reign.com/change-tag-cloud-widget-limit-in-wordpress/

SO网友:KCR

这条线索是今天的起点。我对网站所做的更改可能与您在WooCommerce中所做的更改相关。我希望在产品标签云中显示比旧搜索词更有用的搜索词。我的网站有WP电子商务,旧版。其他地方没有找到答案,所以去了wp-includes/category-template.php 文件,搜索了45,更改为60并进行了测试。它适用于博客标签云,但不适用于产品标签云。代码如下所示:

function wp_tag_cloud( $args = \'\' ) {
    $defaults = array(
        \'smallest\' => 8, \'largest\' => 22, \'unit\' => \'pt\', \'number\' => 45,
        \'format\' => \'flat\', \'separator\' => "\\n", \'orderby\' => \'name\', \'order\' => \'ASC\',
        \'exclude\' => \'\', \'include\' => \'\', \'link\' => \'view\', \'taxonomy\' => \'post_tag\', \'echo\' => true
    );
在WP电子商务文件中,可在中找到wp-content/plugins/wp-e-commerce/tagging_functions.php, 类似的部分(搜索45)。

function product_tag_cloud(){
    product_tag_init();
    $defaults = array(
        \'smallest\' => 8, \'largest\' => 22, \'unit\' => \'pt\', \'number\' => 60,
        \'format\' => \'flat\', \'orderby\' => \'name\', \'order\' => \'ASC\',
        \'exclude\' => \'\', \'include\' => \'\'
将45更改为60,保存并测试。它成功了。标签云增加到60。

我在博客云中将数字改回45,然后再次测试。博客云现在有45个术语,产品标签云有60个术语。没有明显的冲突。

我一直在编辑每个产品中的标签,以删除旧标签并强调新标签。云正在逐渐调整-删除一些术语,添加其他术语。

结束