使用ADD_POST_META在数据库中指定元字段的列类型

时间:2019-02-25 作者:Fusion

在我的代码中,我通过以下代码增强了我的一种内容类型:

add_post_meta( $post->ID, \'favourite_fruit_code\', $value )

一切进展顺利,但我希望能够指定我希望在DB中创建的列类型。

有些情况下,我们需要不同的DB列类型,这取决于我们要存储的数据。如何指定此项?(例如,如果我希望我的字段存储在DB中TinyIntegerField, 或BigIntegerField, 等等)。

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

当您使用add_post_meta, 数据库中未创建列。所有post元数据存储在wp_postmeta 表(https://codex.wordpress.org/Database_Description#Table:_wp_postmeta). 下面是该表的结构:

enter image description here

  • post_id 是此元数据分配给的post的IDmeta_key 是meta的关键(在您的情况下favourite_fruit_code)
  • meta_value 是该元的值
,因此无法设置列的类型,因为没有列,也无法设置值的类型,因为所有值都存储为LONGTEXT。

另一方面,不需要设置此列的类型。您应该在设置值之前对其进行清理和验证,并且您可以使用meta_type in your meta query, 因此,可以正确比较这些值。

相关推荐

Insert Data into Database

我是为wordpress开发插件的新手。我需要一个公式,所有的网站浏览者可以填写数据并发送它。这个send it-按钮应将其保存到数据库。因此,我认为应该这样定义插件中的快捷方式和公式:function formular() { return \'This is html of Formular\'; } add_shortcode(\"formular\", \"formular\"); 但是现在我不知道如何用按钮定义公式来将数据保存到数据库中。已添加应保存数据的数