Wordpress 使用 is_page() 在某些页面上隐藏标题

Wordpress Hide Title on Certain Pages Using is_page()

我正在尝试删除 functions.php 文件中“关于”页面上的 h1 标题。

这是我的代码:

function remove_about_page_title()
{
    if (is_page('about')) {
        remove_action('storefront_page', 'storefront_page_header', 10);
    }
}
add_action('init', 'remove_about_page_title');

如果我在 is_page('about') 上进行 var 转储,那么我会得到 false,即使它是关于页面。

如果我将 add_action() 函数更改为 运行,则 remove_about_page_title() 函数从 init 更改为 storefront_page,然后 is_page() 打印 true 但 remove_action 功能不再有效。

这是因为超出了作用域链吗?

有没有办法在没有 CSS 和 #ids 的情况下删除 functions.php 文件中的页面 header?

我会在您的 functions.php 文件中创建一个数组,其中包含您要隐藏标题的页面名称。

functions.php

$noTitle = array("page1", "page2");

header.php

if(in_array($title, $noTitle)){
    //no title
}
else{
    //title
}

至少我认为你可以这样做。您可能需要检查 functions.php 何时加载。如果现在还没有加载,您可能需要制作另一个 php 文件并在 header.php 文件的顶部手动加载它。

您必须使用 is_page('pageId') 而不是 is_page('about')