Php Wordpress解析查询问题
我正在构建一个插件,在那里我需要能够在Wordpress站点的管理端只显示指定的帖子 如何将我的帖子id数组挂接到帖子中Php Wordpress解析查询问题,php,wordpress,Php,Wordpress,我正在构建一个插件,在那里我需要能够在Wordpress站点的管理端只显示指定的帖子 如何将我的帖子id数组挂接到帖子中 // Show specified Posts private function ShowPosts($ps) { var_dump($ps); // shows the id's echo '<hr />'; add_filter('parse_query', function() { global $ps;
// Show specified Posts
private function ShowPosts($ps)
{
var_dump($ps); // shows the id's
echo '<hr />';
add_filter('parse_query', function() {
global $ps;
var_dump($ps); // Shows 3 nulls
global $query, $pagenow, $post_type;
if($pagenow == 'edit.php' && $post_type == 'post'){
$query->query_vars['post__in'] = $ps;
}
});
}
//显示指定的帖子
私人功能展示台($ps)
{
var_dump($ps);//显示id的
回声“
”;
添加过滤器('parse_query',function()){
全球$ps;
var_dump($ps);//显示3个空值
全局$query、$pagenow、$post_type;
如果($pagenow=='edit.php'&&&$post\u type=='post'){
$query->query\u vars['post\u in']=$ps;
}
});
}
第一个var_dump
显示ID数组,而第二个没有
我在这里做错了什么?您已经在函数中,因此您不能在这里声明全局变量,如果您愿意,这是最简单的修复方法
private function ShowPosts($ps)
{
$_SESSION['psvalue'] = $ps; // shows the id's
echo '<hr />';
add_filter('parse_query', function() {
$ps = $_SESSION['psvalue'];
global $query, $pagenow, $post_type;
if($pagenow == 'edit.php' && $post_type == 'post'){
$query->query_vars['post__in'] = $ps;
}
});
}
private function ShowPosts($ps)
{
$\u SESSION['psvalue']=$ps;//显示id的
回声“
”;
添加过滤器('parse_query',function()){
$ps=$\会话['psvalue'];
全局$query、$pagenow、$post_type;
如果($pagenow=='edit.php'&&&$post\u type=='post'){
$query->query\u vars['post\u in']=$ps;
}
});
}
另一个修复方法是使用全局关键字
private function ShowPosts($ps)
{
$GLOBALS['psvalue'] = $ps;
echo '<hr />';
add_filter('parse_query', function() {
$ps = $GLOBALS['psvalue'];
global $query, $pagenow, $post_type;
if($pagenow == 'edit.php' && $post_type == 'post'){
$query->query_vars['post__in'] = $ps;
}
});
}
private function ShowPosts($ps)
{
$GLOBALS['psvalue']=$ps;
回声“
”;
添加过滤器('parse_query',function()){
$ps=$GLOBALS['psvalue'];
全局$query、$pagenow、$post_type;
如果($pagenow=='edit.php'&&&$post\u type=='post'){
$query->query\u vars['post\u in']=$ps;
}
});
}
为什么有%ps的全局输入?您也可以在wordpress.stackexchange.com上询问