我的自定义“主页”设置为通过自定义日期字段在函数中使用此代码(更新为自定义名称)对我的自定义帖子进行排序。php:
// sort order for home page
add_action(\'wp\', \'wwgo_check_page\');
function wwgo_check_page () {
if (is_page()) {
add_filter(\'get_previous_post_sort\', \'sort_it\');
add_filter(\'get_next_post_sort\', \'sort_it\');
add_filter(\'posts_orderby\', \'sort_it\' );
add_filter(\'posts_join\', \'join_it\' );
add_filter(\'posts_where\', \'where_it\' );
function sort_it () {
global $wpdb;
return " $wpdb->postmeta.meta_value ASC ";
}
function join_it( $join ) {
global $wpdb;
$join .= " LEFT JOIN $wpdb->postmeta ON($wpdb->posts.ID = $wpdb->postmeta.post_id) ";
return $join;
}
function where_it( $where ) {
global $wpdb;
$where .= "AND $wpdb->postmeta.meta_key = \'deadline\' ";
return $where;
}
}
}
这很简单,很漂亮。现在我希望整个网站都能这样做。我想在档案页,类别等帖子排序,首先由自定义日期字段。
有什么想法吗?
我已尝试更改\'if
\' 到is_archive()
但这没有任何效果。我试过了<! is_single()>
也
我相信这应该很简单。但我对php还不熟悉,因此不太懂
这是site, 在你可以看到的地方,主页被很好地排序,但如果你点击“诗歌”(唯一有几个帖子的一个),排序就不起作用了。
任何建议都会很高兴。
谢谢你的好意。