我知道wordpress使用用户ID映射数据库中帖子和评论的数据。
例如,在 wp_posts 表格中,列 post_author 对应于撰写帖子的用户ID,并且在 wp_comments 表格中, user_id 列对应于对帖子发表评论的用户ID。
但我想要实现的是使用用户名值而不是用户ID来识别用户。因为我正在开发一个功能,以便用户将在wordpress之外进行身份验证,因此他们的详细信息不会插入wordpress数据库( wp_users 表)。我正在使用自定义会话将用户的会话存储在wordpress中,并在成功验证后存储我从第三方网站收到的用户的用户名。
话虽如此,我正在考虑以下几种选择:
任何人都可以指导我走正确的道路吗? 请注意:
答案 0 :(得分:1)
你不想。用户名是可修改的,它们不是完全独特的,并且带有许多其他相关问题。
拆分你的申请。如果您想使用其他身份验证方法,请使用您喜欢的任何方法对用户进行身份验证。一旦您知道它是哪个用户,您就可以从数据库中获取用户ID并正确生成Wordpress登录。
您的修改应该避免对您不熟悉的系统内部进行大规模的彻底更改。那种方式就是疯狂。相反,专注于构建一个可以满足您需求的附加组件,然后尽快将控制权交还给主系统。通过这种方式避免重复大量工作。
答案 1 :(得分:0)
我猜您是通过说出用户名来引用用户登录名,对吧? 如果是,那么你可以实现这一点,因为userlogin是唯一的,如userid,你可以简单地查询你的wp_users表来获取用户ID。 如果没有,则无法保证您在前一个回答中通过@mrdoombringer提到的用户名获取正确的用户信息