我正在搜索WordPress的codex,但我似乎找不到任何关于这个问题的文章。
当您安装了WordPress多站点并以superadmin身份登录时,您可以归档,(取消)激活和删除站点。然而,这是来自安装的“网络”部分,只有超级拉丁能够看到。我想在每个站点的仪表板中放置(de)激活选项,因此特定(非(超级)管理员)角色可以使用它们。
我想知道,是否有一个我可以用来显示(de)激活的功能(取决于那个时刻网站是否处于活动/非活动状态)链接我想要的地方?
如果没有,有关网站是否处于活动状态的信息在哪里?我希望有一个带有布尔值的选项,但我似乎无法找到它。通过这种方式,我可以检查自己网站是否处于活动状态,并根据显示的正确链接进行检查?
很抱歉,如果我的问题不清楚或令人困惑。
提前致谢!
答案 0 :(得分:1)
停用网站,只需在其上添加已删除的属性即可。站点管理员已经可以通过访问工具 - >来做到这一点。删除网站。它只是有点不同,因为如果从那里点击它也会从站点中删除用户(虽然它将来可能会相同)。
您可以使用此功能查看ID为2的网站是否已删除该属性(因此已取消激活):
if ( get_blog_status( 2, 'deleted' ) == 1 ) {
// The site with ID 2 is marked as deleted (it is deactivated)
}
答案 1 :(得分:0)
对于我使用的特定用户名权限:
//give the right to deactivate sites to 'username' if the user doesn't have it already
$user = new WP_User( 'username' );
if ( ! $user->has_prop( 'can_manage_sites' ) ) {
$user->add_cap( 'can_manage_sites' );
}
if ( ! $user->has_prop( 'username' ) ) {
$user->add_cap( 'manage_sites' );
}
//ofcourse replace 'username' with the username you need
在我看来(环路mu网站)我只是使用if语句来检查网站是否处于活动状态,以便知道要使用的链接(激活/停用)
//deactivated, show activate link
if(get_blog_status( $site->blog_id, 'deleted' ) == '1'){
echo '<span class="dashicons dashicons-no" style="color:red;"></span> Niet actief <br/>';
echo '<a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&action2=activateblog&id=' . $site->blog_id ), 'activateblog_' . $site->blog_id ) ) . '">' . __( 'Activate' ) . '</a>';
}
//activated, show deactivate link
else {
echo '<span class="dashicons dashicons-yes" style="color: green;"></span> Actief<br/>';
echo '<a style="color:red;" href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&action2=deactivateblog&id=' . $site->blog_id ), 'deactivateblog_' . $site->blog_id ) ) . '">' . __( 'Deactivate' ) . '</a>';
}
此代码将为您提供(de)激活网站所需的链接,以便您进入确认页面。在此确认页面中,用户可以在菜单中看到“网站”标签,当他们点击它时,他们可以选择mu 中的所有网站。这对我来说并不重要,因为将使用此功能的人都是收藏者并且知道他们不应该去那里。 但你可能想要隐藏它,如果它涉及那些不应该看到
的人