HTTPS on WordCamp.org Update

Hey all, just a brief update on the status of HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information. for WordCamp.org sites.

We’ve enabled HTTPS on all WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. 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 WordCamp.org site you’ve stumbled upon a page with mixed content warnings, please leave a comment with the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org. You can identify these by the “broken” lock in your browser address bar, or the shield icon which prevents execution of unsafe JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com:

Screenshot 1430407541 2X

Thanks!

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

#wordcamp-org

Weekly i18n Chat

As a reminder, we have a weekly i18n chat this coming April 21st, at 11:00 UTC, which is just over 11 hours from now.

Last week, we discussed a number of things, but mostly forums and Rosetta generally. There was no direct outcome last week, except that we will be setting up individual sites for each part of “Rosetta.” That is, the theme directory on de.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ (for example) will be its own WordPress site, while a local P2P2 P2 or O2 is the term people use to refer to the Make WordPress blog. It can be found at https://make.wordpress.org will be its own site.

We did go into depth on the forums a bit. The next steps there are:

  • Port bbPressbbPress Free, open source software built on top of WordPress for easily creating forums on sites. https://bbpress.org 1.x plugins to bbPress 2.x
  • Turn on bbPress 2.x site for a locale and test

The plugins (which are currently private) changed hands to bbPress developers shortly after last week’s chat.

#i18n, #l10n, #rosetta

Internationalizing it all

There are a number of internationalization projects going on towards localizing most of our web properties, along with providing localized assets for coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. users (localized plugins, etc).

I have and am working on providing a translation platform for all plugins (code and readmes), and the related internationalization of the plugins directory and APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways..

@nacin has done some work on being able to install plugins (and themes?) in the same locale as a WordPress install, when set.

I’ve read that @dd32 has been looking into translating the new themes directory (info in theme headers, from styles.css) and probably API.

@samuelsidler (who is away this week) and I would like to organize a general chat in #meta-i18n sometimes during the week of April 13th, so we can map out everything in front of us, and push on all of them together.

To be discussed: Rosetta, forums, theme directory, pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party. directory, themes, plugins, local P2s, GlotPress (soft and install).

Chat date/time suggestions: April 14th, at 2000 UTC (same time range as core chat, 1 day before).

cc @obenland, @ocean90

#chat, #i18n, #l10n, #rosetta

Theme Directory Stats

Since my last post

After I wrote my post mortem for the Theme Directory launch, the last three weeks were spent fixing bugs and adding in enhancements that were not deemed launch blockers.

On the admin side a custom post status for suspended themes was added, as well as a custom view for themes that have new version pending. Also, there is now a simpler way to approve new versions and set them live from wp-admin. On the front-end the JS and CSSCSS CSS is an acronym for cascading style sheets. This is what controls the design or look and feel of a site. files that power most of the Directory were merged, removing the direct THX dependency that we had (it broke parts of the directory during betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process.). Development on the Directory will not stop of course, but it will be part of ongoing maintenance and feature development.

Analytics Stats

At the beginning of the project there were no formulated stat goals. Personally, my goal was not to drop in stats too badly, in a way that would suggest a major flaw in the Directory’s new structure. I’m happy to say that with the exception of the Commercial Themes page, that is the case—we even saw a lot of nice improvements!

Let’s start with the negative. The Commercial Themes page saw a drop of ~40% in visitors between the old Directory and the new. That number was at 60% right after launch, but it recovered and continues to recover with some adjustments we made to the link placement on the site. We concluded that the image-heavy (instead of text-heavy) design is likely causing people to use the directory and not click on sub-links as frequently as they did with the previous design, and we’re satisfied with the preliminary result of our mitigation.

Since we were about to complete change the markup and technical makeup of the Directory, my biggest concern going into this project was to lose page-rank and experience a drop in overall visitors. Thankfully this is not the case, visitor numbers remain constant, as are the search engine referral numbers. Another KPI that remained constant were theme downloads, which also indicates that there were no bugs on the Themes APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. and download handler side on WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/. Given the level of optimization of the old Directory, I consider those numbers a success! It’s hard to improve a #1 page rank, but with added semantic markup and more structured data around themes it should definitely be solidified.

The most overwhelming result has been the huge jump in user engagement though. Users stay longer on the site, look at a lot more pages, and are way less likely to leave without any interaction. Comparing the week before the relaunch with this past week, session duration is up 9%. The amount of pages a user looks at is up 34%. And the overall bounce rate went down from ~30% to under 10%. Even on the homepage, where the bounce rate was at around 45%, we can see that drop by 2/3.

Overall this is a nice step in the right direction. I’m looking forward to further improved numbers down the road, and easier to achieve improvements after the move to WordPress.

#theme-directory

Segments in CampTix

One of the features we were asked to develop for CampTix (the WordCamp.org ticketing pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party.) is the ability to e-mail attendees based on custom segments using the Notify section in Tickets → Tools. This will allow organizers to get in touch with very specific groups of peoples, such as those who opted in for vegetarian lunch, or those who selected women’s XS t-shirt size.

CampTix Notify Segments Screenshot

The feature’s been pushed to the notify-segments branch in the GitGit Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance. Most modern plugin and theme development is being done with this version control system. https://git-scm.com/ repo. We would appreciate a few extra eyes on the new feature before we start rolling it out to WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. organizers. Any weirdness can be reported in #920-meta.

Thanks!

#wordcamp-org

New Theme Directory

The update to the WordPress Theme Directory from ten days ago marks the first time since its inception in 2008 that it has seen a major overhaul. The work on it is not done, but I want to take a few minutes and outline the objectives, what we gained from the update, and what still needs some work in the future.

The Goals

The WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ infrastructure is almost as old as WordPress itself, with lots of interdependencies, running a mix of GlotPress, an old version of bbPressbbPress Free, open source software built on top of WordPress for easily creating forums on sites. https://bbpress.org, BuddyPress, and WordPress. Since the Theme Directory was still based on bbPress, one the main goal was obviously to have it use WordPress. It was also in dire need of a design refresh and improvements to its search-ability.

The Gains

The Directory is now finally running on WordPress! It’s part of the WordPress.org multisiteMultisite Multisite is a WordPress feature which allows users to create a network of sites on a single WordPress installation. Available since WordPress version 3.0, Multisite is a continuation of WPMU or WordPress Multiuser project. WordPress MultiUser project was discontinued and its features were included into WordPress core. Advanced Administration Handbook -> Create A Network. network and reaping all the benefits that come with that. With the move to WordPress and the resulting data format change, the theme downloader was also rewritten, along with the info and update check endpoints of the Themes APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways., and the script that syncs theme review results. User profiles and theme ratings also saw a small update.

For the first time, the Directory is now open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. and the theme and plugin that do the heavy listing can be viewed, checked out, and contributed to on metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. tracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. and svn!

Front-end

The front-end is largely based on @matveb‘s work on THX and the theme installer, which results in a now consistent user experience between WordPress’ admin interface and the Directory. It also lets us take advantage of those super fast searches and front-end query caches that we have come accustomed to. The move also came with free improvements to the tag filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. (tag permalinks!) and introduced author “archives”. THX was built for the backend, so there were some adjustments needed to make all pages search engine accessible and to make URLs then also consistently work between the server and JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com side.

The pages from the left hand navigation were drastically simplified and merged, leaving us only with preamble page to the uploader, the uploader itself, and the page of commercial theme shops.

Commercial Theme Shops

Theme shops used to be a multidimensional array where each change meant a code change that had to be committed. They finally became a Custom Post TypeCustom Post Type WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept. of their own, vastly simplifying their administration. If you look at their page, you’ll also notice that it reuses the regular theme UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing., nicely making them blend in with the rest of the Directory.

Needs more work

We wanted to get the new Directory into the hands of users as fast as responsibly possible, but that doesn’t mean that it’s finished or doesn’t need any more work. On the admin side a custom post status for suspended themes will be added, as well as a custom view for themes that have new version pending. Eventually there will probably also be a simpler way to approve new versions and set them live from wp-admin. On the front-end the JS and CSSCSS CSS is an acronym for cascading style sheets. This is what controls the design or look and feel of a site. files that power most of the Directory will be merged, removing the direct THX dependency that we currently have (it already broke parts of the directory during betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process.), and also removing two file requests on a page load.

The #1 feature request for the Theme Directory is probably multi-author support. With the move, this is going to be infinitely easier to achieve and will also be available shortly. This should also make it possible to change authors on a theme without too much overhead.

Finally, the Directory is meant to also be made available to rosetta sites. The theme and pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party. are fully localized and already translated in a good amount of languages, it’s down to figuring out how we can integrate that site of the WordPress.org network with localized subdomains.

#theme-directory

I just posted a couple things to the…

I just posted a couple things to the Community team p2 that could benefit from getting feedback from developers in the community:

#customizing-themes, #jetpack-css-editor, #wordcamp-org

New Plugin Directory Theme

Late last week saw the launch of the reimplemented Theme Directory, complete with a new theme. This week brings with it another improvement to WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/: a new theme for the PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party. Directory.

Its new appearance should look very familiar; the goal with the theme refresh was to mirror the look and experience of the wp-admin plugin browser.

The site didn’t just get a facelift; the update includes a few new features not previously available in the directory:

  • Introduction of a “Favorites” section:
    If you are logged in and have favorited plugins, this new section gives you direct access to the list of those plugins. Previously, you could only see a simple listing of them on your profile page.
  • Introduction of a “BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. Testing” section:
    Previously only available in the wp-admin plugin browser on sites running a development copy of WordPress, this new section lists plugins proposed for inclusion in a future version of WordPress.
  • Ability to search for plugins by author:
    In the same fashion as in the wp-admin plugin browser, you can now search for plugins by author (by username).
  • Listings now display a count of active installs instead of downloads:
    Individual plugin pages have just (days ago) seen a switch from displaying the number of downloads to the number of active installs for the plugin. This information is now also shown on all plugin listings, such as search results.

The individual plugin pages themselves were not changed as the wp-admin plugin browser already largely mirrors their UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.. Also note that the effort didn’t include a rewrite or significant change in overall functionality other than what was outlined above. The backend reimplementation of the Plugin Directory will be undertaken at a later time.

As always, it you encounter a problem or have a suggestion, please submit them at meta.trac using the Plugin Directory component. Be sure to peruse the existing Plugin Directory tickets to avoid submitting a duplicate.

#plugin-directory

Major update to our version stats for PHP, MySQL, and WordPress

Today, the stats reflected on wordpress.org/about/stats changed, dramatically. I’d like to explain why.

First, so they’re documented here, the numbers:

WordPress versions

Version Before After
3.0 16.06% 2.27% −13.80%
3.1 1.21% 1.25% +0.04%
3.2 1.38% 1.35% −0.03%
3.3 4.11% 2.96% −1.15%
3.4 4.47% 3.24% −1.24%
3.5 14.60% 7.21% −7.38%
3.6 6.95% 3.72% −3.23%
3.7 4.34% 2.51% −1.83%
3.8 11.66% 8.61% −3.05%
3.9 13.20% 13.52% +0.31%
4.0 12.53% 17.40% +4.87%
4.1 9.48% 35.95% +26.47%

PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/index.php versions

Version Before After
5.2 31.76% 16.60% −15.15%
5.3 38.56% 38.45% −0.11%
5.4 25.01% 37.18% +12.17%
5.5 4.29% 6.52% +2.22%
5.6 0.39% 1.26% +0.87%

MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com versions

Version Before After
5.0 17.84% 9.31% −8.53%
5.1 25.24% 23.80% −1.45%
5.5 51.87% 59.35% +7.47%
5.6 4.99% 6.84% +1.85%
MariaDB 10.0 0.00% 0.68% +0.68%

What happened?

Dion Hulse (@dd32) has been working hard to modernize our stats collection and processing. This stats page, which is updated daily, has as of today been switched to this new data.

Thousands of new WordPress sites come online every day. Some others, though, stop pinging over time. The new data only reflects sites that have pinged api.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ within the last few months. There were also plenty of other inconsistencies in the data that we’ve been able to resolve, which has resulted in numbers we feel are more consistent and accurate.

There are three specific trends to note:

  • WordPress 4.1: More than 1/3 of sites are running the latest version, not less than 10% as previously determined. By excluding sites that are no longer online, you can imagine why this percentage would go up.
  • WordPress 3.0 finally looks more in line with what would be expected. This data has been an anomaly for years. (We’ve suggested before that this data was likely invalid — a byproduct of some spammers.)
  • PHP 5.2 is down to 16.6% of sites. We’re in far better shape for 5.2 than previously thought, though 5.3 hasn’t changed.

As Matt shared at WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. San Francisco in October, we’re engaging individual hosting companies to move sites to the latest versions of WordPress, with a secondary focus moving sites to PHP 5.4+. I also expanded on our reasoning and efforts during my php[world] keynote in November. One-sixth of all sites running PHP 5.2 is still many millions of sites. If we move the PHP minimum version too early, we risk stranding millions of installs on older versions of WordPress.

So, I wish to note that this does not change our calculations for keeping PHP 5.2 as the minimum for WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. — we had these numbers available to us when preparing our 2015 plans.

There are a lot of great things in this new data set. Hope you find it interesting!

Updated March 2: I shared some more info with WP Tavern here. In particular, I answered Is there anyway we can see PHP/MySQL versions broken down by what WordPress version they are running on?

We’re still working on ensuring the numbers are stable. They’re pretty predictable: older WP versions have more people on older PHP and MySQL versions. Newer WP versions have less.

PHP 5.2 is at about 16% for all installs right now. It’s at about 10% for installs running WordPress 4.1, but because 4.1 is such a large part of the pie (36%), it’s the WP version with the most PHP 5.2 installs.

Our goals remain the same: priority 1 is to update old WordPress installs, priority 2 is to update old PHP and MySQL. Only once the numbers drastically move as a result of our efforts would any minimum requirement change. We cannot risk abandoning so many users on older WordPress and PHP versions.

#stats

After a bit of a longer two day…

After a bit of a longer two-day rollout than planned, the new theme directory is now live and functional.

If you find bugs (and we’ve already found a few), then please report them on the meta.tracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. using the Theme Directory component to flag them up. But please, do make sure somebody else hasn’t beaten you to the ticket. Here’s the list of current tickets for the theme directory: Meta Trac

#theme-directory