删除单个页面上的 WordPress 管理栏

Remove WordPress admin bar on a single page

有没有办法删除 WordPress 管理栏但仅在特定页面上?

我知道我可以通过添加一个操作来删除或完全隐藏它:

add_action('after_setup_theme', 'remove_admin_bar');
function remove_admin_bar() {
    if (!current_user_can('administrator') && !is_admin()) {
        show_admin_bar(false);
    }
}

我已经做到了,但是在我的网站上,我有一个页面显示在 iframe 中(使用颜色框),我不希望管理栏显示在该 iframe 中。

有没有办法只针对特定页面隐藏管理栏?

谢谢, 本

Remove WordPress admin bar on a single page

是的,您可以根据需要从特定页面删除管理栏。 使用 add_filter( 'show_admin_bar', '__return_false' ); 从特定页面隐藏管理栏。

function my_function_admin_bar(){
    return false;
}
add_filter( 'show_admin_bar' , 'my_function_admin_bar');

详情请见下文link:

https://codex.wordpress.org/Plugin_API/Filter_Reference/show_admin_bar

你的函数有点复杂,有一个过滤器。只需检查页面 ID 并使用 show_admin_bar 过滤器将其过滤掉。

function riga_hide_admin_bar(){
    if( $post->ID == YOUR_POST_ID ){
        return false;
    }
}
add_filter( 'show_admin_bar' , 'riga_hide_admin_bar' );

获取特定页面的 ID 并在满足页面 ID 的条件下添加过滤器

`If(get_the_ID()==#736637){
add_action('after_setup_theme', 'remove_admin_bar');
function remove_admin_bar() {
    if (!current_user_can('administrator') && !is_admin()) {
        show_admin_bar(false);
     }
   }
}`

对我来说,最简单的方法是在我不想显示的页面模板中添加代码。在模板文件的顶部,我刚刚添加:

<?php
show_admin_bar(false);