【发布时间】:2016-11-25 20:28:35
【问题描述】:
我想减小标签云中的字体大小(至少对于点击次数超过一次的标签)。我正在查看 css 文件,但在标签云中找不到任何关于字体大小的信息。你知道在哪里改变吗? (链接是 www.veda-vit.de,以防万一。)
【问题讨论】:
我想减小标签云中的字体大小(至少对于点击次数超过一次的标签)。我正在查看 css 文件,但在标签云中找不到任何关于字体大小的信息。你知道在哪里改变吗? (链接是 www.veda-vit.de,以防万一。)
【问题讨论】:
WordPress 定义了配置标签云的默认参数。这些参数定义为here in codex。请注意,您可以指定最小和最大的字体大小。默认设置为22,单位为pt。
要更改此默认行为,您需要注册一个回调到 WordPress Core 中提供的过滤器。
在此示例中,我将更改最小和最大字体大小。您需要针对您的具体实施对其进行调整:
add_filter( 'widget_tag_cloud_args', 'change_tag_cloud_font_sizes');
/**
* Change the Tag Cloud's Font Sizes.
*
* @since 1.0.0
*
* @param array $args
*
* @return array
*/
function change_tag_cloud_font_sizes( array $args ) {
$args['smallest'] = '10';
$args['largest'] = '18';
return $args;
}
很多人会告诉您将其添加到主题的functions.php 文件中。我不是那些人中的一员。我教授和倡导modular 主题和插件开发。这意味着主题的 functions.php 文件不应成为所有内容的收集点。
functions.php
话虽如此,您可以根据需要将上述代码添加到您的functions.php 文件中。
执行以下步骤:
functions.php 文件。?>,请将其删除。没必要。我提倡modular approach,通过将功能和主题配置拆分为支持单一用途的单独、不同的文件。
第 1 步:找到文件夹在您的主题中,您应该有一个名为 lib、includes 或 src 的文件夹。此文件夹是您放置自定义功能文件的位置。
在其中一个文件夹中,创建一个新文件并将其命名为widgets.php。在此文件中,在第一行添加以下代码:
<?php
/**
* Widgets functionality
*
* @package YourTheme
* @since 1.0.0
* @author your name
* @link your URL
* @license GPL-2+
*/
然后在它下面添加上面的代码。
第 3 步:加载文件现在您需要加载该文件。打开主题的functions.php 文件,导航到文件末尾,然后添加以下代码:
include_once( __DIR__ . '/lib/widgets.php' );
只需将lib 替换为您将新文件放入的文件夹的名称即可。
字体大小由 WordPress 设置为内联 CSS。您可以使用上面的代码覆盖那些。不建议通过 CSS 使用 !important 强制它。让 WordPress 做它的事情,只需设置最小值和最大值,如上所示。
【讨论】:
由于我们不知道您是如何实现标签云的,css 并不是您必须自定义它的唯一方法。 wp_tag_cloud() 函数接受参数数组
<?php $args = array(
'smallest' => 8,
'largest' => 22,
'unit' => 'pt',
'number' => 45,
'format' => 'flat',
'separator' => "\n",
'orderby' => 'name',
'order' => 'ASC',
'exclude' => null,
'include' => null,
'topic_count_text_callback' => default_topic_count_text,
'link' => 'view',
'taxonomy' => 'post_tag',
'echo' => true,
'child_of' => null, // see Note!
); ?>
如果你想在不接触任何模板文件的情况下修改默认行为,可以使用过滤器wp_tag_cloud,在functions.php中,
add_filter('wp_tag_cloud', 'se_40811909', 10, 2);
function se_40811909($return, $args){
// copy and modify $args to fit your needs
// $args = array(.....);
return $args;
}
您可以查看有关他们的所有详细信息here
【讨论】: