无法访问新创建的wordpress表

时间:2020-10-16 20:05:45

标签: php wordpress insert

我已经通过PhpMyAdmin在wordpress数据库中创建了一个新表。 但是,我无法写入我创建的任何表中。用相同的代码在诸如metapost之类的预定义表中进行书写就可以了。当我写出错误时,似乎wordpress认为我“忘记了”输入表名,就像wordpress不知道该新表存在一样。到底是怎么回事? 我桌子的名字是赫斯特

这是我的代码:

    <?php
    $metakey   = 'THAT IS';
    $metavalue = 'DONE.';
     
    $wpdb->query(
    $wpdb->prepare(
    "
    INSERT INTO $wpdb->hest
    ( meta_key, meta_value )
    VALUES ( %s, %s)
    ",
    $metakey,
    $metavalue
    )
    );
    $wpdb->show_errors();           
    echo $wpdb->last_query;         
    ?>

这是show_error消息: 如您所见,表名称在执行的查询中突然消失了。

WordPress数据库错误:[您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以获取正确的语法,以在第2行的'(meta_key,meta_value)VALUES('THAT IS','DONE。)'附近使用] INSERT INTO(meta_key,meta_value)VALUES('THAT IS','DONE。')

谢谢!!

为克里斯打气。

1 个答案:

答案 0 :(得分:0)

查看文档,似乎只有默认tables作为wpdb类的属性。您需要将新表作为字符串引用。

$wpdb->query(
    $wpdb->prepare(
    "
    INSERT INTO hest
    ( meta_key, meta_value )
    VALUES ( %s, %s)
    ",
    $metakey,
    $metavalue
    )
);

您也可以使用insert function在新表中插入一行。

$wpdb->insert( 
    'hest', 
    array( 
        'meta_key' => $metakey, 
        'meta_value' => $metavalue, 
    ), 
    array( 
        '%s', 
        '%s', 
    ) 
);
相关问题