WordPress 从 2.9 开始加入的自定义文章类型功能(Custom post type),给二次开发带来了很大方便,我们完全可以用 WordPress 构建更加复杂的站点。但是 WordPress 却不能在后台设置主页和 Rss 里默认的文章类型,这是一个硬伤。不过我们可以通过 WP 的内部开发接口来修改默认文章类型。代码很简单,如下:
// 只需要改变首页显示的文章类型
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;
}
如果除了首页以外,你还需要改变 Rss 里的文章类型的话,请把
if ( is_home() && $query->is_main_query() )
改成:
if ( (is_home() && $query->is_main_query()) || (is_feed() && !isset($_REQUEST['post_type'])) )
更多信息请查看IT技术专栏