需要通过添加_重写_规则更改BuddyPress配置文件URL

时间:2015-11-17 作者:Kishore Sahoo

我对wordpress/buddypress url重写有一些问题

因此,我有一个类似localhost/site/members/admin/jobs/it job create/的url,但需要使其成为localhost/site/members/admin/jobs/it job/create/

所以应该是it工作/创建表单it工作创建!!。如何修复它。谢谢

 add_rewrite_rule(
                \'members/admin/jobs/it-jobs/create\', 
                \'index.php?pagename=members/admin/jobs/it-jobs-create\'
            );

1 个回复
SO网友:Robert Bokori

Buddypress有点棘手。他们没有使用Wordpress方式进行重写。(https://buddypress.org/support/topic/custom-permalink-and-rewrite-rules-for-buddypress/) 他们正在自己的模块中处理url。如果你有members 由于Buddypress成员页面slug和url的其余部分不是Buddypress模块,因此它会将您重定向到404。

有一种方法可以愚弄他们的url进程:

function it_job_rewrite_bp_uri($path) {
  if(strpos($path, \'members/admin/jobs/it-jobs/create\')) {
    return \'members/admin/jobs/it-jobs-create\';
  }

  return $path;
}
add_filter(\'bp_uri\', \'it_job_rewrite_bp_uri\');
只有正确处理旧url时,上述代码才能正常工作。如果您不希望Buddypress处理它,只需返回一个不是Buddypress url的路径。

相关推荐