在wordpress中创建用户配置文件页面

在wordpress中创建用户配置文件页面,wordpress,Wordpress,我试图实现的是让网站上的每个用户(wp用户)都有自己独特的前端配置文件页面,如sosite.com/user/userX。(编辑:澄清一下,这不是一个只有用户自己才能看到的设置页面,它是一个开放的配置文件页面,供登录用户或匿名/访问者访问和查看其配置文件) 我想在帖子中使用url GET(site.com/user?name=userX),但wordpress似乎不理解“?…=”,并说页面不存在。这个解决方案在wordpress中看起来不是一个好的实践,所以我试着从另一个角度来看 即使有几个插件

我试图实现的是让网站上的每个用户(wp用户)都有自己独特的前端配置文件页面,如so
site.com/user/userX
。(编辑:澄清一下,这不是一个只有用户自己才能看到的设置页面,它是一个开放的配置文件页面,供登录用户或匿名/访问者访问和查看其配置文件)

我想在帖子中使用
url GET(site.com/user?name=userX)
,但wordpress似乎不理解
“?…=”
,并说页面不存在。这个解决方案在wordpress中看起来不是一个好的实践,所以我试着从另一个角度来看

即使有几个插件可以为我做这件事,甚至更多,我仍然坚持手工操作,因为我正在构建一个多语言网站(使用Polylang),所以插件只能在主语言中工作。 简单地说,Polylang通过url跟踪该语言,例如:
site.com/langX/pageX
,我尝试的插件只停留在一个页面上

我倾向于说我正在寻找的是
函数中的一种方法。php
可以让Wordpress理解一个页面
../user/
将在
../user/userX
之后有一个名字:
…langX/user/userX
…langY/user/userX


如果有人能告诉我应该寻找什么,我会很高兴。

据我所知,您可以尝试从仪表板、命名用户或其他内容创建一个页面。用户登录后,可以在会话中获取用户信息,也可以使用上面提到的查询变量。您可以在Wordpress中创建自定义页面模板,并将该模板分配给页面。在此页面模板中,使用所需的逻辑编写前端html-s。WordPress中的路由通常由WordPress自己处理。因此,创建一个页面将使该路径对您可用,比如
yoursite.com/user
。请阅读WordPress文档下面链接中的页面模板

更新的答案 根据评论

  • 创建保存数据的自定义帖子类型(用户)
  • 当用户注册时,为用户post-type创建条目,用post-meta将用户id链接到该post-type条目。您可以根据需要设置slug,为用户设置唯一的url

  • 为用户提供仅编辑自己数据的能力。您可以检查将用户id与特定自定义帖子类型项连接起来的帖子元

  • 如果用户被删除,也要删除他们的自定义post类型条目,这样数据库中就不会保留与该用户相关的内容


  • 为了安全起见,您应该在wordpress中创建一个新路由:

    function custom_rewrite_basic() {
      add_rewrite_rule('^user/([0-9]+)/?', 'index.php?user_profile=$matches[1]', 'top');
    }
    add_action('init', 'custom_rewrite_basic');
    
    
    function custom_rewrite_tag() {
      add_rewrite_tag('%user_profile%', '([^&]+)');
    }
    add_action('init', 'custom_rewrite_tag', 10, 0);
    
    现在,您可以访问与以下内容相同的页面:

    主题中的以下代码:

    get_header(); 
    global $wp_query;
    if($wp_query->query_vars['user_profile']) {
    
    //do stuff
    
    }
    

    正如我在问题中所说,这是一个前端访问,所以登录用户和匿名用户都可以查看它。我不可能为在我的网站上注册的每个用户创建一个页面,我希望能够为每个注册的用户创建一个url,这样我就可以构建一个模板来显示信息。匿名用户的数据来自哪里?。您不必为每个用户的页面创建页面。如果是注册用户,您可以使用根据登录用户显示正确信息的同一页面。这不是用户自我页面。正如标题所示,我希望用户拥有配置文件页面。所以任何人都可以看到它。(例如,我正在做的事情,人们可以创建帐户和发布信息,作者需要自己的页面,可以显示各种信息,如姓名、年龄、传记……),然后最好的选择是创建自定义的帖子类型,比如用户。这将在每个用户注册时为其创建一个条目。注册后,触发带有自定义post类型的
    wp\u insert\u post
    ,该自定义post类型将为此保存条目。我不知道还有什么别的办法可以做到。如果这是可以接受的,我可以用相关信息更新我的答案。我想到了这一点,但是,例如,我需要实现代码,以便在每次用户更改帖子时插入、更新和/或删除帖子。此外,数据库中还有冗余,这可能会造成潜在的混乱和难以维护。我很肯定有一个合适的方法来实现这一点,如果插件能够做到这一点,我应该能够。。。我正在钻研一些插件代码和文档,试图弄清楚它们是如何让wordpress理解这种“幻影页面”的,但到目前为止什么都没有。谢谢,路由/路由就是我要找的。即使这比你贴的要复杂一点,我还是找到了一个完整的解释和更多的方法来实现它!在另一篇帖子中找到答案,路由: