我想将Wordpress的默认行为更改为同一页面上显示的文章数量如下:
?m=200906&order=ASC
,我想在同一页面上显示本月的所有文章(换句话说,我不想要必须使用以前的条目或下一个条目浏览文章。在显示指定月份的所有文章的页面上,我想显示每篇文章的评论。
这可能吗?怎么样?
答案 0 :(得分:4)
,将其添加到模板顶部:
$allowedOrder = array('ASC', 'DESC');
if(isset($_GET['m'])){
$order = isset($_GET['order']) ? (in_array($_GET['order'], $allowedOrder) ? $_GET['order'] : $allowedOrder[0]) : $allowedOrder[0];
$m = $_GET['m'];
$y = substr($m, 0, 4);
$m = substr($m, -2);
$query = "posts_per_page=-1&year=$y&monthnum=$m&order=$order";
query_posts($query);
}
或者,如果您只有一个大的index.php模板文件,请执行以下操作:
$allowedOrder = array('ASC', 'DESC');
if(is_month()){
$order = isset($_GET['order']) ? (in_array($_GET['order'], $allowedOrder) ? $_GET['order'] : $allowedOrder[0]) : $allowedOrder[0];
$m = $_GET['m'];
$y = substr($m, 0, 4);
$m = substr($m, -2);
$query = "posts_per_page=-1&year=$y&monthnum=$m&order=$order";
query_posts($query);
}
有关更多详细信息,请查看codex页面:
答案 1 :(得分:0)
如果您查看codex页面,可以使用query_post执行此操作,它会为您提供有关如何执行此操作的详细信息:
答案 2 :(得分:0)
结帐WP_query
query_posts
和WP_query
之间也存在一些差异。
两者都用于创建自定义循环的查询。如果您想要更好地控制查询,请使用WP_query
。