Php 添加选项WordPress函数不添加该选项

Php 添加选项WordPress函数不添加该选项,php,wordpress,Php,Wordpress,我试图插入一篇文章/页面,然后将文章id另存为一个选项,但该选项未保存到数据库 我可以创建页面并获取其ID,但无法将该ID保存到选项中。在“init”调用该类,构造函数如下所示: class Recipe{ public function __construct(){ $favorites_id = get_option("favoritesid"); if($favorites_id <= 0){ $my_post = a

我试图插入一篇文章/页面,然后将文章id另存为一个选项,但该选项未保存到数据库

我可以创建页面并获取其ID,但无法将该ID保存到选项中。在“init”调用该类,构造函数如下所示:

class Recipe{

    public function __construct(){
        $favorites_id = get_option("favoritesid");
        if($favorites_id <= 0){
            $my_post = array(
                     'post_title' => 'Favorites',
                     'post_content' => '',
                     'post_status' => 'publish',
                     'post_author' => 1,
                     'post_type' => 'page'
                  );

            $result_id = wp_insert_post( $my_post );

            if($result_id > 0){
                add_option("favoritesid", $result_id);
            }
      }
}
类配方{
公共函数构造(){
$favorites_id=获取选项(“favoritesid”);
如果($favorites_id“favorites”,
'发布内容'=>'',
“发布状态”=>“发布”,
“后作者”=>1,
“发布类型”=>“页面”
);
$result\u id=wp\u insert\u post($my\u post);
如果($result\u id>0){
添加_选项(“favoritesid”,$result_id);
}
}
}

测试主插件文件中的代码:(//使用array\u push-for选项)


您在代码中使用了
add\u option()
,但在标题中写入了
update\u option()
。请更正问题。请执行
var\u转储(添加选项(“favoritesid”,$result\u id))检查它返回的内容。可能它已经存在?尝试
echo get\u选项(“favoritesid”)
。这很奇怪。。。我所做的只是添加了
echo get_选项(“favoritesid”)add_选项(“favoritesid”、$result_id)之前的code>并且设置了选项值???为什么你会这样想?我不是WordPress专家,但看起来你正在使用它来存储不打算作为选项存储的数据。我不确定,但看起来是这样的。
class Recipe{
    public function __construct(){

        add_action('init',[$this,'test']);

    }
    public function test(){
        $favorites_id = get_option("favoritesid",[]);
        if($favorites_id >= 0){
            $my_post = array(
                'post_title' => 'this is test',
                'post_content' => '',
                'post_status' => 'publish',
                'post_author' => 1,
                'post_type' => 'page'
            );
            $result=    get_page_by_title($my_post['post_title'],ARRAY_A, 'page');
         if(is_null($result)) {
             $result_id = wp_insert_post( $my_post );
             if ( $result_id >= 0 ) {
                 update_option( "favoritesid", $result_id );
             }
         }
         else return false;

        }


    }
}
new  Recipe;