我正在尽可能少地使用WP网站上的插件。因此,我为帖子和页面创建了自定义字段,以创建标题标签和元描述。
代码如下:
<title>
<?php $title = get_post_meta($post->ID, 'Title', true);
if ($title) { ?>
<?php echo $title; ?> | domain.com
<?php }
else { ?>
<?php wp_title(''); ?> | domain.com
<?php } ?>
</title>
除非出于一个原因,否则代码就像魅力一样。主页标题类似于最新发布的博客(我的主页是博客概述)。显然我不希望这样。
我发现在<title>
下面插入以下代码
<?php if(is_home()) { echo "My desired homepage title tag"; } ?>
但是,标题标签现在包含所需的标题标签和自定义字段中的标题。我首先想到我可以通过使用逻辑if
,elseif
,else
构造来解决这个问题并更改以下内容:
if ($title) { ?>
进入elseif
。
然而,我的整个网站中断,我得到一个空白页面,以换取我尝试访问的每个网址。
然后我的PHP知识停止了。我不知道如何解决双冠军。有人可以帮助我,并指出我做错了什么?为什么条件语句不起作用
答案 0 :(得分:0)
主要原因应该是当您访问$ post-&gt; ID时,您会获得最新插入的帖子的ID,而不是主页。 默认情况下,wordpress加载最新的帖子,你可以在循环中使用它们。
为避免您必须在“设置”中设置与“最新帖子”不同的主页 - &gt; “读”。 一旦你这样做,你就会加载正确的标题。
无论如何,我建议使用yoast使用的超级有用的WordPress SEO插件,这是这类事情的事实上的标准,并被许多高流量wordpress安装使用。
让我知道