如何在带有嵌套插件的超链接中显示帖子?

时间:2017-04-20 作者:haider

Important question

如何创建这样的嵌套段塞--
127.0.0.1/wordpress/displaypage/family1/members/
127.0.0.1/wordpress/displaypage/family2/members/

这里-鼻涕虫displaypage 是页面slug,并且family1family2 是存储在自定义表中的组的名称。。members 是显示每组用户数的选项卡请回答此问题

1 个回复
SO网友:Milo

这可以通过以下方式实现adding rewrite rules.

第一add the query vars 将自定义值存储在我们的规则中:

function wpd_family_query_var( $query_vars ) {
    $query_vars[] = \'wpd_family\';
    $query_vars[] = \'wpd_members\';
    return $query_vars;
}
add_filter( \'query_vars\', \'wpd_family_query_var\' );
接下来,添加规则以捕获两者displaypage/family/displaypage/family/members/ 请求:

function wpd_add_family_rewrite_rules() {
    add_rewrite_rule(
        \'displaypage/([^/]+)/?$\',
        \'index.php?pagename=displaypage&wpd_family=$matches[1]\',
        \'top\'
    );
    add_rewrite_rule(
        \'displaypage/([^/]+)/members/?$\',
        \'index.php?pagename=displaypage&wpd_family=$matches[1]&wpd_members=true\',
        \'top\'
    );
}
add_action( \'init\', \'wpd_add_family_rewrite_rules\' );
别忘了,你必须flush rewrite rules 更换后。

然后,您可以在任何地方访问查询变量的值after the parse_query action 具有get_query_var():

if( $family = get_query_var( \'wpd_family\' ) ){
    echo \'family: \' . $family;
}

if( $members = get_query_var( \'wpd_members\' ) ){
    echo \'members: \' . $members;
}

相关推荐

按用户‘xprofile’自定义域筛选BuddyPress用户帖子

嗨,我正在努力找出如何根据用户的个人资料字段为用户的帖子制作过滤器。。示例=用户注册表选择了2017、2018学年的下拉配置文件字段,然后他们创建了一个帖子。按毕业年份的分类筛选所有帖子。。所以你只能看到那个学年的人发的帖子。有没有人知道一个插件可以做到这一点。令人困惑的是,帖子正在加载,但会根据成员详细信息进行过滤。两个单独的目录。请提供帮助或建议