更改自定义 WordPress 集成页面的标题

发布于 2024-09-16 08:13:30 字数 599 浏览 5 评论 0原文

当我需要向基于 WordPress 的网站添加自定义页面时,我总是首先加载主题的标头:

<?php
  require('../wp-blog-header.php');
  include('../wp-content/themes/mytheme/header.php');
?>

不幸的是,由于 header.php< 中的此代码,每个自定义页面都会获得相同的标题(博客名称) /em>:

<head>
<title><?php if(is_home()) { bloginfo('name');} else { bloginfo('name'); echo ' | '; the_title(); } ?></title>

更改此页面标题的最佳方法是什么?

  • 在加载标头之前是否有一个 WordPress 方法可以调用,该方法会更改 the_title() 的返回值?
  • 我是否应该更改 header.php 调用,以便它检查我的标题是否有先前定义的自定义值?

When I need to add a custom page to a WordPress-based site, I always load the theme's header first:

<?php
  require('../wp-blog-header.php');
  include('../wp-content/themes/mytheme/header.php');
?>

Unfortunately, then every custom page gets the same title (the blog's name) due to this code in header.php:

<head>
<title><?php if(is_home()) { bloginfo('name');} else { bloginfo('name'); echo ' | '; the_title(); } ?></title>

What would be the best way to change this page title?

  • Is there a WordPress method to call before loading the header that will change the_title()'s return value?
  • Should I change the header.php call, so it will check if there is a previously defined custom value for my title?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

百合的盛世恋 2024-09-23 08:13:30

回答你的问题,

  1. 是的,有;您可能想查看 WordPress 挂钩和过滤器。 此处提供了 WordPress 3.0 可用挂钩和过滤器的详细列表。
  2. 我可能只使用 is_page() WordPress 函数。您可以按原样使用它来检查 WordPress 是否正在呈现自定义页面,或者提供参数(id、页面标题等)来检查更具体的参数。

To answer your questions,

  1. Yes, there is; you might want to look at WordPress Hooks and Filters. A good list of available hooks and filters for WordPress 3.0 is here.
  2. I'd probably just use the is_page() WordPress function. You can use it as is to check whether WordPress is rendering a custom page, or supply a parameter (an id, a page title, etc.) to check for more specific ones.
无畏 2024-09-23 08:13:30

实际上,您可以像这样查看标题代码:

<?php
    if (is_home()) {
         bloginfo('name');
   } else {
         bloginfo('name'); echo ' | '; the_title();
    } ?>

翻译:如果(这是您的家)则打印博客的名称。否则,打印博客的名称,a |栏和页面/帖子标题。

Actually you can look at your header code like this:

<?php
    if (is_home()) {
         bloginfo('name');
   } else {
         bloginfo('name'); echo ' | '; the_title();
    } ?>

Translating: if (it is your home) then print the blog's name. Else, print the blog's name, a | bar and the page/post title.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文