如何创建具有友好的固定链接和404触发器的前端用户配置文件

时间:2016-10-06 作者:Harrison Miracle

我已经实现了这个问题的公认答案,效果很好:

How to create a front end user profile with a friendly permalink

但如果只输入任何内容/用户/asdasd,它不会触发404

我认为这需要在这部分代码的某个时候发生:

if ( array_key_exists( \'user\', $wp_query->query_vars ) ) {
    include (TEMPLATEPATH . \'/user-profile.php\');
    exit;
}
那么,请检查query\\u vars,然后通过用户数据库运行该查询以进行检查?

如果url不是用户,我不确定如何集成404重定向。

也许这是我放在用户档案上的东西。php来检查它是否返回有关用户的任何信息,如果没有,请加载404模板?

1 个回复
最合适的回答,由SO网友:ClemC 整理而成

我相信这里的解决方案会像你一般描述的那样简单<方便地假设$wp_query->query_vars[\'user\'] 包含username 而不是它ID:

if ( array_key_exists( \'user\', $wp_query->query_vars ) ) {
    if ( username_exists( $wp_query->query_vars[\'user\'] ) ) {
        include( TEMPLATEPATH . \'/user-profile.php\' );
    } else {
        include( TEMPLATEPATH . \'/404.php\' );
    }
    exit;
}

相关推荐

如何从USERS-edit.php中删除颜色选择器代码

我知道我不应该改变Wordpress的核心。但如果我想在“用户编辑”中使用仪表板用户配置文件页面。php和删除大块代码(如颜色选择器)的方法。从第259行到第336行-我想全部删除。<?php if ( ! ( IS_PROFILE_PAGE && ! $user_can_edit ) ) : ?> <tr class="user-rich-editing-wrap"> <th scope="