我在网站上使用Wordpress和Enfold主题。目前,所有网页的标题都以 SITE_TITLE |格式呈现PAGE_TITLE
我希望能够将特定页面的标题更改为 PAGE_TILE (即从当前格式中删除 SITE_TITLE 和分隔符)而不更改主题文件以确保更新不会覆盖更改。有没有可能这样做?
注意:我尝试使用过滤器,即wp_title,这只能更改 PAGE_TITLE 字符串,页面仍会显示 SITE_TITLE 和分隔符,所以这种方法并不好。
答案 0 :(得分:1)
用你更换你拥有的东西:
import React, {Component} from 'react';
import MessageList from './MessageList.jsx';
import ThemeManager from 'material-ui/lib/styles/theme-manager';
import AppBar from 'material-ui/lib/app-bar';
import MyTheme from './Theme.jsx';
export default class App extends Component {
constructor(){
super();
}
static childContextTypes = {
muiTheme: React.PropTypes.object
}
getChildContext(){
return {
muiTheme: ThemeManager.getMuiTheme(MyTheme)
};
}
render(){
return(
<div>
<AppBar title="Chat App"/>
<MessageList />
</div>
);
}
}
然后,在functions.php(或子主题functions.php;正常警告适用)中,添加以下内容:
wp_title( '|', true, 'right' );
这是答案:here
答案 1 :(得分:1)
你可以应用一个简单的技巧。只需检查你的header.php文件,你在哪个页面上,如果你在你想要的页面上使用wp_title();
你想要只有标题和分隔符和pite标题,那么在所有其他页面上使用wp_title('|', true, 'right');
您可以按照已经使用过的方法页面。在代码中,它看起来如下所示
<?php if(is_front_page()){?>
<title><?php wp_title(); ?></title>
<?php }else {?>
<title><?php wp_title('|', true, 'right'); ?></title>
<?php } ?>
通过这种方式,您可以获得所需的格式,在上面的代码中,它将在首页上显示页面标题,并在所有其他页面上显示网站标题分隔符和页面标题。您可以根据需要修改此代码,它将对您有用。
答案 2 :(得分:0)
我不熟悉该主题,但WordPress 4.4引入了a new way to handle page titles,将wp_title
替换为声明支持'title-tag'
的任何主题。如果你的主题是这样做的,你需要使用document_title_parts
钩子来改变所有标题的部分(用|字符分隔的部分)。或者,使用pre_get_document_title
挂钩将标题修改为一个大字符串。
有关详细信息,请参阅https://stackoverflow.com/a/34268098/2271。