WordPress开发笔记

WordPress主题模版中获取当前站点的id

在WordPress多站点(Multisite)环境中,获取当前站点ID非常简单。你可以直接使用WordPress内置的 get_current_blog_id() 函数。

方法一:直接在模板文件中输出

在主题的模板文件(如 header.phpfooter.php 或自定义模板)中插入以下代码:

<?php echo get_current_blog_id(); ?>

方法二:通过变量传递使用

如果需要进一步操作站点ID,可以将其赋值给变量:

<?php
$zzw_current_site_id = get_current_blog_id();
// 示例:根据站点ID执行逻辑
if ($zzw_current_site_id === 1) {
    // 主站点的特定代码
} else {
    // 子站点的代码
}
?>

注意事项:

  1. 函数可用性get_current_blog_id() 是WordPress核心函数,无需额外配置即可在主题或插件中使用。
  2. 多站点兼容性:此函数专为多站点设计,返回当前请求对应的站点ID(即数据库中的 blog_id)。

替代方案(不推荐):

虽然不推荐,但也可以通过全局变量 $wpdb 获取:

<?php
global $wpdb;
$zzw_current_site_id = $wpdb->blogid;
?>

不过直接使用 get_current_blog_id() 更清晰且符合WordPress最佳实践。

总结:

直接调用 get_current_blog_id() 是最简洁、可靠的方式,适用于所有WordPress多站点场景。