New Homepage is Launched

There’s been a lot of positive feedback regarding the new homepage development, and I’m excited to say it’s live! While this is only the first iteration, the plan is to continue design and development to create something truly amazing. This is the first step toward that goal. This project moved quickly in hopes to provide something beautiful for the holidays, and I’m proud of this beginning.

Thanks to everyone involved in this process: @rosso99, @sonjanyc, @hugobaeta, @brad2dabone, @matt, @otto42, and the many others who provided feedback!

Take a look and leave some feedback. Just visit the homepage to see the new changes!

#design, #homepage

New Homepage Redesign

Wow, this is happening fast! During the Contributor Day at WordCamp US, the Marketing Team sat down with a project in mind—the homepage of Being that the new design style is making an appearance in various places across the site, there was a desire to reboot the homepage as well. @rosso99, @sonjanyc, @hugobaeta, @brad2dabone, and @matt got together to begin creation.

Sketches were presented and thoughts shared.

Collaboration of sketches

Soon the idea took form and Matt expressed the need to get this project live. While much was resolved during Contributor Day, there was still more to go. The design was kicked of by @hugobaeta, and followed up by me (@mapk) and shared via Codepen Prototype.

Quick View of Homepage

Quick view of homepage

Homepage Mobile View

Some things to note:

  1. This is version 1 – we plan to iterate.
  2. The homepage screenshot section is a fixed background so the user sees many examples while scrolling.
  3. The map will show location pins of all WordCamps and Meetups worldwide.
  4. The quick view does not include the header and footer which will be present in the final implementation.

What are your thoughts?

Keeping in mind that this is only version 1 and we’re planning on launching and iterating quickly, please share your thoughts and feedback with us. We’re excited to see what you have to say.,

#design, #homepage

Meta Team in 2015

Just a week into 2016, it’s time to take a look at what the meta team did in 2015. As a reminder, here’s a version of this post from last year.

Sure, I could give you a long list of trac tickets, but instead here’s a general overview of the bigger things we accomplished:

  • Theme Directory: Launched an all-new theme directory, completely open source and powered by WordPress instead of bbPress 1.x. Lists are now sorted by active installs instead of downloads and you can “favorite” your favorite themes.
  • Plugin Directory: Crossed 1 billion cumulative downloads. Redesigned the plugin directory. Lists are now sorted by active installs instead of downloads.
  • Translate: Launched the ability to translate themes and plugins directly on, language packs for said themes and plugins, added a stats overview, and refreshed the GlotPress interface to improve usability.
  • Rosetta: Introduced internationalized theme and plugin directories for all locales, automated Rosetta deploys, and fixed a number of issues throughout the sites. On the forums side, we launched two new internationalized forums, powered by bbPress 2.x.
  • Version 1 of the JSON API was added to, which involved customizing it so only whitelisted data was exposed. Additionally, WordCamp Payments, WordCamp Site Cloner, and WordCamp Remote CSS were launched, to say nothing of the dozens of contributions reviewed and committed. Part of WordCamp Central received a refresh as well.
  • Trac: Mentions were added throughout all of the trac instances so you can -mention someone. Additionally, the entire design was refreshed, among other improvements.
  • Meta Environment: A number of sites were added to the WordPress Meta Environment including:,,,, and
  • Open Source: The changes in this list were mostly open source as the meta team is committed to open sourcing as much of as possible. In 2015, we also open sourced the Showcase theme and reviewed/committed numerous patches from contributors (see below).
  • Feature Plugins: Added the ability to sync feature plugins on GitHub with the plugin directory.
  • Slack: Worked on further integrations including /announce for team leads and better warning/error reporting for Translate and Meta services.
  • Devhub: Added user contributed notes to the developer reference, migrated hundreds of examples from the Codex, and added Used By and Uses section to show direct relationships.
  • Profiles: A number of teams received badges for the first time, including the core, polyglots, and training teams. Favorites was expanded to include themes and updated with plugin icons and new ratings data.
  • Centralized Logins: We started the process of centralizing logins on, which will lead to other improvements.

There’s a ton more that we did throughout the year. You can keep up with changes using the meta trac timeline.


The following 79 people‡ received 149 props over the course of 2015 to the meta repository and its related project: @adrian2k7, @akirk, @amylaneio, @ankit-k-gupta, @atimmer, @bandonrandon, @bansod_deven, @boonebgorges, @bordoni, @bowlhat, @brashrebel, @chaselivingston, @clorith, @coffee2code, @colorful-tones, @dd32, @deconf, @djpaul, @drewapicture, @dzver@empireoflight, @erikguimaraes, @folletto, @francescolaffi, @garyj, @helen, @hideokamoto, @hugobaeta, @iandunn, @isaackeyet, @jasonm4563, @jeffgolenski, @jeherve, @jeremyfelt, @joefletcher, @johnbillion, @johnjamesjacoby, @johnnypea, @kovshenin, @kraftbj, @liljimmi, @markoheijnen, @matheusfd @mcguive7, @mdawaffe, @melchoyce, @mercime, @mj12982, @morganestes, @nacin, @nao, @nataliemac, @nathanshubert, @nbachiyski, @netweb, @nickmomrik, @nvwd, @obenland, @obrienlab, @ocean90, @otto42, @pauldewouters, @pento, @pixolin, @rachelbaker, @ramiy, @rclilly, @ryelle, @sa3idho, @samuelsidler, @sergeybiryukov, @siobhan, @stephdau, @tfrommen, @tyxla, @valeriosouza, @yoavf, @zodiac1978, and @_dorsvenabili.

A HUGE thank you to all of the contributors above. I’d especially like to call out @sergeybiryukov and @ramiy, who both made large contributions (21 and 15 props, respectively) to the meta team last year.

As a basis for comparison, here’s a table of our stats in 2014 versus 2015.

2014 2015
Contributors 45 79
Props 113 149
Committers 14 18
Commits 875 1163

(The table above only includes props, committers, and commits for the meta repository, not related projects.)

‡ Note that this total includes contributors to the Meta Environment, Camptix, and Tagregator repositories.


Planning for the 2015 Summit

Hey everyone, the Summit is next week, and there are a few things we need to decide on before we get there.

Wednesday – Unconference Discussions

The first day is unconference-style conversations. We need to think about what topics we’d like to discuss, and post them to the forums.

There’s a few there already:

Those are mostly about vision and policy, though, rather than technical implementation. Are there things that are more specific to Meta that we could discussion on Wednesday? Ideas to improve our workflow and tools? Ways to get more contributors involved, and to make the process easier for them? Are there any projects that are stalled and could use a discussion to jumpstart them? etc. Please post your ideas to the forums and +1 the ones you think should be discussed.

Thursday – Work Day

The second day is for working on projects. We need to create an agenda so that we don’t waste time at the Summit, and also figure out what kind of space we’ll need at the venue.


We’ve got two large blocks of time to divide up and fill however we want: 9:15 am – 12:00 pm, and 1:30 pm – 4:40 pm.

What projects do you want to work on? How much time should be devoted to them?

I’m guessing not everyone will want/need to work on each project, so we can have multiple smaller groups working simultaneously if we want.


There’ll be lots of open space where teams will be working most of the time, but there are also a few small, private rooms that we can reserve slots for, if we think we’ll need them.

Does anyone think we’ll need a small private room? If so, for how many people and for how long?


CC’ing everyone who marked Meta on their Summit registration…

@drewapicture, @otto42, @nacin, @atimmer, @chriscct7, @dd32, @pento, @jenmylo, @joedolson, @johnjamesjacoby, @jorbin, @ryelle, @kovshenin, @obenland, @BrashRebel, @clorith, @markjaquith, @coffee2code, @stephdau@samuelsidler



Weekly i18n Chat Notes – July 21, 2015

At our weekly chat today, we talked about a few things:

  • Forums: The Italian forums were launched! It’s a bit rough around the edges, so there’s a bunch of work still left to do. If anyone is interested in contributing to our bbPress theme just let us know. The more help we can get, the faster we can get the forum theme in shape to launch it to other locales. (Big props to @ocean90 and @medariox!)
  • Translate: Tons of things going on and upcoming here.
    • Themes are being imported. Currently ~1100 out of a total of ~1900 themes. The rest should be imported by next week’s meeting.
    • As part of the import, we’re noticing that quite a few themes have a textdomain that is different than the theme’s slug. Language packs will not support that. Instead, we’ll contact theme authors and work with the theme review team to ensure this won’t happen again. (Also, @Otto42 is adding modifying theme-check so that it checks for this issue.) Some stats on that were shared in Slack, but note that they’re for all themes, not just active themes. The actual numbers will be different.
    • Meanwhile, we need to start considering how to sort and prioritize themes and plugins. This post has some ideas and the comments section is open for more. We should have a list to start on by next week’s meeting. There are some backend changes that @dd32 needs to work up first.
    • One method of prioritizing is favorites. @dd32 is working up changes to the theme directory (and elsewhere) so themes can be favorited. ❤️ We can use theme and plugin favorites to prioritize projects (per-user) on
    • @ocean90 is also testing plugin imports with a few select plugins to ensure the import script works well.
    • Additionally, the language pack script currently exists for plugins and will be modified for themes (thanks @ocean90!).

Most of our focus right now is on language packs and theme/plugin translations. Summarized, here’s the next steps:

  • Finish theme import
  • Enable theme directory syncing (every new/updated theme gets imported)
  • Implement some prioritization (including a side project: adding favorites to themes)
  • Modify the theme directory to support translated theme names/descriptions
  • Enable language packs for themes
  • Start importing top n plugins
  • Enable language packs for top n plugins

Of course, some of these will happen in parallel with others and there are numerous parts to each line item, but we’re making great progress. By next week, we’ll probably be able to cross off an item or two. 👏

#forums, #i18n, #l10n, #meeting-notes, #plugins, #rosetta, #themes

HTTPS on Update

Hey all, just a brief update on the status of HTTPS for sites.

We’ve enabled HTTPS on all WordCamp sites and rewrote the URLs, even though we’re not forcing it yet. The majority of the traffic will likely hit HTTPS from now on, and we should catch and fix all (or at least most) mixed content warnings before forcing it. Most of these are probably related to embeds from Flickr, Typekit and other third-party services.

So if while browsing any site you’ve stumbled upon a page with mixed content warnings, please leave a comment with the URL. You can identify these by the “broken” lock in your browser address bar, or the shield icon which prevents execution of unsafe JavaScript:

Screenshot 1430407541 2X


Update: We’re now forcing HTTPS on domains that support it.


Theme Directory Launch Checklist

Tomorrow we’re going live with the new Directory! We’ll start going through the checklist February 25th 2015 1700 UTC.

  • Disable uploads on bbpress themes. (@Otto42)
  • Disable themes.trac sync process. (@Otto42)
  • Migrate themes to WP.
  • Switch over Directory to not use API.
  • Test themesnew API.
  • Test themesnew downloads.
  • Switch over downloads and API scripts.
  • Switch over URLs and redirect.
  • Switch over review sync script.
  • Enable theme uploads in directory plugin.
  • Notify Admins the ban has been lifted.

Disable uploads on bbpress themes.
Replace the uploader page with an “uploads temporarily offline” message.

Disable themes.trac sync process.

  • Announce launch in WPTRT meeting.
  • Commit an early return to sync-theme-review-results.php.
  • Inform Admins directly: No setting themes live between February 25th 2015 1600 UTC and the new directory is live.
  • Channel notification in #themereview.

Migrate themes to WP.
Run migration script in /bin/themes/

Switch over Directory to not use API.

  • Commit
  • Test on /themesnew.

Test themesnew API.

  • Switch to use themesnew.php on sandbox.
  • Test /wp-admin/theme-install.php locally.

Test themesnew downloads.

  • Switch to use themesnew.php on sandbox.
  • Test downloads locally and on /themesnew.

Up until here, no real damage is done, marks the last chance to postpone the launch.

Switch over downloads and API scripts.
mv index.php old-api.php
mv themesnew.php index.php

Switch over URLs and redirect.

  • Commit /themes removal.
  • Notify @seanosh about making the switch.
  • Commit mu-plugins commercial change.
  • Test the hell out of /themes.

Switch over review sync script.
mv sync-theme-review-results.php sync-theme-review-results-old.php
mv sync-theme-review-results-themesnew.php sync-theme-review-results.php

Enable theme uploads in directory plugin.
Remove custom message and uncomment upload handler.

#theme-directory, #themes-api

Theme Directory Update 2/23

Last week I fixed most of the fixable tickets for the Theme Directory, switched to using WP_Query instead of the API for server-side rendering of themes, updated the WordPress-based Themes API with changes from the bbpress-based one, and finished the import script for the new directory. @otto42 committed the new reviews code today, so we should be able to get those integrated today or tomorrow.

Which means that we’re going to launch on Wednesday or Thursday!

There is still a lot more work to be done, but everything that’s remaining can be added, changed, or improved with the new directory active. Most importantly we want to make it available to language sites, so that we have an internationalized theme directory, and there will be more to be done around that.


Theme Directory Update 2/12

The two major parts of my week were fixing bug reports that came in after my post on make/themes, and getting started with adopting @melchoyce‘s modal design (Modal == modal + single). With the exception of reviews and support, I tried to stick as close as possible to the mockup. While I’m obviously not done yet, a first pass however is live (including some mobile styles).

@otto42 made progress on the rating integration, working on a solution that lets us use existing ratings/review with limited migration efforts. He projected to be done with that around Wednesday next week.

Next week I’ll be focussing on switching the server-side rendering of themes from using the API to using WP_Query directly. Towards the end of the week I’d also like to have ratings/reviews integrated and my work on the modal finished.


Theme Directory Update 2/5

A very busy week with lots of improvements! These are some previously mentioned TODOs that I was able to scratch off the list:

  • Rewrote the Theme API’s update endpoint to work with WordPress.
  • Made synchronizing theme review results a cron job.
  • Made sure uploaded theme files are always deleted, no matter the outcome.
  • Added navigational links to Upload and Commercial pages (r1211).

Additionally, I removed the Admin approval workflow form the Directory plugin, since this is handled entirely on Themes Trac.

I also opened the floor to bug reports from the community. After doing that at last week’s update here with limited success, I added another call for volunteers on make/themes which resulted in 15 tickets so far.

Next week I’ll be working though the tickets, as well as @melchoyce‘s Directory mockups, and @otto42 is still working on theme reviews/ratings.

#theme-directory, #themes-api