[buddypress-trac] [BuddyPress Trac] #5441: Profile Settings show "Email" sub tab even if content is empty

buddypress-trac noreply at wordpress.org
Thu Jul 31 15:45:01 UTC 2014


#5441: Profile Settings show "Email" sub tab even if content is empty
----------------------------------------+--------------------
 Reporter:  landwire                    |       Owner:
     Type:  defect (bug)                |      Status:  new
 Priority:  normal                      |   Milestone:  2.1
Component:  Settings                    |     Version:  1.9.2
 Severity:  normal                      |  Resolution:
 Keywords:  needs-patch good-first-bug  |
----------------------------------------+--------------------
Changes (by DJPaul):

 * keywords:  needs-patch => needs-patch good-first-bug


Comment:

 I've marked this as `good_first_bug`, though it's a little more
 complicated to understand than some of the others as it involves the black
 box that is BuddyPress' navigation/route building code. :) Maybe good if
 you've submitted a few patches to BuddyPress before, or are an experienced
 WordPress developer. Adventurous explorers should grab a machete and take
 the following to heart:

 * Recreate the issue by going to [your profile] > settings, when you ONLY
 have the Members and Settings component active. You should see what
 williamsba1 included in his screenshot.
 * The email navigation menu/item is added here:
 https://buddypress.trac.wordpress.org/browser/trunk/src/bp-settings/bp-
 settings-loader.php?rev=8568#L103
  * You should be able to comment that block out and see the subnav
 disappear; in fact, if you were on the email settings screen when you make
 this change, the request should 404 as the nav item doesn't exist.
  * Another way to remove the nav item is something like this (untested):
 `bp_core_remove_subnav_item( buddypress()->settings->slug, 'notifications'
 )`.
  * The component class' `setup_nav` methods are invoked by the
 `bp_setup_nav` action.
 * I think the tricky part is deciding when/where to remove the code.
 Adding a conditional block around the segment in `bp-settings-loader.php`
 is tempting, but due to possible load order problems, and to make it easy
 for developers to un-hook, it should probably be done in a separate
 function. I'm not sure where to suggest this should be done; perhaps late
 (`> 10`) to `bp_setup_nav`.

--
Ticket URL: <https://buddypress.trac.wordpress.org/ticket/5441#comment:5>
BuddyPress Trac <http://buddypress.org/>
BuddyPress Trac


More information about the buddypress-trac mailing list