Changes to Template Files for BuddyPress 2.7

Several improvements to BuddyPress template files are introduced when we release BuddyPress 2.7.0 on October 19 (there will be a Release Candidate 2 on October 12). These include upgrades for accessibility, markup, and template refactoring.

Please remember to test/update your plugins, themes, and sites before the stable release. This is also a friendly reminder that BuddyPress 2.7 will require at least WordPress 4.2.

Following are the changesets for respective files to guide you in your updates. At the bottom of this post, there are links to other views of the file revisions for this dev cycle.

This post will be updated as needed.

Changesets

Reference point: buddypress/bp-templates/bp-legacy/

The following give you an overview of the revisions to individual files. Please note that changesets with accompanying trac ticket numbers, e.g. (See #5757), require that you upgrade installations to at least BP 2.7 RC1 or trunk in order to test the new features.

Activity

buddypress/activity/single/home.php
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/activity/comment.php
* Add data-livestamp attribute. (Changeset) (See #5757)

buddypress/activity/index.php
* a11y: Add navigation landmarks. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset 1, Changeset 2)

Blogs

buddypress/blogs/create.php
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/blogs/index.php
* Refactor search form for the Sites Directory screen. (Changeset) (See #6844)
* a11y: Add navigation landmarks. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

bp-blogs/bp-blogs-template.php *** Do not change core file. Noted here for possible styling adjustments.
* a11y: Group radio buttons within a fieldset on the Site > Create screen for multisite installations. (Changeset)

Legacy Forums

buddypress/forums/index.php
* Refactor search form for the Forums Directory Screen. (Changeset) (See #6844)
* a11y: Add navigation landmark. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)

Groups

buddypress/groups/single/admin/group-settings.php – New file after splitting up groups/single/admin.php in (#7079)
* Show available group types. (Changeset) (See #7210)

buddypress/groups/single/admin/manage-members.php – New file after splitting up groups/single/admin.php in (#7079)
* Change structure, content, and message of member list plus add pagination controls. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset 1, Changeset 2)

buddypress/groups/single/forum/edit.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/groups/single/forum/topic.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/groups/single/activity.php
* a11y: Clarify navigation landmark. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/groups/single/admin.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/groups/single/admin.php in BP 2.6, now in buddypress/groups/single/admin/manage-members.php for BP 2.7 in (#7079).
* a11y: Bump headings from h4 to h3 for the Groups > Manage > Members screen. (Changeset)

buddypress/groups/single/admin.php in BP 2.6, now in buddypress/groups/single/admin/group-settings.php for BP 2.7 in (#7079)
* a11y: Group two sets of radio buttons within fieldsets for the Groups > Manage > Settings screen. (Changeset)

buddypress/groups/single/cover-image-header.php
* a11y: Bump headings for Group Admins and Mods from h4 to h2 for the header template used if group cover image is enabled. (Changeset)
* Show group type in group header under cover image if enabled. (Changeset) (See #7210)
* Add data-livestamp attribute. (Changeset) (See #5757)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/groups/single/forum.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/groups/single/group-header.php
* a11y: Bump headings for Group Admins and Mods from h4 to h2 for the header template file used if group cover images are disabled. (Changeset)
* Show group type in group header if enabled. (Changesets: 1, 2, 3) (See #7210)
* Add data-livestamp attribute. (Changeset) (See #5757)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/groups/single/home.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/groups/single/invites-loop.php
* a11y: Bump heading from h4 to h3 for the Group > Send Invites screen. (Changeset)

buddypress/groups/single/members.php
* Add data-livestamp attribute. (Changeset) (See #5757)

buddypress/groups/single/request-membership.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/groups/single/send-invites.php
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/groups/create.php
* a11y: Group two sets of radio buttons within fieldsets for the Groups > Create – Step 2. (Changeset)
* Show a list of group types for selection during group creation. (Changeset) (See #7210)
* a11y: Remove navigation landmark. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)
* a11y: Add headings for screen reader users. (Changeset)

buddypress/groups/groups-loop.php
* New template tag to show group directory message. (Changeset) (See #7210)
* Add data-livestamp attribute. (Changeset) (See #5757)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/groups/index.php
* Refactor search form for the Groups Directory Screen. (Changeset) (See #6844)
* a11y: Clarify navigation landmarks. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

Members

buddypress/members/single/friends/requests.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/groups/invites.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/messages/compose.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/messages/messages-loop.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/messages/single.php
* a11y: Bump heading from h3 to h2 for the single message screen. (Changeset)

buddypress/members/single/notifications/read.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/notifications/unread.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/profile/change-avatar.php
* a11y: Bump heading from h4 to h2 for the Profile > Change Avatar screen. (Changeset)

buddypress/members/single/profile/change-cover-image.php
* a11y: Bump heading from h4 to h2 for the Profile > Change Cover Image screen. (Changeset)
* Add data-livestamp attribute. (Changeset)

buddypress/members/single/profile/edit.php
* a11y: Bump heading from h4 to h2 for the Profile > Edit screen. (Changeset)
* Add navigation role for profile field group links. (Changeset)

buddypress/members/single/profile/profile-loop.php
* a11y: Bump heading from h4 to h2 for Profile > View screen. (Changeset)

buddypress/members/single/settings/general.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/settings/notifications.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/settings/profile.php
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/activity.php
* a11y: Clarify navigation landmarks. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/members/single/blogs.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/cover-image-header.php
* a11y: Alert screen reader users about new messages. (Changeset)
* Add data-livestamp attribute. (Changeset) (See #5757)

buddypress/members/single/forums.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/friends.php
* a11y: Clarify navigation landmark. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/groups.php
* a11y: Clarify navigation landmark. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/home.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/member-header.php
* Add data-livestamp attribute. (Changeset) (See #5757)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/members/single/messages.php
* a11y: Clarify navigation landmark. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/single/notifications.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/plugins.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/profile.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/single/settings.php
* a11y: Clarify navigation landmark. (Changeset)

buddypress/members/activate.php
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/members/index.php
* Refactor search directory in the Members Directory Screen. (Changeset) (See #6844)
* a11y: Clarify navigation landmark. (Changeset)
* a11y: Add heading for screen reader users. (Changeset)

buddypress/members/members-loop.php
* Add data-livestamp attribute. (Changeset) (See #5757)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress/members/register.php
* a11y: Bump headings for sections from h4 to h2 of Registration page. (Changeset)
* a11y: Group radio buttons with a fieldset for multisite installations. (Changeset)
* a11y: Alert screen reader users about new messages. (Changeset)

buddypress-functions.php

buddypress/buddypress-functions.php
* Add search form for Groups > Manage Members screen. (Changeset) (See #6385)
* Renders the group ID hidden input on group admin screens. (Changeset) (See #7079)
* Use new groups_get_group() syntax throughout BP. (Changeset) (See #5451)
* Group join/leave buttons should have group-button class after AJAX request.(Changeset) (See #7229)

CSS

buddypress/css/*
* a11y: Update contrast ratios to meet WCAG 2 AA standards
~ twentysixteen – (.css) (-rtl.css) (.scss)
~ twentyfifteen – (.css) (-rtl.css) (.scss)
~ twentyfourteen – (.css) (-rtl.css) (.scss)
~ twentythirteen – (.css) (-rtl.css) (.scss)
~ twentytwelve – (.css) (-rtl.css) (.scss)
~ buddypress – (.css) (.css) (-rtl.css) (-rtl.css)

JavaScript

buddypress/js/buddypress.js
* Don’t allow a Favorite click when AJAX request is in progress. (Changeset)
* Fix AJAX search after directory form template refactoring. (Changeset)

Additional References

BP Codex – Template Changes for BP 2.7

BP Trac – Complete changeset for bp-legacy/buddypress since BP 2.6.2
(Updated 10/19/2016)

#5451, #6385, #6844, #7079, #7210, #7229

Dev Chat Summary for August 31, 2016

BuddyPress 2.7

Trac Tickets

BP-legacy: split group single admin.php in separate template files (#7079) @hnla has committed this to trunk. If you have copied over `groups/single/admin.php` and made some changes, there won’t be any changes to your theme. You might want to consider, however, “updating your file/s to the newer modular markup to enjoy improvements”, @dcavins said.

Improve `$args` included in ⁠⁠⁠⁠`bp_current_user_can`⁠⁠⁠⁠ and ⁠⁠⁠⁠`bp_user_can`⁠⁠⁠⁠ filters (#7192) @dcavins requested feedback from @rayisme who gave the nod. Update: @dcavins has committed patch to trunk.

Select All link missing in BuddyPress Menu Selection (#5260) @tw2113 has committed patch to trunk.

Extract & relocate core markup functions: Theme compat include functionality & search forms file (#6844) @boonebgorges has committed this to trunk.

Use WP page names for BP directory pages headings (#6765) @hnla, @imath, @boonebgorges, and @dcavins have contributed patches for this ticket and @rayisme has shared a code snippet. @hnla requested dev feedback.

strtotime() is evil don’t use it (#5781) @rayisme has committed patches for this ticket. He requests feedback on the `5781.mysql2date.patch`. “All of our `⁠⁠⁠⁠strtotime()⁠⁠⁠⁠` calls assume that GMT is the default timezone.  If the server’s timezone is anything but GMT, then our time rendering is wrong. Almost all of BP’s timestamps are in GMT.” Dev feedback requested.

Screen notifications settings page (#6712) @rayisme has patch. Dev feedback welcome.

Date xprofile field enhancement (#5500) @boonebgorges has updated patch. This ticket “is mostly done – just working out a couple of UI and acccessibilty issues near the end.”

BP Types UI

@boonebgorges and @dcavins will be developing the new dashboard UI for creating Member Types and Group Types as a plugin first. @boonebgorges has created the new repo at https://github.com/buddypress/bp-types-ui

Slack log: https://wordpress.slack.com/archives/buddypress/p1472669906000142

#5260, #5500, #5781, #6712, #6765, #6844, #7079, #7192, #dev-chat

Dev Chat Summaries as of August 17, 2016

This is a compilation of our dev chats for Aug. 3, Aug. 10, and Aug. 17. Thanks for your patience 🙂

BuddyPress 2.6.2

@dcavins packaged and released BuddyPress 2.6.2 last August 4, 2016. This was a maintenance release.

BuddyPress 2.7

  • September 21 – Beta 1
  • October 5 – Release Candidate 1 (string freeze)
  • October 12 – Target Release date
  • There are currently 84 tickets in queue (44 closed, 40 open).

Trac Tickets

  • Hierarchical groups (#3961) @dcavins had a patch which added the parent_id column to the groups database and support for querying by parent_id via groups_get_group() and @rayisme has uploaded a new patch which includes cache invalidation, among others. Dev feedback requested.
  • Group type frontend integration (#7210) @rayisme has patch which includes new UI. Dev feedback requested.
  • Display and filter by member type on Dashboard > Users (#6060) @slaFFik has patch. Dev feedback requested.
  • xprofile field support for WordPress Profile Fields (#7162) @djpaulgibbs: “We’ve not touched the xprofile sync code in years. So if anyone has any ideas about this … and what a new implementation should work like, please comment on the ticket.” He might work on this for BP 2.8.
  • Only load component action and screen code when we’re on the component’s page (#7218) @rayisme has patch for the activity component.
  • Select All link missing in BuddyPress Menu Selection (#5260) @tw2113 has patch and ready to commit. Review and testing requested.
  • BP-legacy: split group single admin.php in separate template files (#7079) Patches by @offereins, @hnla, and @rayisme. Dev feedback requested.
  • Date xprofile field enhancement (#5500) @boonebgorges has patch which includes new UI. Dev feedback welcome.
    Related: @djpaulgibbs has been talking to Miguel from the https://wordpress.org/plugins/buddypress-xprofile-custom-fields-type/ plugin about porting some of that plugin’s field types into core. Tickets will be created when ready.
  • Implement user capabilities for Activity component (#7176) @djapulgibbs has patch. Needs feedback from anyone who knows roles/caps API well.
  • Screen notifications settings page (#6712) @rayisme is working on this ticket. Related to Central place to manage all notifications and delivery preferences (#7168). Needs wireframes. @mercime has volunteered.
  • Extract & relocate core markup functions: Theme compat include functionality & search forms file (#6844) @hnla has patch. Dev feedback requested. @boonebgorges has agreed to review patch.
  • Member/Group Type management in wp-admin @boonebgorges: “If my schedule loosens up in the next few weeks, I will make a first go at a first patch “
  • Accessibility Tickets. @mercime – Goal is to make our front-end templates and at least  85% of BP admin screens accessible-ready by 2.7 launch. There are some style issues for the headings at this time, but will resolve them before deadline.

Notes

  • @djpaulgibbs: “I’m always available for code review and playing the devil’s advocate in feature discussions.
    I would also like to remind regular contributors they are very welcome to leave feedback on tickets in Awaiting Review and Under Consideration milestones on Trac. There’s a backlog, and we really need to do better here. So if anyone wants a change from forum support or development or translation, check out Trac.”

#3961, #5260, #5500, #6060, #6712, #6844, #7079, #7162, #7168, #7176, #7210, #7218, #dev-chat