我正在尝试将我的归档页面更改为按评论最多的顺序排列,但由于我的主题,我想这会被忽略。
这是我放在自定义函数文件中的代码,但它并没有改变顺序。
add_action ( \'pre_get_posts\', function ( $query )
{
if ( $query->is_archive()
&& !is_admin()
&& $query->is_main_query()
) {
$query->set( \'orderby\', \'comment_count\' );
}
});
我认为我的主题函数中的这段代码使我的自定义代码无法运行:
if ( ! function_exists( \'wpcc_custom_posts_oderby\' ) ) {
function wpcc_custom_posts_oderby( $query ) {
if ( ( $query->is_home() && $query->is_main_query() ) || ( $query->is_archive() && $query->is_main_query() ) ) {
$orderby = get_theme_mod( \'wpcc_general_post_orderby\' );
if( !$orderby ): $orderby = \'date\'; endif;
$order = get_theme_mod( \'wpcc_general_post_order\' );
if( !$order ): $order = \'DESC\'; endif;
if( ! function_exists( \'is_woocommerce\' ) || ( function_exists( \'is_woocommerce\' ) && ! is_woocommerce() ) ) {
$query->set( \'orderby\', $orderby );
$query->set( \'order\', $order );
}
}
}
add_action(\'pre_get_posts\',\'wpcc_custom_posts_oderby\');
}
有没有办法编写自定义代码来覆盖主题?
谢谢