[buddypress-trac] [BuddyPress] #4971: Infinite redirects on activity permalink when user_id = 0
buddypress-trac
noreply at wordpress.org
Wed May 1 13:42:49 UTC 2013
#4971: Infinite redirects on activity permalink when user_id = 0
--------------------------+-----------------
Reporter: boonebgorges | Owner:
Type: defect (bug) | Status: new
Priority: low | Milestone: 1.8
Component: Activity | Version:
Severity: minor | Keywords:
--------------------------+-----------------
`bp_activity_action_permalink_router()` redirects generic activity
permalink URLs of the form example.com/activity/p/12345 to the "canonical"
URL for each activity item: example.com/groups/foo/activity/12345 for
group activity, and example.com/members/foo/activity/12345 for all other
activity. This causes problems when activity items are not associated with
a user_id, because the following line:
{{{
$redirect = bp_core_get_user_domain( $activity->user_id,
$activity->user_nicename, $activity->user_login ) . bp_get_activity_slug()
. '/' . $activity->id . '/';
}}}
will create a URL like
{{{
activity/12345/
}}}
which is a relative URL, and thus takes you to
{{{
http://example.com/activity/12345/activity/12345/
}}}
etc.
There are no places in BP where we create activity items where user_id =
0, but there are a few plugins that do so. In the long run, it might be
nice if we had generic template handling for these sorts of items. But in
the short run, we should at least fail more gracefully - we should fail to
generate a redirect URL at all, in which case these permalinks will go to
the root domain. Not ideal, but at least it doesn't result in potentially
harmful infinite redirect loops. (And if plugins want to customize the
behavior, they can do so using `bp_activity_permalink_redirect_url`.)
--
Ticket URL: <https://buddypress.trac.wordpress.org/ticket/4971>
BuddyPress <http://buddypress.org/>
BuddyPress
More information about the buddypress-trac
mailing list