将get_post作为字符串转换为数组,以便在主题管理选项中使用

时间:2013-06-03 作者:Jason

我正在尝试添加一个下拉列表的所有帖子到一个主题管理部分。。。无需叉起主题代码。

我需要将帖子标题和id传递到“options”=>array()中,如下所示:

\'getting-started-link-id\'=>array(
    \'title\'=>\'LINK GETTING STARTED TO:\',
    \'name\'=>\'page-option-item-getting-started-link-id\',
    \'options\'=>array(\'54\'=>\'Post #1\',\'23\'=>\'Post #2\', \'654\'=>\'Post #3\',)
    \'type\'=>\'combobox\'
),   
我编写了一个函数,用于获取所有帖子的ID和名称,并将其转换为字符串:

function post_page_options(){
    $post_page_options = get_posts(\'category=orderby=title&order=asc&numberposts=\');
    foreach( $post_page_options as $value ) :
        $str .= "\'$value->ID\'" . "=>\'" . $value->post_title . "\', ";
    endforeach; 
    return $str;
}
$str 返回以下内容:
“54”=>“Post#1”,“23”=>“Post#2”,“654”=>“Post#3”,

我试过这个,但不起作用:

    \'options\'=>array( post_page_options() )
我尝试将$str转换为数组(),但数组的格式与$str中的格式不同。

不知何故,将$str的结果添加到“选项”=>中似乎是easist的方法,因此主题管理代码将执行它已经编写好的操作,即使用“选项”=>数组并将其转换为下拉列表。

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

array(\'54\'=>\'Post #1\',\'23\'=>\'Post #2\', \'654\'=>\'Post #3\',)
。。。是not 字符串。这是一个数组定义。

您只需创建一个所需的数组,然后完全跳过字符串。

function post_page_options(){
    $post_page_options = get_posts(\'category=orderby=title&order=asc&numberposts=\');
    foreach( $post_page_options as $value ) :
        $str[$value->ID] = $value->post_title;
    endforeach; 
    return $str;
}

结束

相关推荐

$wpdb insert array

我需要插入多个数组。我得到错误:mysql\\u real\\u escape\\u string()期望参数1是字符串,数组给定我的示例代码: $array_info is Array ( [0] => Array ( [0] => a [1] => b [2] => c ) [1] => Array (