如何检查当前页面是否位于URL中的指定路径?

时间:2021-03-22 作者:silviubogan

我有一个标记为“帖子”页面的页面,其中列出了最近的博客帖子。

它在路径上/blog.

我想知道用户何时在此页面上,以便我可以在页面的开头显示博客文章的类别列表。我已经用单数做过了。php和中的其他情况index.php.

对我来说,is\\u home()在登录页上返回true。我在索引中使用它的行为。php。

我尝试了一下,但没有成功:

get_page_by_path(\'/blog\') == get_post()
因此,我当前的代码是:

if (!is_home() || get_page_by_path(\'/blog\') == get_post()) {
    get_template_part(\'template-parts/blog-categories\');
}
而在/博客页面中,不会显示博客类别。我相信这是因为上述if中的这种情况。

更新1此条件不起作用:

$_SERVER[\'PHP_SELF\'] === \'/blog\'
因为它不是/blog, 但是index.php (行为构建通过.htaccess 我想是的)。

更新2

screenshot

翻译:博客-文章页面

这不被视为头版。

更新3

screenshot

从这个截图中,我认为主页是开始(LP),博客是帖子页面。因此,我不明白为什么会有is\\u front\\u页面调用:

if (!is_front_page() && is_home() || is_archive()) {
    get_template_part(\'template-parts/blog-categories\');
}

1 个回复
最合适的回答,由SO网友:user203767 整理而成

你可以试试这个

if (!is_front_page() && is_home()) {
    get_template_part(\'template-parts/blog-categories\');
}
首页和主页之间的区别说明如下:https://wordpress.stackexchange.com/a/239838如果将页面设置为博客页面,则为;“主页”;,在您的情况下,登录页是所谓的;首页;。这是特定于WordPress的。