Wordpress:简单用户个人资料页面的插件

时间:2013-03-15 00:45:39

标签: wordpress wordpress-plugin

在WordPress中,我知道tld.com/author/username存在于作者,但我正在寻找非作者的公共用户个人资料页面。我想为我网站上的成员设置一个简单的“收藏夹列表”。用户将创建一个帐户,并添加他们喜欢的帖子。他们不需要访问wp-admin。

我正在寻找像tld.com/user/username这样简单的东西 - 不是/ user /?uid = 1。很好,“漂亮”。就像WordPress如何处理/ author / admin,或/ author / username一样。

我还想保留/作者保留,以便也可以访问。

我尝试了很多像WordPress-Users这样的插件,但它不是一个“漂亮”的URL,也尝试过像Members,profile-builder,wp-user-frontend这样复杂的插件。

2 个答案:

答案 0 :(得分:2)

我在@bybloggers的答案中找到了答案。 https://wordpress.stackexchange.com/a/58793/12920

我稍微修改了他的代码以根据我的需要定制它,但这是适合我的代码,而且正是我所寻找的:

// Create the query var so that WP catches the custom /member/username url
function userpage_rewrite_add_var( $vars ) {
    $vars[] = 'member';
    return $vars;
}
add_filter( 'query_vars', 'userpage_rewrite_add_var' );

// Create the rewrites
function userpage_rewrite_rule() {
    add_rewrite_tag( '%member%', '([^&]+)' );
    add_rewrite_rule(
        '^member/([^/]*)/?',
        'index.php?member=$matches[1]',
        'top'
    );
}
add_action('init','userpage_rewrite_rule');

// Catch the URL and redirect it to a template file
function userpage_rewrite_catch() {
    global $wp_query;

    if ( array_key_exists( 'member', $wp_query->query_vars ) ) {
        include (TEMPLATEPATH . '/user-profile.php');
        exit;
    }
}
add_action( 'template_redirect', 'userpage_rewrite_catch' );

在我的functions.php文件中,我不得不重新保存我的永久链接。

有时重新保存固定链接没有完成100%的工作,浏览www.mysite.com/member/username会404,所以我不得不手动清除规则,将其放入我的functions.php并加载我的网站一次。然后将其删除,这样我每次加载网站时都不会运行它,因为这是不必要的开销。

// Code needed to finish the member page setup
function memberpage_rewrite() {
     global $wp_rewrite;
     $wp_rewrite->flush_rules();
}
add_action('init','author_rewrite');

答案 1 :(得分:0)

我不知道你是否会找到这个,至少不是免费的。你检查过WPMU了吗?几个月前我开始编写会员插件,但从未完成它,现在正在Symfony中进行。大多数WordPress会员插件要么太复杂,要么不能提供您需要的功能。

你应该指明你需要一个本地开发人员来为你建造它,你甚至可以在你做得好的时候卖掉它。