有两种方法可以做到这一点,尽管可以说其中一种比另一种更好。
Use JavaScript (Works, but not optimal)
第一种方法是使用JavaScript。我不喜欢使用这种方法,因为它需要一个web浏览器来执行切换。这对SEO产生了负面影响,因为对于搜索引擎来说,元素仍然存在于文档中。
不过,如果你选择这种方法,下面是你可以做到的。。。
假设页面设置如下:
<h1><?php the_title(); ?></h1>
<h2>Some other text.</h2>
然后,基于jQuery的JavaScript(因为WordPress使用jQuery)将如下所示:
if($(\'h1\').is(\':visible\')) {
$(\'h2\').hide();
} // end if
通过在标题元素上提供ID或类名,可以使代码更加清晰。例如,假设您将标题元素命名为:
<h1 id="title"><?php the_title(); ?></h1>
<h2 id="alt-title">This is a second title.</h2>
然后,您的JavaScript可能如下所示:
if($(\'#title\').is(\':visible\')) {
$(\'#alt-title\').hide();
} // end if
Do it on the server-side
更好的方法是在服务器端的模板文件中实际设置它。
例如,您想显示h1
仅在单个帖子或页面上,但h2
在存档页或列表页上。您可以这样做:
<?php if(is_page() || is_single()) { ?>
<h1><?php the_title(); ?></h1>
<?php } else { ?>
<h2><?php the_title(); ?></h2>
<?php } // end if/else ?>
这更好,因为处理发生在服务器端,因此提供给请求代理(即搜索引擎或web浏览器)的文档将只看到单个元素。