wordpress 從 2.9 開始加入的自定義文章類型功能(custom post type),給二次開發(fā)帶來了很大方便,我們完全可以用 wordpress 構(gòu)建更加復(fù)雜的站點(diǎn)。但是 wordpress 卻不能在后臺(tái)設(shè)置主頁(yè)和 rss 里默認(rèn)的文章類型,這是一個(gè)硬傷。不過我們可以通過 wp 的內(nèi)部開發(fā)接口來修改默認(rèn)文章類型。代碼很簡(jiǎn)單,如下:
// 只需要改變首頁(yè)顯示的文章類型
add_filter( 'pre_get_posts', 'my_get_posts' );
function my_get_posts( $query ) {
if ( is_home() && !is_singular() && $query->is_main_query() )
$query->set( 'post_type', array( 'sentence' ) );
return $query;
}
如果除了首頁(yè)以外,你還需要改變 rss 里的文章類型的話,請(qǐng)把
if ( is_home() && $query->is_main_query() )
改成:
if ( (is_home() && $query->is_main_query()) || (is_feed() && !isset($_request['post_type'])) )