dscizpq790832708 2018-10-31 06:38
浏览 223
已采纳

Wordpress Post__not_在通过变量提供时不起作用

I have created a function and passing dynamically the comma separated values to wp_args. When i echo variable i get the exact as needed and passing statci gies result but while passing variable name, I do not get results.

$excludepages1 = "12,14";
$excludepages2 = "'".implode("','", explode(",", $excludepages1))."'";
$excludepages = str_replace('"', '', $excludepages2); 

Now If i echo $excludepages I get '12','14' But when i pass here

$children = get_posts( array(
        'post_type' =>'page',
        'posts_per_page' =>-1,
        'post_parent' => $post_id,
        'orderby' => 'menu_order',
        'order' => 'ASC',
        'post__not_in' => array($excludepages)));

I do not get any result and if instead of variable i pass '12','14', I get results, Can you please help?

  • 写回答

3条回答 默认 最新

  • douleijiang8111 2018-10-31 06:58
    关注

    Ref: https://developer.wordpress.org/reference/functions/get_posts/

    $excludepages1 = "12,14";
    $excludepages = explode(",", $excludepages1);
    

    An exploded array can be used directly.

    "exclude" param is suggested in the docs. So, I used instead of "post__not_in".

    $children = get_posts( array(
                    'post_type' =>'page',
                    'posts_per_page' =>-1,
                    'post_parent' => $post_id,
                    'orderby' => 'menu_order',
                    'order' => 'ASC',
                    'exclude' => $excludepages)
                );
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 C#字典调用时报错,有关文件加载
  • ¥100 在连接内网VPN时,如何同时保持互联网连接
  • ¥15 MATLAB中使用parfor,矩阵Removal的有效索引在parfor循环中受限制
  • ¥20 Win 10 LTSC 1809版本如何无损提升到20H1版本
  • ¥50 win10 LTSC 虚拟键盘不弹出
  • ¥30 关于PHP中POST获取数据的问题
  • ¥30 微信小程序请求失败,网页能正常带锁访问
  • ¥15 Python实现hog特征图可视化
  • ¥30 德飞莱51单片机实现C4炸弹
  • ¥50 CrossLink-LIF-MD6000 型 FPGA 的 CMOS 转 MIPI D-PHY IP 核功能使用异常