Plugins, Themes, and Translate.WordPress.org

As mentioned a few times, we’re going to be enabling the translation of active plugins and themes in 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/ repositories on translate.wordpress.org. Today, we had a chat in #meta-i18n (logs) about how the non-technical side of this will work.

As a quick recap: We’re making good progress on the relevant pieces of Rosetta, GlotPress, and all the related scripts needed to import plugins and themes that are in the WordPress.org directories into translate.wordpress.org and make them available for translation. Every 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 and theme will then be able to take advantage of languages packs, meaning no more delay in language updates and smaller plugin downloads.

Here are a few of the points we discussed on how this process will work:

  • Eventually, all active themes and plugins in the WordPress.org directories will be imported into translate.wordpress.org and made available for translation. The “eventually” is important to note as we will be importing a few at a time to ensure GlotPress can scale accordingly. It’s also important to note that “active” is a theme or plugin that has been updated in the last year. Further, even plugins and themes that are not i18n-ready will be imported so that their descriptions can be translated.
  • Additionally, any plugins or themes that do not live in the WordPress.org directories will not be allowed on translate.wordpress.org. For example, commercial plugins.
  • During the initial import, we intend to import all strings – included translations – directly from the plugin’s svn repository on WordPress.org. We will not continuously import these strings, however. Ideally, after the initial import, a plugin would then delete the strings from the svn repository, making their download smaller and immediately taking advantage of the language packs generated by translate.wordpress.org.
  • For a language pack to be updated, the string must be updated in translate.wordpress.org.
  • The above point means that if a theme or plugin author uses a different site for translations, those translations must be brought over to translate.wordpress.org. If the theme or plugin has an active translation community, they can work with the polyglots team to bring translation editors over to the community. These translation editors can be limited to specific plugins, at the discretion of the locales translation editors. These translation editors can import strings for the plugin/theme, should they wish to continue using a different site for translations. (When we get closer to this, I’ll create a sample post that theme and plugin authors can use.)

That’s a lot to take in, so please let it digest. 🙂

One thing we also discussed was the possibility of enabling GlotPress installations to “talk to” each other, such that translate.wordpress.org could import strings from another GlotPress site (for example, translate.yoast.com), whether as a feature of GlotPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. or a plugin. Currently, this is an open question. We plan to discuss the technical questions of this possibility at next week’s #meta-i18n chat (Tuesday, July 14 2015 11:00 UTC). Note that we will not wait for this feature before continuing with our planned import.

A few other notes:

  • We discussed the possibility of adding a banner to the specific plugin/theme’s page on translate.wordpress.org pointing the external site where translations are active, should a plugin/theme not use translate.wordpress.org as the canonical source for their translations. Currently, I believe the answer is “no banner” but it’s a conversation we should have and re-evaluate over time.
  • Outside of that, it occurred to me after our chat that we will need to add translation editors to the relevant theme/plugin page. For example, if a translator editor only has permissions to approve translations for Hello Dolly, we should note that on the Hello Dolly page within translate.wordpress.org. Example: “Strings for [project name] are approved by the German translation editors [link], as well as username, username, and username.”

If you’re interested in any of this topic, we’d like to get some feedback on any/all of the above. Please leave your comments here, not in #meta-i18n, so others can see your feedback. We’re especially interested in feedback from plugin and theme authors who do not currently have translations and one’s who use an existing product for their translations.

#i18n, #meeting, #plugins, #themes, #translations

Weekly i18n Chat Notes – July 7, 2015

After a four week hiatus (!) we had our weekly i18n chat today. We’ll be continuing these chats every week on Tuesday 11:00 UTC 2015, just like before.

This week, we discussed the following:

  • Forums: While the bbPressbbPress Free, open source software built on top of WordPress for easily creating forums on sites. https://bbpress.org. 2 forums aren’t quite ready yet (literally no plugin has been ported to bbPress 2 yet), we’re going to move ahead anyway. @ocean90 is going to work on setting up forums for the Italians within the next week, but is running into permissions issues with bbPress.
  • Translate: @ocean90 implemented most of the @isaackeyet‘s design for translate.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/. With the new designs, there’s only a handful of technical things left before we can start adding additional plugins or themes:
    1. Finish design implementation: The big piece that’s left is adding the sub-project drop down in the top right box, which is needed to allow switching between sub-projects. Additionally, a green outline needs to be around the box if a project is at 100%, but this isn’t blocking anything.
    2. Paging. Without paging, the list of plugins will grow unwieldy. @dd32 is going to work on paging (which needs to be done here).
    3. Roles 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 Changes: The roles plugin won’t scale if we add hundreds (thousands!) of new projects. We need a 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. here – designers wanted! See #1101.
    4. Search: Not needed for an initial import of the top n plugins, but required for when we add all plugins. We’re putting this on hold for now as paging will suit our needs for the foreseeable future.

Beyond the technical list above, we need to talk about how plugins will be imported. Let’s chat this Friday July 10 13:00 UTC 2015 about importing plugins into translate.wordpress.org. If you’re interested in this topic, join us in #meta-i18n.

(As a reminder, all WordPress community meetings are listed on the meeting calendar.)

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