Firstly I would try to avoid the use of a custom table using custom post types, custom taxonomies and post/user/term meta. 这将大大提高兼容性,并为您提供大量免费功能,如UI、导入/导出支持、归档、REST API等
但假设你不能使用它,无论出于何种原因,你应该:
尽可能在表名称中使用数据库前缀。除了一致性之外,有些人使用一个数据库进行多个安装,如果始终使用相同的表名,这种情况将失败dbDelta
创建和更新表。此函数的语法和输入非常严格,因此请严格按照说明操作。通过wpdb
询问但不要使用wpdb
对象进行查询。有全局wpdb对象,但如果需要使用其他用户/过程或连接到远程服务器,则可以创建自己的对象。很多人会使用mysql_connect
等等,如果出于任何原因dbDelta
和wpdb
不会切割(罕见),使用PDO
/mysqli
或ORM库。这是非常不可能的,也是不可能的
如果您试图添加一种新形式的meta(例如term meta),那么已经有了映射到meta API中的预期表名,您可以使用这些表名For more information see the codex