Wordpress将页面名称传递给模板。

12 浏览
0 Comments

Wordpress将页面名称传递给模板。

我在所有页面上设置了一个自定义模板,它可以正常加载模板,现在我需要根据文章名称切换到从数据库提取数据的模式。

mysite.com/cars -> 页面名称 [汽车]

页面 [汽车] 加载 home.php 模板:

home.php


我需要解析URL以提取名称,还是有其他方法可以向WordPress提供名称?我看不到在文章页面上设置它的选项。

admin 更改状态以发布 2023年5月20日
0
0 Comments

你需要

$pagename

WP全局变量$pagename应该对你是可用的。

$pagename在文件wp-includes/theme.php中定义,位于函数get_page_template()内,在该函数被解析之前调用了你的页面主题文件,因此在你的页面模板内的任何位置都可用。

  • 尽管它似乎没有文档记录,但$pagename变量只有在你使用永久链接时才会被设置。我想这是因为如果你不使用它们,WP就不需要页面缩略名,因此它没有将其设置。

  • 如果你使用页面作为静态主页,则不会设置$pagename。

参见如何在WordPress中获取当前页面名称?

0