dougan6982 2018-10-11 13:14
浏览 99
已采纳

get_category_parents到数组wordpress

Ok So I'm using wordpress and PHP.

Basicly I get a chosen category from a dropdown menu. I then find it's parents.

But then comes the part where I seem to fail. The output of $parents is a string with the names instead of the ID's.

So I try to get each word from the string into an array. And loop through them and convert them to their ID number.

I commented out where it doesnt seem to work. What am I doing wrong?

//Create array
$categoriesArray = [];

//Get choice from wp-dropdown
$selected_val = $_POST['cat'];

//Get parents from choice divided by (this seems to output a string)
$parents = get_category_parents( $selected_val, true, ',' );

/*
//Make array from string
$categoriesArray = explode(",",$parents);

for ($i = 0; $i < count($categoriesArray); $i++) {
{
    $categoriesArray[$i] = get_cat_ID($categoriesArray[$i]);
}
*/

//the array should look something like this.
//$categoriesArray = ["21","44"];
  • 写回答

2条回答 默认 最新

  • douxian7117 2018-10-12 05:45
    关注

    It had to do with the name of the category. I needed to use the slug instead of the name.

    Here is my code that works. I can now make a new post and give it a category with their parents included!

    //Create array
    $categoriesArray = [];
    
    //Get choice from wp-dropdown
    $selected_val = $_POST['cat'];
    
    //Get parents from choice divided by ,
    $parents = get_category_parents( $selected_val, true, ',',false);
    
    //Make array from string
    $categoriesArray = explode(",",$parents);
    for ($i = 0; $i < count($categoriesArray); $i++)
    {
        $categoriesArray[$i] = get_cat_ID($categoriesArray[$i]);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部