X-post: The Developers Guide to Supporting Your Themes – A Support Workshop

X-comment from +make.wordpress.org/support: Comment on The Developers Guide to Supporting Your Themes – A Support Workshop

X-post: Community Conduct Project – Kick off meeting scheduled for 17:00 UTC on the 5th September 2017

Community Conduct Project – Kick off meeting scheduled for 17:00 UTC on the 5th September 2017

Meeting notes – 2017-07-25

Items brought up:

  • Community behavior – code of conduct.
    • The channel can often get disruptive with uncalm discussions.
    • Better communication between reviewers, mods, and leads.
    • Some people expect the team leads to make a decision in less than 7 days.
  • Name collisions
    • The theme uploader has been changed to not allow new themes from being uploaded if it detects more than 50 active installs using that same slug.
    • The limit can be changed later if necessary.
    • Only new themes uploaded after July 25, 2017 are affected.
  • Meta meetings
  • Mentoring

July Meeting Agenda

The Theme Review Team holds a monthly meeting with an agenda and we encourage all members to attend.

Channel: #themereview | Time: Tuesday at 17:00 UTC 17:00 UTC

Topics to discuss

Community Behaviour / Code of Conduct

Proposal: WordPress Community Conduct Project

Name collisions

Currently the WordPress.org Theme Updates API only uses the theme slug to check for updates. This can cause conflicts if a theme outside of WordPress.org repo has the same theme slug. The two main issues are:

  1. Name collisions are bad for end users if they update to different theme.
  2. The number of active installs have an affect on the position of theme on the popular page.

In the past we have decided not to police theme names other than “WordPress” and “Theme” which have been added as checks to the upload process.

The root cause for this issue is that the WordPress.org Themes API only checks the theme slug when checking for updates or tracking number of installs. The Core Ticket for this is #14179-core. The core track ticket has been opened a number of years ago and it is not going to be fixed unless we get buy in from the core and meta teams.

There are a few short term solutions that we can implement but they require support from the meta team. The meta ticket for this is #2114-meta. These solutions are

  • Change the algorithm of the popular page so that it is not so heavily dependant on number of installs.
  • Deduct the initial number of active installs from the current active installs. This does not help if two themes are gaining new users together.
  • When measuring the number of active installs compare the author field. The number of installs may be slightly off for themes that have been transferred from one author to another but these numbers should be minimal as they would be only users running older versions of the theme.

The solution that we can implement as of now is: If any theme name has any more than 500 active installs then that theme would need to be renamed.

  1. This would not retroactively apply to existing live themes. Removing the themes would affect the users which we do not want. The short term solutions will fix this for the existing themes.
  2. This wouldn’t apply in those cases where the theme author has had the theme released for a while and a quick Google search doesn’t pull up alternatives.

Monthly meeting with meta team

Currently there are 44 open meta tickets for the components “Theme Directory” and “Theme Review”

By having a monthly meeting we can track the progress of these tickets and define which ticket should be prioritized.

Discussions on improvements outside the meetings

There have been a number of discussions in the Slack #themereview channel which have lead to turning in circles. Unless there is a meeting these discussion will not go anywhere. If there is a topic to discuss please mention it for the next meeting.

The Theme Review process is not perfect. Here are a list of projects in addition to the meta tickets mentioned about that are known but have not had anyone to lead them.

The structure for solving the problems that we would like to try is

  • In the meetings we can discuss if it is this a problem that needs to be addressed (regardless of the team that addresses it)?
  • If yes then we collect proposals for addressing it.
  • The we decide which one of these proposals should we pursue?” and then commit to pursuing the winning proposal


@thinkupthemes has created a list on the mentor’s availability.


#14179-core, #2114-meta

Second call with Matt & Community Summit

Jose, Carolina and I had another call with Matt at the beginning of June to give an update and see what the next steps should be. We presented the summary that we had written about the goals going forward.

There were a things of that Matt mentioned

  • Using the one star reviews as a way to find possible issues with themes like PHP errors. Something like this page but with only one star reviews and specific to themes. This was to help with reporting issues #meta1598 & #709-meta
  • There should be only one team lead who makes decisions.
  • When we mentioned needing to check the licensing of themes, a solution that we were suggested was to add a checkbox to the upload page that the theme author accept that their themes are GPL compatible. This moves the responsibility to the Theme Author from WordPress.org. The meta ticket for this is #meta1513.
  • Matt would like to see in the future that theme authors can upload their themes via SVN. We talked about using git instead but this does not seem to be viable option for WordPress.org.
  • We discussed about improving the theme test data  and improved previews #meta30 and supporting multiple screenshots #meta969.

Before WordCamp Europe in Paris we had two days for the Community Summit. On the first day in Morning we had time to chat within our teams. The rest of the two day, we discussed the proposed topics in small groups with people joining in from different teams. The summary of these discussions will be published soon on https://make.wordpress.org/summit/.

We had a really good discussion with Mika and Otto from the Plugin review team where we compared our processes and they shared their plans for the future. At the moment the theme and plugin review process is different with each using different tools. Today any improvements that we make only affect on process. As plugin directory was recently revamped the plugin review workflow is being changed to work in the WordPress.org backend. Otto explained this the #themereview channel.

The discussions for the theme review team were between myself, @poena, @sakinshrestha and @ionutn.

Being a team lead is a lot of responsibility and the regular conflicts and long discussions are draining. The conclusion that we came to that the only way it was going to work with having a single team lead is that if they are supported by the theme mods. The theme lead should be able to delegate responsibilities and decision making. If a decision is needed from the team lead then it should be escalated through the theme mods.

The ideas on improving the team meetings have been already implemented.

We tried to come up with some short term goals while the plugin review workflow plugin is being completed and then can be activated for themes too.

Short term goals:

  • Looking at the theme upload process and see how we can improve the whole process. This could renaming the button “Upload Your Theme” to upload the theme and the text on the getting started page https://wordpress.org/themes/getting-started/ #meta1513
  • Working on Documentation:
    • “How to do a code review” project which @thinkupthemes is leading which is related to “Improving the requirements”. This will be a slow process where there will not be a drastic reduction of the requirements which @poena is leading.
    • “How to get started with projects” Some which are listed here.
  • Automation is still a focus point. There is a patch to add the new PHPCS checks to the upload process #meta2902

In the long term we are waiting for the new plugin review process which will replace Trac and automatically bring new features like support for readmes and multiple authors.

#meta1598, #meta2902