是的,关于这个函数有一些类似的主题,get_query_var(\'paged\') giving same result
blog posts sorting doesnt work while using get_query_var
我正在使用wordpress3。5、我有
own
基于php mysql的系统,我需要集成一个博客功能,我只需要列出
latest posts
在seprate php文件上
oreder by post-date
. 基本上,我的要求很简单:
list all of posts on a php file, suppose this file\'s name is blog_show.php
因为我将使用wordpress的API,在wordpress之外,我需要先导入wordpress,您可以从这里找到方法
Integration Wordpress with your sites以下是我的一些博客秀。php
define(\'WP_USE_THEMES\', false);
require_once \'../blog/wp-load.php\';
global $wp_query;
wp_reset_query();
$current_page = (get_query_var(\'p\')) ? get_query_var(\'p\') : 1;
$query_args = array(
\'orderby\' => \'date\',
\'order\' => \'DESC\',
\'post_type\' => \'post\',
\'post_status\' => \'publish\',
\'posts_per_page\' => 2,
\'paged\' => $current_page,
//\'add_args\' => true
);
$lateset_posts = new WP_Query($query_args);
$paging_args = array(
\'base\' => \'%_%\',
\'format\' => \'?p=%#%\',
\'total\' => 10,
\'current\' => $current_page,
\'end_size\' => 1,
\'mid_size\' => 1,
\'prev_next\' => True,
\'prev_text\' => __(\'« Previous\'),
\'next_text\' => __(\'Next »\')
);
$lateset_posts_paging = paginate_links($paging_args);
一切都好,我可以用
$lateset_posts = new WP_Query($query_args);
找到我想要的帖子。但我不能使用
get_query_var(\'p\')
我总是得到相同的值。我发现即使我声明wp\\u query是gloable的,它仍然不能使用,几乎wp\\u query的每个字段都是
null
.
因为get_query_var(\'p\')
和$wp_query
不能使用,所以我的页码也是不能使用的。
如您所见,varp
仅在两个地方使用
$current_page = (get_query_var(\'p\')) ? get_query_var(\'p\') : 1;
$query_args = array(
//something
\'paged\' => $current_page,
);
以及
$paging_args = array(
\'base\' => \'%_%\',
\'format\' => \'?p=%#%\', //P\'s here
\'total\' => 10,
\'current\' => $current_page,
\'end_size\' => 1,
\'mid_size\' => 1,
\'prev_next\' => True,
\'prev_text\' => __(\'« Previous\'),
\'next_text\' => __(\'Next »\')
);
我有一个测试,即使我改变了
p
到
paged
或
anything else
, 仍然得到相同的错误。
我哪里错了,我需要一些额外的php文件吗?谢谢