通过表单或链接(jQuery,而不是URL)更改循环顺序

时间:2013-06-20 作者:user1576978

我想通过链接或表单输入更改循环顺序,但无法通过URL加载,因为我需要orderby=meta值,而这无法通过URL args(根据codex)完成,只能这样:

<?php $argsvs = array( 
                    \'post_type\' => \'evento\', 
                    \'posts_per_page\' => -1,
                    \'meta_key\' => \'wpcf-evento-data-inicio1\',
                    \'orderby\' => \'meta_value\',
                    \'order\'=>\'DESC\' );
$loop = new WP_Query( $argsvs );
?>
如何让用户将上述参数更改为orderby其他自定义字段?例如:

                        \'meta_key\' => \'wpcf-evento-data-inicio2\',
                        \'orderby\' => \'meta_value\'
如果是按标题排序或类似的内容,我可以通过URL这样做?post_type=evento&orderby=title&order=ASC, 但是为了meta_keyorderby=>\'meta_value\' args,这无法通过URL完成

1 个回复
最合适的回答,由SO网友:GhostToast 整理而成

为什么不通过URL参数进行操作?你说你不能,因为食品法典告诉你不要这样做。但如果您仍想这样做,可以使用GET参数:

// http://example.com/page-slug/?direction=DESC
if($_GET[\'direction\'] == \'DESC\'){
    $order = \'DESC\';
} else {
    $order = \'ASC\';
}

$args = array(
    ...
    ...
    \'order\' => $order,
);

结束

相关推荐

Child Pages Loop

如果有人能帮忙那就太好了。我找到了一段我使用过的代码,它基本上完成了我希望它完成的任务,列出了父级的子页面,如果有缩略图,则添加缩略图,并添加了自定义摘录。然而,问题是我不能添加个人<?php post_class(); ?> 对于循环中的div,它使用来自父级的类并对子页重复。<?php $child_pages = $wpdb->get_results(\"SELECT * FROM $wpdb->posts WHERE post_parent = \".$pos