了解WordPress的tags标签自定义样式

作者 : moke 本文共1320个字,预计阅读时间需要4分钟 发布时间: 2020-07-28 共28人阅读

在WordPress众多函数内,wp_tag_cloud()函数的作用是用来获取标签云的,该函数可以根据每个标签所关联的文章次数来定义字体大小、标签排序等属性。

从WordPress2.8版本开始,该函数添加了 分类法(taxonomy)参数,这就意味着,除了 标签(tags)以外,还可以将 分类(Categories) 或其他 自定义分类法(Custom Taxonomies)作为“云”显示。

但由于该方法把样式集合到了里面,使用起来不怎么友好,如果想自定义读取标签并修改展示样式该怎么做呢,那也是非常简单的,看代码实例,这里根据get_tags来获取:

$html = '<ul class="post_tags">';
foreach (get_tags( array('number' => 50, 'orderby' => 'count', 'order' => 'DESC', 'hide_empty' => false) ) as $tag){
	$color = dechex(rand(0,16777215));
	$tag_link = get_tag_link($tag->term_id);
 
	$html .= "<li><a href='{$tag_link}' title='{$tag->name} Tag' class='{$tag->slug}' style='color:#{$color}'>";
	$html .= "{$tag->name} ({$tag->count})</a></li>";
}
$html .= '</ul>';
echo $html;

如果要求随机获取标签在首页显示,那可以使用以下代码,但这种做法貌似不利于seo,可得慎重使用

//获取随机标签
function get_rand_tags()
{
	global $post, $wpdb;
	$sql = "SELECT * FROM {$wpdb->prefix}terms wt INNER JOIN {$wpdb->prefix}term_taxonomy wtt on  wt.term_id=wtt.term_id where wtt.taxonomy='post_tag' ORDER BY RAND() LIMIT 20";
	$related_posts = $wpdb->get_results($sql);
	$html = '<ul class="post_tags">';
	foreach($related_posts as $tag)
	{
		$color = dechex(rand(0,16777215));
		$tag_link = get_tag_link($tag->term_id);
		$html .= "<li><a href='{$tag_link}' target='_blank' title='{$tag->name} Tag' class='{$tag->slug}' style='color:#{$color}'>";
		$html .= "{$tag->name} ({$tag->count})</a></li>";
 
	}
	$html .= '</ul>';
	echo $html;
}

以上便是使用 wp_tag_cloud()函数来自定义WordPress的tags标签样式的相关WordPress教程,希望对您有帮助!

爱生活,爱陌客
网站源码-PHP网站源码-商业源码分享-免费网站模版下载 » 了解WordPress的tags标签自定义样式

发表评论

售后服务:

  • 售后服务范围 1、商业模板使用范围内问题免费咨询
    2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
    3、单价超过200元的模板免费一次安装,需提供服务器信息。
    付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
    2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
    3、服务器环境配置(一般 ¥50-300)
    4、网站中毒处理(需额外付费,500元/次/质保三个月)
    售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
    免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 1171280855@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系作者
开通SVIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡