的明显优势user meta
您可以使用WordPress API记录和检索这些额外的列,而无需编写额外的PHP类或SQL查询。这个wp_usermeta
表的索引非常好,事实上,它每个字段使用一行(如果使用自定义表,则不使用一列),并且不必担心性能。如果您只想记录额外的字段,那么使用用户元API通常意味着更快的开发。
但最终,这取决于您将如何检索数据。对于自定义表,可以执行以下操作:
SELECT `appname`.* FROM `appname` WHERE `appname`.`income` >= 100000;
但是,使用user meta会有点困难,您必须加入:
SELECT `wp_users`.* FROM `wp_usermeta`
LEFT JOIN `wp_users` ON (`wp_usermeta`.`user_id` = `wp_users`.`ID`)
WHERE `wp_usermeta`.`meta_key` = \'appname_user_income\'
AND `wp_usermeta`.`meta_value` >= 100000;
如您所见,这将使您在
wp_users
, 要获取其他元值,必须根据检索到的user\\u id调用API。(请注意,您不需要仅通过左连接来获取用户id)。
因此,如果您只想在元字段上运行简单的查询,那么可以使用user meta来节省大量的开发时间。但如果编写这些查询会很复杂,那么使用自己的表可能是更好的选择。