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()
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. |