函数文档

install_popular_tags()

💡 云策文档标注

概述

install_popular_tags() 函数用于从 WordPress.org Plugins API 检索热门插件标签,并利用站点瞬态缓存结果以提高性能。

关键要点

  • 函数接受一个可选的 $args 参数数组,默认值为空数组,返回标签数组或 WP_Error 对象。
  • 通过 get_site_transient() 检查缓存,若存在则直接返回,否则调用 plugins_api() 获取数据。
  • 使用 set_site_transient() 将结果缓存 3 小时,键名基于 $args 序列化后的 MD5 哈希生成。
  • 函数在 WordPress 2.7.0 版本中引入,主要用于 install_dashboard() 以显示插件安装界面的特色标签。

代码示例

function install_popular_tags( $args = array() ) {
	$key  = md5( serialize( $args ) );
	$tags = get_site_transient( 'poptags_' . $key );
	if ( false !== $tags ) {
		return $tags;
	}

	$tags = plugins_api( 'hot_tags', $args );

	if ( is_wp_error( $tags ) ) {
		return $tags;
	}

	set_site_transient( 'poptags_' . $key, $tags, 3 * HOUR_IN_SECONDS );

	return $tags;
}

注意事项

  • 缓存机制依赖于站点瞬态,确保在需要时能有效减少 API 调用。
  • 返回类型可能为数组或 WP_Error,调用时应进行错误处理。
  • 相关函数包括 plugins_api()、set_site_transient()、get_site_transient() 和 is_wp_error()。

📄 原文内容

Retrieves popular WordPress plugin tags.

Parameters

$argsarrayoptional

Default:array()

Return

array|WP_Error

Source

function install_popular_tags( $args = array() ) {
	$key  = md5( serialize( $args ) );
	$tags = get_site_transient( 'poptags_' . $key );
	if ( false !== $tags ) {
		return $tags;
	}

	$tags = plugins_api( 'hot_tags', $args );

	if ( is_wp_error( $tags ) ) {
		return $tags;
	}

	set_site_transient( 'poptags_' . $key, $tags, 3 * HOUR_IN_SECONDS );

	return $tags;
}

Changelog

Version Description
2.7.0 Introduced.