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 June 1, 2016

BuddyPress 2.6.0 Beta 1

@dcavins packaged and released BuddyPress 2.6.0 Beta last Wednesday, June 1, 2016. Please help us test the exciting new features like the new API for Member/Group navigation, Activity embeds, Group Types API, and more!

BuddyPress 2.6.0 Schedule

  • Release Candidate 1 (string freeze): June 15, 2016
  • BuddyPress 2.6.0 release: June 22, 2016.
  • As of this post, there are 101 tickets in queue (Closed: 98. Open: 3.).

Trac Tickets

Companion Stylesheet – Twentyten and Twentyeleven (#7000) Kept open for any revision in stylesheet.

Add a “data-timestamp” attribute to all templates requiring timestamps (#5757) @rayisme needs more time to address localization issue. Update: This has been punted to BP 2.7.0.

Need to clear user cache after running direct query to update user displayname (#7050) Update: @djpaulgibbs has committed fix to trunk.

Activity link moderation doesn’t output useful error message to end users (#6719) Positive reviews during dev chat. Update: @rayisme has committed fix to trunk.

Use WP page names for BP directory pages headings (#6765) @boonebgorges would like to spend more time on the migration routine. “I think we’d been waiting for rewrite rules, but actually, we could build the UI first,” noted @boonebgorges. Update: This has been punted to Future Release.

Extract & relocate core markup functions: Theme compat include functionality & search forms file (#6844) Needed OK from Lead Dev. Update: Ticket has been punted to BP 2.7.0.

Emails: real unsubscribe functionality (#6932) Update: Ticket has been punted to BP 2.7.0.

Add a global scope option to the BP taxonomy wrapper functions (#7077) Ticket was reopened. @boonebgorges will take a look at it during Beta. Update: He has committed fixes to trunk.

oembed activity review (#7104) @rayisme has been committing fixes per review. Update: All review items have been fixed in trunk.

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

#5757, #6719, #6765, #6844, #6932, #7000, #7050, #7077, #7104, #dev-chat

Dev Chat Summary for May 25, 2016

BuddyPress 2.5.3

@boonebgorges packaged and released BuddyPress 2.5.3 last Tuesday, May 24. This is a maintenance and security release, a recommended upgrade for all BuddyPress installations.

BuddyPress 2.5.4

BuddyPress 2.6.0

@dcavins postponed Beta 1 release last week, along with the RC 1 and 2.6.0 releases. The schedule for this dev cycle is updated as follows:

  • Beta 1: June 1, 2016
  • Release Candidate 1 (string freeze): June 15, 2016
  • 2.6.0 release date: June 22, 2016
  • There are currently 98 tickets in queue (Closed: 88. Open: 10.).

Trac Tickets

Companion Stylesheet – Twentyten and Twentyeleven (#7000) @hnla has committed stylesheets to trunk.

Harmonize structure of radio and check box input groups (#7083) @dcavins requested comments on patch. @im4th mentioned some code changes. @rayisme gave thumbs up. Comments in ticket are welcome.

Autocomplete (#4824) Ticket has been punted for future release. Update: @boonebgorges has committed patch to trunk.

Add a “data-timestamp” attribute to all templates requiring timestamps (#5757) @rayisme has uploaded new patch. Needs polyglot help for time strings output by the JS library are not the same as we currently generate. This ticket has been punted to get localization on point.

`get_group_extras` function doesn’t “respect” the `user_id` variable from `groups_get_groups()` function (#6431) Ticket has not been updated for some time and has been punted to Future Release.

Blogs: Improvements to `bp_blogs_record_existing_blogs()` (#6370) Update: @rayisme has committed the improvements to trunk.

Activity replies posting as new items (#6683) @im4th has patch and requested feedback. Positive feedback from @boonebgorges, @im4th, @dcavins, and @djpaulgibbs. Update: @im4th has punted ticket to Future Release.

Activity link moderation doesn’t output useful error message to end users (#6719) @rayisme has patch. Comments welcome. @djpaul mentioned that patch was good to commit.

Escape HTML in RSS Feeds (#6990) @djpaulgibbs noted that this is a new issue but won’t block Beta 1 and left comments in ticket. Update: @djpaulgibbs has committed fix to trunk.

Can’t set ‘Text size’ in Email Customizer (#7041) Update: @dcavins has committed fix to trunk.

@mentions break instagram oembeds if same username exists on site as instagram (#7084) @djpaulgibbs and @johnjamesjacoby have comments in ticket. @boonebgorges is also looking into this. Update: @dcavins has moved this ticket to upcoming BP 2.5.4.

PHP Notice in Customizer (#7086) Issue when entering the email preview pane in the Customizer. Update: @djpaulgibbs has committed fix to trunk.

Groups: Replace `BP_Group_Member` static method DB queries with updated group membership functions (#7078) Update: @rayisme has committed this enhancement to trunk.

xprofile_updated_profile actions pass different args (#7049) @dcavins will review patch submitted by nickmomrik. Update: @dcavins has committed fix to trunk.

Administrator not able to delete user notifications (#7023) @rayisme has revised patch. Update: The fix has been committed to trunk.

“Full name” field setting doesn’t work on non-primary blog admin in multiblog mode (#7003) Ticket has been punted to Future Release.

Emails: real unsubscribe functionality (#6932) @djpaugibbs will review patch this weekend. Update: New patch uploaded.

BuddyPress Embeds for activity, user profiles, groups (#6772)@rayisme and @im4th have updated patches. Update: New feature has been committed to trunk.

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

#4824, #5757, #6370, #6431, #6683, #6719, #6772, #6932, #6990, #7000, #7003, #7023, #7041, #7049, #7078, #7083, #7084, #7086, #dev-chat

Dev Chat Summary for May 18, 2016

BuddyPress 2.5.3

BuddyPress 2.6.0

  • Beta 1: May 25, 2016
  • Release Candidate 1 (string freeze): June 8, 2016
  • Release Date: June 15, 2016
  • There are currently 91 tickets slated for this dev cycle. (Closed: 70. Active: 21.)

Trac Tickets

Route /me/*/ to /members//*/ (#6325) @rayisme has patch and has created a new ticket (#7075) for the internationalization patch. Update: @rayisme has committed this feature to trunk.

BuddyPress Embeds for activity, user profiles, groups (#6772) @im4th noted the security concerns about the embedded embeds. @rayisme: “The right way is to dynamically replace the image with the embedded content. However, the WP model makes this hard since we start in an IFRAME to begin with.” @im4th mentioned that he was going to test the new patch. Update: @rayisme and @im4th have uploaded new patches.

Activity post form template improvements (#6680) @dcavins had posted screenshots after testing @rayisme‘s patch on the WP default and some premium themes. @boonebgorges: “It looks like the specific improvements in the ticket do break some things, so let’s not do it right now. But maybe we can revisit for the next release.” Update: Ticket punted to next dev cycle.

Administrator not able to delete user notifications (#7023) @rayisme requested dev feedback. @boonebgorges: “The change to `displayed` rather than `loggedin` seems right. It’s what we do everywhere else. If you need to add a param to all functions to make it work, so be it. Strategy seems fine.” @djpaulgibbs: “to my eyes that looks like it’s an in-progress ticket that I don’t need to pay much attention because I trust the people (Ray and David) working on it 🙂 “

Notifications: Pass the notification ID to the notification callback (#7066) @rayisme has patch but requires patch in (#7067) to resolve the issue. @boonebgorges gave the green light. Update: @rayisme has committed both to trunk.

Improved caching for group membership (#6327) @boonebgorges will look into this. In addition: “I commend @dcavins for pulling that into the milestone. Now I feel obligated to look at it. A quality of a good release lead :+1: ” Update: @boonebgorges has improvements to trunk.

Emails: real unsubscribe functionality (#6932) @djpaulgibbs wants to get this in for 2.6 and will take a look at progress early next week.

Date xprofile field enhancement (#5500) @boonebgorges and @djpaulgibbs discussed the patch and missing feedback from reporter. Update: Ticket punted to next dev cycle.

Add a “data-timestamp” attribute to all templates requiring timestamps (#5757) The discussion between @rayisme, @im4th, @boonebgorges, and @djpaulgibbs touched on the 2 new libraries introduced for this new feature – moment.js and livestamp.js – and who has the time to shepherd this for 2.6.0. Update: @rayisme has uploaded revised patch.

Blogs: Improvements to bp_blogs_record_existing_blogs() (#6270) @rayisme is ready to commit patch in ticket.

Widgets: add support for customizer selective refresh (#7030) Update: @rayisme has committed patch to trunk.

Creation of developer.buddypress.org (#6812) @tw2113 reported that he has uploaded everything he has locally to https://github.com/buddypress/developer.buddypress.org. @tw2113 and @djpaulgibbs discussed the items needed to update the theme for developer.buddypress.org.

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

#5500, #5757, #6270, #6325, #6327, #6680, #6772, #6812, #6932, #7023, #7030, #7066, #7067, #7075, #dev-chat