城市里的游牧民族

Menu

WordPress 首页排除某些文章形式(Post Formats)

WordPress 3.1引入了 文章形式(Post Formats),它是文章的一种属性,可以被主题用来决定文章的显示方式。简单地说,如果你使用的主题支持“文章形式”(也就是主题作者已经为不同的文章形式定制了不同的显示样式),你就可以从一个单选列表中选择文章的形式,以此决定文章的显示样式。

\"post-formats-wpdaxue_com\"

 

关于 文章形式,在以后的教程中,倡萌会继续补充,今天分享下 WordPress 首页排除某些文章形式的方法,将下面的代码添加到主题的 functions.php 即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<span style="font-style: italic; color: #009933;">/**
 * WordPress 首页排除某些文章形式(Post Formats)
 * http://www.wpdaxue.com/exclude-post-formats-from-homepage.html
 */</span>
<span style="font-weight: bold;">function</span> exclude_post_formats_from_homepage<span style="color: #009900;">(</span> <span style="color: #000088;">$query</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
	<span style="color: #b1b100;">if</span><span style="color: #009900;">(</span> <span style="color: #000088;">$query</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">is_main_query</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #000088;">$query</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">is_home</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="font-style: italic; color: #666666;">//判断首页主查询</span>
		<span style="color: #000088;">$tax_query</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">(</span> <span style="color: #990000;">array</span><span style="color: #009900;">(</span> 
			<span style="color: #0000ff;">'taxonomy'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'post_format'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'field'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'slug'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'terms'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">(</span>
				<span style="font-style: italic; color: #666666;">//请根据需要保留要排除的文章形式</span>
				<span style="color: #0000ff;">'post-format-aside'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-audio'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-chat'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-gallery'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-image'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-link'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-quote'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-status'</span><span style="color: #339933;">,</span>
				<span style="color: #0000ff;">'post-format-video'</span>
				<span style="color: #009900;">)</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'operator'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'NOT IN'</span><span style="color: #339933;">,</span>
			<span style="color: #009900;">)</span> <span style="color: #009900;">)</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$query</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">set</span><span style="color: #009900;">(</span> <span style="color: #0000ff;">'tax_query'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$tax_query</span> <span style="color: #009900;">)</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">}</span>
<span style="color: #009900;">}</span>
add_action<span style="color: #009900;">(</span> <span style="color: #0000ff;">'pre_get_posts'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'exclude_post_formats_from_homepage'</span> <span style="color: #009900;">)</span><span style="color: #339933;">;</span>

注:请根据自己的需要保留所需的文章形式

原文地址:http://www.wpdaxue.com/exclude-post-formats-from-homepage.html

— 于 共写了967个字
— 文内使用到的标签:
本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 中国大陆许可协议进行许可。

2条回应:“WordPress 首页排除某些文章形式(Post Formats)”

  1. Dong.li说道:

    学习了