Dan*_*iel 9 php mysql wordpress
上下文:我需要为一个站点创建一个包含大量自定义和很多字段(20+)的表单,而不是安装插件并修改它的地狱(或者学习插件的API)我决定写我的自己的插件.因为我从头开始这样做,所以必须回答存储数据的问题.
大多数人会建议使用自定义的帖子类型和元数据而不是自定义表格,虽然我熟悉自定义帖子类型和分类法等,但我想知道这是否最适合用于日志的纯数据存储.
表单是一次性使用,我存储的数据将无法在网站的前端访问,只能在WP-admin上"查看",而且很可能只是一个带有可过滤表的单页.
所以问题是这是否需要使用自定义帖子类型和元数据,或者我应该创建一个表并使用$ wpdb类,因为这简化了CRUD并且仍然坚持使用"Wordpress方式"做事.
阅读: 这篇文章为自定义表提供了一个很好的案例,特别是因为他们的例子是关于存储私人数据,因此产生了效率和隐私问题.几年前回答的这个问题有相反的意见,但用例不同,因为存储的数据是公开展示的.
L L*_*L L 10
我强烈建议使用单独的表格.WP表postmeta通常充满了来自许多不同插件的大量信息,并且经常最终成为数据库中最大或最大的表.
除此之外,如果保存在postmeta表中,它将始终部分保存在posts表中,因为这两者需要彼此连接和完成信息.因此,如果您要导出/导入到另一个数据库,则必须参与一个非常不愉快的过程,其中自定义帖子需要与上一个数据库中的ID相同.
此外,如果在数据库中,数据非常容易访问单独的表,并且应该易于从phpmyadmin读取,如果你只有基本的sql知识,使用$ wpdb类编写可过滤的表应该很容易.
所有这一切都来自于我最近将两个大wordpress网站合并为一个的经验,并将大量信息保存为postmeta ...我真的希望它大部分保存在自定义表中,因为它会让我的生活更轻松.
使用元和自定义帖子类型的唯一原因是它更快更容易(至少根据我的经验).希望这有帮助,我真的很想知道是否还有其他意见.祝你的项目好运!