Component Page Updates for 4.4

Now that 4.4 is underway, let’s update the component pages to reflect 4.4 activity. The Customize, Editor, and Press This pages serve as good templates, though they all need 4.4 updates. The component pages are targeted at 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. testers. They should describe the component, list milestones (roadmap), and explain what needs testing and how to test it. Good component pages assist triage. For details, see the previous round of component page updates.

Also, if your component has a corresponding SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. chat, link to the component page from the chat’s channel topic. This assists using Slack in beta testing flows.

Component maintainers, here are your component pages…

Continue reading

#components, #maintainership

WordPress Core Weekly

Howdy! Sorry, I dropped the ball last week so this week’s Weekly Roundup is a double issue — it covers April 4, 2015 [32003] to April 18, 2015 [32140].

This week marks the release of RC1, which is the first release that many 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 authors and 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. testers will test heavily. If you don’t already, now is a good time to check out the Alpha/Beta forums for any issues that crop up during this testing cycle.

We’re only days away from the release of 4.2; let’s finish strong! 🏃👏 Here’s the rundown of recent changes:

TinyMCE

  • Update to 4.1.9+. Changes:
    • Fixed bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. where extra empty paragraphs would get deleted in WebKit/Blink due to recent Quriks fix.
    • Fixed bug where the editor wouldn’t work properly on IE 12 due to some required browser sniffing.
    • Fixed bug where formatting shortcut keys where interfering with Mac OS X screenshot keys. [32058] #31895
  • Disable the wp-autoresize plugin in iOSiOS The operating system used on iPhones and iPads.. All iframes there are already expanded to the height of the content document. [32095] #31937
  • Update the “Keyboard Shortcuts” modal. [32060] #29558
  • Fix our shortcuts on Mac, use Ctrl + Opt + letter. [32059] #29558
  • Use window.twemoji directly in the wpemoji plugin. Gives a chance to the browser to lazy load twemoji.js when reloading the page. [32142] #31901
  • Remove the empty paragraph that sometimes is left over after adding an image caption. [32141] #32003

wpView

  • Remove selected views when inserting content but not when loading all content, and remove the ref. to the selected view node on resetting the views. [32140] #31998
  • Resize sandbox iframes on load. [32056] #31480
  • Empty the content in the timeout, so it doesn’t render iframes twice. [32022] #31669

Build/Test Tools

  • During PHPUnit tests, don’t autodetect permalink structure during WP installation. [32139] #31994
  • Move the built media JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. files up a directory to their previous location and naming convention. [32125] #31912 (see [31373])
  • Don’t reference underscore.js source map. [32065] #31477

General/Misc.

  • WordPress 4.2-RC1 [32137] [32138]
  • Use 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. URLs for codex.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/. [32116] #27115
  • Explain all placeholders in translator comment, not just the first one. [32111] #31675
  • Ensure post title input is not shortened for non-public post types. [32071] #30968
  • Improve handling of incomplete From and Content-Type headers in wp_mail(). [32070] #30266
  • wpLink: always show the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org field at the top. [32017] #28206
  • Force default avatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. for HiDPI avatars on Discussion Settings. [32129] #31972

Translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. and Strings

  • Merge strings that describe the same command. [32078] #31776
  • Update placeholder for FTPFTP FTP is an acronym for File Transfer Protocol which is a way of moving computer files from one computer to another via the Internet. You can use software, known as a FTP client, to upload files to a server for a WordPress website. https://codex.wordpress.org/FTP_Clients. credentials. [32077] #31922
  • After [31941], use the decoupled strings from wp-admin/network/themes.php in wp-admin/network/site-themes.php as well. [32029] #28502
  • Correct grammar when referring to “a user” vs “an user” in several places. [32025] #31894

Administration

  • Fix flickering of the adminadmin (and super admin) menu on over-scrolling. [32089] #30900
  • Dashboard: Ensure images other than avatars (such as emoji replacements) in recent comments are not incorrectly positioned. [32076] #31919
  • Admin menu: fix colors for focus state and in IE8. [32075] #31345
  • Dismissible notices: more precise positioning across browsers. [32068] #31233
  • Reset padding for buttons in theme details modal. [32128] #31963
  • Revert [32099] per discussion in #core. [32100] #30900
  • Remove z-index from #adminmenuback. [32099] #30900
  • Don’t print the custom-background class in body_class() when a default color is in use. [32081] #28687
  • Toolbar: Search item consistency for focus state and IE8. [32074] #31322
  • Pointers: Make the dismiss icon a consistent size. [32069] #31915
  • Update more instances of default admin blues and grays. [32051] #31234

Emoji and Smilies

  • Tweak which smiley matches which emoji. [32105] [32107] #31709
  • Update our few remaining smilies to better align with Twemoji, and add frownie.png until Twemoji provides a build containing it. [32104] #31709
  • The emoji JS files should be run through the script_loader_src 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., as they would be if they were registered scripts. [32097] #31938
  • Tidy up the wp_encode_emoji() regex, and clarify the function comment on Unicode 8 support. [32096]
  • Remove an errant / in Twemoji URLs. [32024] #31893
  • Remove executable bit from smilies. [32109] #31709

Themes

  • Twenty Fourteen: update editor styles to better account for adaptive images in small screens. [32094] #31934
  • Twenty Fifteen: update editor styles to better account for adaptive images in small screens. [32090] #31934
  • Theme Compat: Make string translatable and add translator comments. Added in [31941]. [32084] #28502, #31921
  • Move initialization of $customizeSidebar to api.ThemesSection.initialize() to prevent cases where the result can be undefined. [32119] #31793
  • Translator comment should just reference placeholder numbers, not the actual placeholders. [32112] #31675
  • Tell developers how to correctly silence register_sidebar() notices. [32110] #31675

CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.

  • Refresh nonces when a session expires and the user logs in again. [32054] #31294
  • Widgets: Improve sync logic for select[multiple] inputs. [32012] #31885
  • Fix spinners after [31996]. [32008] #31884
  • Escape theme preview URLs. [32134] #31896
  • Headers: Improve handling of the initial headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. model.[32091] #31786, #31742

Theme Switcher

  • Fix some esoteric breakage in iOS Safari. [32103] #31794
  • Don’t deactivate section on empty search results. [32083] #31889
  • Remove “Add New” reference from customize-controls.js. [32004] #31837
  • Use text input for the search field to prevent double tap issues for Preview and Customize buttons on iOS. [32127] #31794
  • Don’t re-render a theme control if it has already been rendered.
  • Lazy load theme screenshots. [32088] #31793
  • Fix tabbing order if section is open. [32087] #31289
  • Fix preview URL for subfolder installs. [32086] #31896

Shiny Updates

  • Disable shiny updates from modal based on parent window [32082] #31739
  • Fix logic for details based shiny updates. [32080] #31739
  • Disable modal initiated shiny updates on wp-admin/update-core.php. [32067] #31739
  • Use dashes instead of dots as separator for jQuery events in shiny updates . is used for namespaces, so better to use dashes. [32063] #31819
  • Trigger events upon the completion of a shiny update. [32061] #31819
  • Remove Shiny Bulk Updates. Bulk updates don’t need to be ajaxified so let’s revert. [32053] #31770, #29820
  • Conditionally add AYS to leaving shiny updates. [32052] #31769
  • Enable users to initiate a shiny update from plugin detail modal. [32062] #31739

Media

  • Don’t allow whitespace-only image captions from the Media modal. [32079] #21848
  • Fix focus and selected state for the selected attachments set. [32072] #31898
  • Rename get_media_embedded_in_content_allowed filter tomedia_embedded_in_content_allowed_types. [32113] #26675
  • Bring back spinners, now without bouncing select elements. [32101] #22839, #30725
  • Fix the media modal Insert into post button on narrow screens by limiting the width of .media-toolbar-primary and .media-toolbar-secondary only inside .attachments-browser (the top toolbar). [32121] #31908
  • Insert from URL: Make sure the link text is actually used. [32055] #29476
  • Make sure the spinner in the media modal is visible on narrow screens (without affecting the media grid). [32120] #30725

Build Tools

  • Don’t override minified libraries included in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. [32066] #31477

Docs

  • Remove unnecessary inline @see tags from a variety of parameter and return descriptions in wp-includes/wp-db.php. [32050] #31888
  • Remove unnecessary inline @see tags from the wpdb::process_field_charsets()DocBlockdocblock (phpdoc, xref, inline docs). [32049] #31888
  • Add a missing return description for has_header_image(). [32048] #31888
  • Fix a variety of inline documentation syntactical issues in wp-includes/taxonomy.php. [32047] #31888
  • Add a missing @access tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) to the DocBlock for the WP_Meta_Query->$clauses property. Also adds a missing return description for WP_Meta_Query::get_clauses(). [32044] #31888
  • Add a variety of missing descriptions and fix syntax for wp_scripts(),_wp_scripts_maybe_doing_it_wrong(), and wp_script_add_data(). [32040] #31888
  • Remove an unnecessary inline @see tag and document the $wpdb global in two WP_Comment_Query methods. [32038] #31888
  • Add missing parameter and return descriptions to WP_Customize_Widgets->filter_customize_dynamic_setting_args(). [32036] #31888
  • Add parameter and return descriptions for WP_Customize_Widgets->get_setting_type(). [32035] #31888
  • Add missing @access tags to two DocBlocks in WP_Customize_Setting. [32034] #31888
  • Document the $theme property in WP_Customize_Themes_Section. Also adds a missing@access tag to the DocBlock for WP_Customize_Themes_Section->render(). [32033] #31888
  • Cleanup DocBlock syntax, add a missing parameter description for WP_Customize_Manager->set_post_value(). [32031] #31888
  • Add inline doc syntax fixes for WP_Customize_Manager->doing_ajax(). Also adds a return description. [32030] #31888
  • Add documentation for the $type and $theme properties in WP_Customize_Theme_Control. Also add some missing @access tags to various DocBlocks. [32028] #31888
  • Fix description alignment for the category_css_class filter docs. [32026] #31888
  • Add documentation for the $type, $mime_type, and $button_labels properties in WP_Customize_Media_Control. [32023] #31888
  • Clarify the DocBlock summary and parameter description forwp_edit_attachments_query_vars(). [32019] #31888
  • Add proper descriptions for the @global and @param tags in the wp_media_attach_action() DocBlock. [32018] #31888
  • Clarify the DocBlock description for wp_print_request_filesystem_credentials_modal(). [32016] #31888
  • Clarify 4.2.0 changelog entry, add global description to the DocBlock for WP_Users_List_Table->single_row(). [32015] #31888
  • Add missing @since versions from a variety of methods in WP_Press_This. [32014] #31888
  • Add missing DocBlocks for the _limit_array(), _limit_string(), _limit_url(),_limit_img(), _limit_embed(), and _process_meta_entry() utility methods in WP_Press_This. [32013] #31888
  • Add a return description to the DocBlock for WP_Posts_List_Table->is_base_request(). [32009] #31888
  • Add an @see mention for Plugin_Upgrader, plus spacing to the wp_ajax_update_plugin()delcaration. [32006] #31888
  • Add a more descriptive function summary for options_discussion_add_js(). [32005] #31888
  • Fix Docblock syntax for the taxonomy_parent_dropdown_args filter. [32003] #31888
  • Add a missing return description for wp_styles(). [32041] #31888
  • wp_install_maybe_enable_pretty_permalinks() should have a consistent @return value. [32027] #6481, #31888

Help/About

  • All strings are available for translation. [32132] [32135] [32136] #31929
  • Change the subhead strings on credits.php and freedoms.php to match about.php.
  • Link the Emoji Codex article in the emoji blurb.
  • Add a second sentence to the 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/. AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) blurb.
  • Switch positions for the JavaScript Accessibility and Complex Query Ordering sections for balance. [32131] #31929
  • Update about page for 4.2. [32118] [32123] [32130] #31929

Upgrade/Install

  • Move wp-plugin-update-success event to after lock is released [32133] #31978, #31819
  • Use named function instead of anonymous function, making it testable and replaceable. [32126] #31964
  • When dbDelta() is checking whether an index is defined in a CREATE TABLE statement, don’t worry if 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/. has a subpart defined on an index, but the CREATE TABLE doesn’t. [32108] #31869

Script Loader

Press This

  • Do not show the bookmarklet upgrade notice when accessing directly press-this.php. [32122] #31968
  • Add mb_strlen() compatibility function. Works the same way as the existing mb_substr() compatibility function. [32114] #31951
  • Check the bookmarklet version and add the update notice from PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20. [32106] #31942
  • Add ARIA attributes to the alerts container. [32102] #31942
  • Fix focusing the Standard Editor link after saving draft, if the user has not focused another element. [32098] #31923
  • Change the link text to Standard Editor. [32093] #31923
  • When saving a draft change the text of the Save Draft button to “Saving…” [32092] #31923
  • Update documentation for press_this_save_redirect filter after [31992]. [32143] #31996

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • wp_update_term() should check if get_term() returned null. [32117] #31954
  • Avoid an unexpected object error when syncing global terms. Pass the expected single value, rather than object, when recursively calling global_terms(). [32064] #31914, #31149

Editor

Thanks to @adamsilverstein, @afercia, @awbauer, @azaozz, @boonebgorges, @DavidAnderson, @dimadin, @dlh, @DrewAPicture, @ericlewis, @hauvong, @helen, @hugobaeta, @iseulde, @jamescollins, @jeremyfelt, @joemcgill, @joen, @johnbillion, @jorbin, @kraftbj, @lancewillett, @markjaquith, @mattheu, @Michael-Arestad, @mindrun, @morganestes, @nacin, @nitkr, @obenland, @ocean90, @pavelevap, @pento, @peterwilsoncc, @samuelsidler, @SergeyBiryukov, @siobhan, @sirbrillig, @slobodanmanic, @swissspidy, @tmatsuur, @Tmeiste, @tyxla, @valendesigns, @westonruter, and @wonderboymusic for their contributions!

#4-2, #week-in-core

WordPress Core Weekly

Hi Everyone!

It’s time for another run-down of what’s going on in WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., directly from 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. London. This edition covers March 13, 2015 [31765] through March 20, 2015 [31844].

If you want to write the next WordPress Core Weekly summary, check out the schedule over at make/docs and get in touch in the #core-weekly-update Slack channel.

This week’s highlight is definitely WordPress 4.2 Beta 2, which was released on Thursday. Make sure to check it out!

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Use bold Arial for RTL headings. [31843] #30807
  • Make dates in multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site site and user list tables translatable. [31833] #22302

Bundled Themes

  • After [31453], replace `current()` with `reset()`, which is guaranteed to be the first item. [31842] #31259, #31260
  • Replace array_shift() with reset() where appropriate for performance. [31829] [31841] #31259, #15459
  • Add documentation for new onResizeARIA function. [31814] #31527
  • Twenty Fourteen: add ARIA attributes to search toggle. See #31527. [31794] #31527
  • Twenty Thirteen: add ARIA attributes to menu toggle. See #31527. [31785] #31527
  • Twenty Fourteen: add ARIA attributes to menu toggle. See #31527. [31784] #31527
  • Use SSLSSL Secure Sockets Layer. Provides a secure means of sending data over the internet. Used for authenticated and private actions. for theme and author URIs. [31839] #31699, #27115
  • Add trailing slashes to theme URIs to avoid a redirect. [31840] #31839

Canonical

  • If the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org being visited has non-breaking spaces at the end of it, they were probably inserted by an errant URL copy/paste. Instead of showing a 404 for no obvious reason, let’s just trim them. [31838] #31499

Press This

  • Check if the URL is to embeddable content on a site that supports oEmbed. Then insert only the URL in the editor. It will trigger a wpView with the embedded content. [31827] #31637
  • Prepend the site domain to root-relative URLs. Reject other relative URLs. [31818] #31645
  • Ignore site descriptions that end with an ellipsis. These are most likely auto-generated. [31810] #31639
  • Change the Publish button text to Submit for Review for contributors (like on the Edit Post screen). [31798] #31658
  • Increase the number of 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. tags we check in the bookmarklet to 200. Sometimes there are empty meta tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) nodes (no attributes) in some browsers. [31778] #31373
  • Simplify and restyle the categories drop-down, remove the checkboxes and use JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. to get the selected categories on submitting the form. [31765] #31443

Plugins

Embeds

  • Revert stripping of tags from pasted URLs on beforeSetContent [31817] and [31819]. Clean up URLs on `pastePreProcess`. [31832] #31158
  • Small cleanup for stripping of tags from pasted URLs. See #31158. [31819] #31158
  • Strip tags from pasted URLs before testing if they are embeddable. [31817] #31158

Upgrade/Install

  • Ensure that we target the correct 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 row for update updates [31831] #31621
  • Request FTPFTP FTP is an acronym for File Transfer Protocol which is a way of moving computer files from one computer to another via the Internet. You can use software, known as a FTP client, to upload files to a server for a WordPress website. https://codex.wordpress.org/FTP_Clients. and SSHSSH Secure SHell - a protocol for securely connecting to a remote system in addition to or in place of a password. credentials when needed during shiny updates [31811] #31528

General

  • WordPress 4.2-beta2 [31835]
  • Remove duplicate label on Add New User screen. [31777] #31131
  • Don’t try to call wp_clean_plugins_cache(); twice in wp_clean_update_cache(). [31825] #31503
  • List tables: Go back to inserting quick edit rows after, as some plugins rely on that assumption. Results are the same. [31820] #26060

Emoji

  • Move a comment to match the restructure in [31779], and add an extra comment explaining how emoji rendering support is detected. [31788] #31242
  • Fix few typos. See #31242. [31787] #31242
  • Add the styling for the replacement images to the adminadmin (and super admin) CSSCSS Cascading Style Sheets. and revert to using .emoji as replacement image class. [31786] #31242
  • Smilies: The new smilies added in [31733] and [31745] are larger than the old smilies. By adding a little bit of inline style to them, we get pleasingly sized smilies everywhere. 🙂 [31781] #31242
  • Yet another update for Twemoji, to 1.3.2. See #31242. [31773] #31242
  • TinyMCE emoji: fix highlighting of selected replacement images in Chrome. [31822] #31628

Posts, Post Types

  • Add WP_Posts_List_Table::is_base_request() to determine if the current “view” is the “All” (default) view. [31828] #24869

Widgets

Toolbar

  • Protect against Firefox font rendering interference by themes. [31824] #30021

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • Edit Terms: Show error messages actually as error messages. [31823] #31241
  • Ensure that the $exclusions parameter of list_terms_exclusions 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. is always a string. [31813] #31681

Comments

  • Move HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. tags for screen reader text into translatable strings. [31821] #26553
  • Improve method consistency in WP_Comment_Query. These changes bring WP_Comment_Query syntax closer to that of WP_Query. [31793] #24826
  • Restore line breaks before comment text in comment notification emails. [31770] #31508

Filesystem 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.

  • Change WP_Filesystem_FTPext::exists() and WP_Filesystem_ftpsockets::exists() to return true for empty directories. [31815] #30815

Build/Test Tools

Formatting,Taxonomy

  • In wp_insert_term(), allow a term with an existing name if a unique $slug has been provided. [31792] #17689 #31328

Database

  • HHVM doesn’t support passing a DB link to mysqli_get_client_version(). While we usually pass a DB link to every ext/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/. and mysqli function call, we don’t really need to do that here, as there’s no way for the client library to change mid page load.[31783] #31644

Thanks to @abhishekfdd, @afercia, @azaozz, @boonebgorges, @cbaldelomar, @cfinke, @danielbachhuber, @DrewAPicture, @ericlewi, @ericlewis, @fhwebcs, @helen, @imath, @iseulde, @jeremyfelt, @jorbi, @jorbin, @kraftbj, @lancewillett, @mercime, @Michael-Arestad, @mordauk, @morganestes, @obenland, @ocean90, @pavelevap, @pento, @rahulbhangale, @SergeyBiryukov, @siobhan, @stephdau, @swissspidy, @TobiasBg, @valendesigns, @westonruter, and @wonderboymusic for their contributions!

#4-2, #week-in-core

WordPress Core Weekly

Hi Everyone!

It’s time for another run-down of what’s going on in WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. This edition covers February 3rd, 2015 [31332] through February 11th, 2015 [31410].

Quick info: If you’re interested in helping out with these updates, comment below, or pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” @mike on SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.! There’s a dedicated #core-weekly-update channel and you can even use a super cool script to parse the logs.

Without further ado:

CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.

  • Improve the Customize experience on mobile. [31384] #28784
  • Introduce an 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. to create WP_Customize_Settings for dynamically-created settings. [31370] #30936

Updates

  • Replace $.post() calls with wp.ajax.post(), and clean up a bunch of the now unnecessary code. [31409] #29820
  • Use a positive wording for translations update notice. [31368] #28199
  • If the current user is not allowed to install/update plugins, we should return a JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. error, so it can be used by the JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. handlers. [31335] #29820
  • Add capability checks to the ajax callbacks, to ensure the current user is allowed to install/update plugins. [31334] #29820
  • Add ajax-y updates to 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 list page, and ajax-y updates and installs to the plugin card page. [31333] #29820
  • Updates: Display plugin update rows even for plugins which are not hosted by 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/ or the HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. request times out on. [31382] #29583, #30767

Embeds

  • oEmbed discovery fails on XHTML head links, adjust the regex to not match /. [31407] #31212

Media

  • Use Math.round() instead of Math.floor() when determining page of attachments to query in wp.media.model.Query.sync. [31406] #31116
  • After [31386], this needs to happen in audio-video.manifest.js. [31387] #31058
  • Avoid an IE8 JS error when removing a MediaElement player. [31386] #31058
  • Make sure that media/views.js doesn’t load Models that already exist in media/models.js. [31379] #28510
  • Split the media JS files into modules using browserify [31373] [31380] [31393] [31405] #28510

General

  • Replace generic “Dear user” greeting in email notifications with a more personalized one. [31403] #31217
  • Update body class when switching between adminadmin (and super admin) color schemes. [31400] #30488
  • Avoid inadvertent stomping of the original $args parameter passed to plugins_api_result and themes_api_result filters in plugins_api() andthemes_api(), respectively. [31363] #29079

Comments

  • Switch to a string placeholder, as number_format_i18n() returns a string. [31402] #26553
  • Use _n() in comments_popup_link() when setting the default string to display if there are more than one comment. [31401] #26553
  • Use screen reader text instead of a title attribute in comments_popup_link. [31388] #26553

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • Don’t parse empty tax_input keys in edit_post(). [31392] #30615
  • Remove unnecessary array_shift() usage in get_terms() for better performance. [31365] #31182
  • Parse non-hierarchical tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) input into term IDs before sending to wp_insert_post(). [31359] #30615
  • Update the DocBlockdocblock (phpdoc, xref, inline docs) for wp_dropdown_categories() to reflect that the entire $args parameter array is optional instead of individual arguments. [31357] #30306
  • Use field-specific sanitization in WP_Tax_Query::transform_query(). [31346] #27810

Database

  • WPDB: If a site is using the utf8 charset, and their version of 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/. supports utf8mb4, auto-upgrade them to utf8mb4. [31349] [31351] [31354] [31358] [31391] #21212
  • WPDB: The mysqli_query() call in wpdb::set_charset() had the parameters the wrong way around. [31374]

Users

  • Add orderby=meta_value_num support to WP_User_Query. [31369] #27887
  • Remove leading space from the definition of a global cache group. This only applied in a rare situation during the switch_to_blog() process where no global groups were currently defined. [31348] #31243
  • Add useremail and userslugs as global cache groups. [31347] #31243

Editor

  • Editor: prevent errors in editor-expand when the Text editor is not used. [31361] #31163
  • Fix displaying long tag names in the Tags postbox. [31332] #18946
  • MCE views: Always refresh the view after updating a gallery. This allows things like caption changes to be synced, as they are tied to the attachment and not the shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site.. [31343] #31239
  • TinyMCE: ensure the image toolbar stays visible when the image is much wider than the editor. [31362] #20696

Build/Test Tools

  • Update Travis-ci Slack notification token [31352] #30755
  • Temporarily (I hope) remove PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 5.2 from tests being run on Travis-ci. Travis-ci has disabled PHP 5.2. This has happened before when 5.2 didn’t compile and then was restored when that was fixed. #31244

Posts & Pages

  • Introduce 'value_field' parameter to wp_dropdown_pages(). This parameter allows developers to choose the post field that will be used to fill in the ‘option’ attribute of the generated dropdown markup. [31338] #30306, #12494
  • Always pass back the custom classes get_post_class() was called with, even if the post was not found. [31408] #22271

Thanks to @adamsilverstein, @afercia, @ArminBraun, @azaozz, @boonebgorges, @bswatson, @Bueltge, @celloexpressions, @ChriCo, @Corphi, @cweiske, @dd32, @dlh, @DrewAPictur, @DrewAPicture, @ericlewis, @F J Kaiser, @Funkatronic, @genkisan, @helen, @hissy, @ipm-frommen, @Ipstenu, @iseulde, @jfarthing84, @joedolso, @johnbillion, @jorbin, @lgladdy, @lgladdy for the initial patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing., @nacin, @netweb, @obenland, @ocean90, @pento, @SergeyBiryukov, @siobhan, @tyxla, @valendesigns, @Veritaserum, @VolodymyrC, @vortfu, @westonruter, and @wonderboymusic for their contributions!

#4-2, #week-in-core

Dev Chat Summary, December 10th

https://wordpress.slack.com/archives/core/p1418245350000526

https://make.wordpress.org/core/2014/12/10/release-candidate-and-todays-dev-meeting-agenda/

Misses

  • RC

Decisions

  • About page text will land tonight (Wednesday the 10th).
  • Moving 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. docs into 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 and theme handbooks will be discussed at the next docs meeting.
  • A heads up email to plugin devs will go out after RC.
  • RC will go out tonight.
  • @nacin will alert hosts and one-click installers in advance release.
  • 4.1 final targeted for Tuesday.
  • Release dry-run on Monday.
  • Status check-in meeting on Sunday.

Assignments

  • @stephdau and @nacin will enable localized results for plugins after RC.
  • @nacin will work on the plugin developer email.
  • @melchoyce @ryelle @helen @jorbin will work on the about page. First draft design due by Friday.
  • @nacin @markjaquith will make the final decision on Focus, Distraction Free Writing naming, branding, text.
  • @nacin will alert hosts and one-click installers in advance of release.

Links Mentioned

https://wordpress.org/support/forum/alphabeta
https://core.trac.wordpress.org/ticket/30337
https://wordpress.org/about/roadmap/
https://core.trac.wordpress.org/query?status=!closed&version=trunk&order=modified
https://core.trac.wordpress.org/query?status=!closed&version=trunk&order=modified&milestone=Awaiting+Review&group=type

Continue reading

Dev Chat Summary, November 26th

https://wordpress.slack.com/archives/core/p1417035664004117

https://make.wordpress.org/core/2014/11/26/agenda-for-november-26th-dev-chat/

Misses

  • 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. 3

Hits

  • Beta 2 (soft-released)

Decisions

  • Term splitting will be pulled from 4.1 and considered for inclusion at the beginning of the 4.2 cycle.
  • Focus will default to off.
  • The particulars of Focus UXUX User experience will be documented.
  • RC1 will be Monday the 1st.
  • The final beta will be on the 27th or 28th.
  • Focus will roll out to wordpress.comWordPress.com An online implementation of WordPress code that lets you immediately access a new WordPress environment to publish your content. WordPress.com is a private company owned by Automattic that hosts the largest multisite in the world. This is arguably the best place to start blogging if you have never touched WordPress before. https://wordpress.com/ for testing.
  • String freeze on Wednesday December 3rd.
  • The about page will get attention this weekend in preparation for string freeze.

Assignments

  • @mboynes and @boone will work on a term splitting migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. guide for 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 authors.
  • @markjaquith and @janneke will document Focus UX.
  • @stephdau and @dd32 will roll Focus out to wordpress.com.
  • @markjaquith @nacin @kimparsell @helen and others will work on the about page.

Links Mentioned

https://make.wordpress.org/core/2014/11/26/agenda-for-november-26th-dev-chat/
https://core.trac.wordpress.org/ticket/30335
https://core.trac.wordpress.org/ticket/30337
https://core.trac.wordpress.org/ticket/30445
https://core.trac.wordpress.org/query?status=!closed&component=!Build%2FTest+Tools&milestone=4.1
https://core.trac.wordpress.org/ticket/30435
https://core.trac.wordpress.org/ticket/30517
https://core.trac.wordpress.org/browser/trunk/src/wp-admin/edit-form-advanced.php#L23
https://core.trac.wordpress.org/attachment/ticket/30450/30450.patch

Continue reading

Last Week in WordPress Core

Hello there! This is Last Week in WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. for the week of April 8-April 14. Similar to last week, commits are included up to RC2, which was released today. In addition, maintenance releases 3.8.3 and 3.7.3 are available, and automatic updates are rolling out.

CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.

  • Widgets: Properly handle widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. settings when activating a previewed theme. [28124] #27767
  • Widgets: Account for a sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. with no container to which classes can be added. [28100] #27780
  • Custom Headers: Fix image ordering. [28102] #27791
  • Custom Headers: Fix cropping when working with large images. [28101] #27790
  • Add color scheme support for widget choosers. [28122] #27793

Theme Installer

  • Improve route handling and make ?theme= work. [28123] #27708
  • Revert to proxying through PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 for 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/ 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. requests to ensure we have valid installation nonces. [28126] #27798

TinyMCE

  • Update TinyMCE to 4.0.21.1. [28066] #27744
  • Update TinyMCE paste 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 to the latest development version. Improves Pasting from Word to remove inline comments and change tracking. [28089] #27771
  • Ensure vertical resizing and menubar show/hide are set to default for each TinyMCE instance. [28059] #27724
  • Stabilize MediaElement within TinyMCE, and avoid adding undo steps when the body of a wpView changes. [28084] #27389
  • Improve fallback compatibility for wpViews with IE7 and 8. [28062] [28063] #27546

Media

  • In the Image Details modal, remember the last state of the advanced toggle. [28125] #27366
  • Add hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. for wpeditimage TinyMCE plugin and Image Details modal. Includes wp.media.events, which is intended to be a global media event bus. [28095] #27698
  • Apply new add_image_size() cropping preferences to all sizes when image is saved in editor. [28072] #19393
  • Fix tabbing out of the title field on Media->Edit Media screen. [28069] [28070] #27750

Internals

  • Updates: Add a TTL to core update checks to allow us to narrow the 12-hour update window. [28129] #27772
  • User Query: Don’t blindly re-append new 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. queries for capabilities. [28087] #21119
  • Avoid stomping of bulk postdata inside the bulk_edit_posts() loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop.. Reverts [27990], which did not fix it for authors and comment/pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” status. [28113] #27792
  • RTL fixes for Login screen ([28096] #27784), Themes screen ([28104] #27779), TinyMCE ([28094] #27773), and feature pointers ([28107] #27778).

Externals

For the complete list of commits to trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision., check out the log on Trac. Release is scheduled for this Wednesday, so, the best way to help is to test! Please let us know if you run into problems in the Alpha/Beta forums or on trac.

Thanks to @azaozz, @dd32, @DrewAPicture, @ehg, @GaryJ, @gcorne, @helen, @jesin, @johnbillion, @kerikae, @kpdesign, @mattheu, @matveb, @melchoyce, @morganestes, @nacin, @ocean90, @Otto42, @pavelevap, @redsweater, @ryelle, @scottlee, @SergeyBiryukov, @siobhan, @westonruter, @wonderboymusic, and @yoavf for their help this week!

#3-9, #week-in-core

Last Week in WordPress Core

Howdy everyone! This is Last Week in WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. for the week of March 31-April 7. I’m including all of the commits up to RC1 this week, which was released yesterday. Things are looking good, with very few remaining tickets open.

3.8.2 and 3.7.2 were also released with security fixes, and automatic updates are rolling out.

Developers, please test with your plugins and themes and let us know if you find issues.

TinyMCE: As a quick note, since I’ve seen this brought up in the forums — in this release, TinyMCE no longer uses wpdialogs. This means it now needs to be enqueued by any 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 that wants to use it. As of [28024], there is a clarified warning that will appear in the 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/. console if you attempt to use it, and it’s not enqueued.

IE8 & wpview: Due to IE7/8 compat being necessary in TinyMCE (to resolve caret issues), IE8 and wpview are not currently the best of friends. Post RC1, fixes landed for #27546 that make wpviews degrade more gracefully.

Media:

  • Playlists: Make elements in playlists responsive and fix playlist advancement on mobile. [27894] [27895] #27625
  • Playlists: Set preload='none' for the empty <audio|video> tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.). [27974] #26779
  • Playlists: Make tracks keyboard-accessible. [28023] #27644
  • A/V Shortcodes: Remove support for a caption in audio and video shortcodes. This was part of a UXUX User experience iteration for the related MCE views, but these captions have since been excluded. See [27640]. [27979] #27320
  • Edit Image Modal: Make the calculation of the aspect ratio more robust. [27942] [27948] #27366
  • Do not show featured images for image attachments; remove post_supports_thumbnails() and theme_supports_thumbnails() for now. [28051] #27673

HTML5 Galleries:

  • Remove <br> elements for HTML5 galleries; see #26697. [27914] #27637
  • Twenty Thirteen and Fourteen: Update styles to support the new HTML5 line-break-less galleries. [27926] #27637

Adminadmin (and super admin):

  • CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings. HeaderHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. Images: Better handle cropping failures; improve accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) and styles. [27970] #27598; [27946] [27947] [27971] #21785
  • Customizer Header Images: Add suggested dimensions. [28030] [28031] [28039] #21785
  • Edit Post|Page: When autosaving a new post for the first time after a title was typed, cancel the autosave if the user is submitting the form. [27951] #27657

Theme Installer:

  • Hide “Add New” with no-JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.. [27936] #27055
  • Use JSONP for 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/ requests. [27961] #27639
  • Fix sorting and counts. Add prev/next to previews and improve keyboard navigation. [27937] #27055; [28033] [28036] [28049] #27521
  • Handle currently installed themes, add search route, let prev/next refresh collections. [28025] [28038] #27695
  • Improve More Filters section and handling when there are no themes found. [27896] [28035] [28037] #27055

Widgets

  • Trigger jQuery events for widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. updates. widget-added when a widget is added to a sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. and widget-updated/widget-synced for widget soft/hard updates. [27909] [27969] #19675; #27491
  • In WP_Widget, introduce is_preview() method to allow widgets to check to see if they’re currently being previewed via the customizer. [27966] #27538
  • Widget Customizer: Improve compatibility with plugin custom scripts and styles for widgets. [27907] #27619
  • Widget Customizer: Rename inject_preview_css to print_preview_css. [27968] #27534
  • Widget Customizer: Use postMessage to highlight widgets in preview or sections/controls in Customizer. [27892] [27893] #27622
  • Widget Customizer: Refactor and clean up WidgetCustomizer as wp.customize.Widgets, and make available widgets panel a Backbone view. [27985] [27986] [27988] [27995] [28034] #27690

TinyMCE

  • Update TinyMCE to 4.0.21. [27897] #24067
  • Image Details Modal Improve look-and-feel, and add a Custom Size option to the size drop-down that reveals fields for soft-resizing the inserted image. [27918] #27366
  • Image Details Modal: Move all advanced options under a single toggle, bring back the field for CSSCSS Cascading Style Sheets. Class, and optimize CSS for responsive layout. [27898] #27366
  • Drag and Drop Uploading: Add new argument to wp_editor() to enable. [27901] #27465
  • Gallery Views: Avoid JS errors when image attachments lack metadata. [28008] #27691
  • Return to loading /langs/[locale].js and /langs/[locale]_dlg.js from PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 to prevent errors with missing translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. files when requireLangPack() is used without its second argument. Back to using ISO 639-1 (two letter) locales. #24067; [27922] #27610
  • Clarify error when wpdialogs is not enqueued. Add wp_enqueue_editor action fired when scripts and styles for the editor are being enqueued. [28024] #16284
  • Update translatable strings. [27927] #27453, #24067
  • Tighten up toolbar and tab styles. [27978] [27983] #27279
  • Expose toolbar keyboard shortcut in Help documentation for TinyMCE, and clean up TinyMCE help dialog, removing duplicated text and leaving only Keyboard Shortcuts. [28029] #27024; [28032] #27100

Database:

  • Fall back from ext/mysqli to ext/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/. if the connection fails. This allows us to avoid breaking a site that works under ext/mysql but is misconfigured for ext/mysqli. [27935] #21663
  • Add $allow_bail argument to wpdb::check_connection() to match the connect method. [27925] #27240
  • Don’t pass a second argument to mysqli_fetch_field(). [28002] #27693
  • Rename USE_EXT_MYSQL to WP_USE_EXT_MYSQL. [28022] #21663

Internals:

  • Updates: Record Plugin & Theme update statistics like we do for Core updates. [27905] [27906] #27633
  • Pingbacks: Forward pingbackPingback A pingback is a special type of comment that's created when you link to another blog post, as long as the other blog is set to accept pingbacks. Pingback allows you to notify other bloggers that you have linked to their article on your website. Although there are some minor technical differences, a trackback is basically the same thing as a pingback. IP during verification. [27872] #27613
  • Dashicons: [27989] [28005] [28013] #26936
    • New icons: .dashicons-external, .dashicons-editor-contract and .dashicons-universal-access-alt.
    • Updated icons: .dashicons-code, .dashicons-universal-access, .dashicons-arrow-x-alt and .dashicons-arrow-x-alt2.
    • Restores .dashicons-post-trash as an alias for .dashicons-trash, which is the new one.
    • Use new icons in Widget Customizer.
  • Don’t try to resolve symlinks for single-file plugins. plugins_url() should not be used in this context anyway. [27999] #16953
  • Remove old links_recently_updated_* DB options that never had a UIUI User interface. [27916] #27649
  • Deprecate wpmu_current_site(). [28009] #27702

Many thanks to @adamsilverstein, @andykeith, @avryl, @azaozz, @bramd, @chiragswadia, @davidmarichal, @dd32, @dpe415, @duck_, @DrewAPicture, @DrProtocols, @ehg, @eightface, @empireoflight, @gcorne, @helen, @jackreichert, @jdgrimes, @jeremyfelt, @jesin, @joedolson, @johnbillion, @jorbin, @jond3r, @kovshenin, @kpdesign, @leewillis77, @markjaquith, @matveb, @mcsf, @melchoyce, @michael-arestad, @nacin, @Nessworthy, @norcross, @obenland, @ocean90, @pento, @plocha, @rachelbaker, @rmccue, @sdasse, @SergeyBiryukov, @siobhan, @sonjanyc, @tellyworth, Tom Adams, @vancoder, @westonruter, and @wonderboymusic for their help this week!

For the complete list of commits to trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision., check out the log on Trac. Since we’re getting very close to release, the best way to help is to test! Let us know if you run into problems in the Alpha/Beta forums or on trac.

#3-9, #week-in-core

Twenty Fourteen Project Update

Home stretch. Let’s polish.

Finished

  • Launched the theme on WordPress.comWordPress.com An online implementation of WordPress code that lets you immediately access a new WordPress environment to publish your content. WordPress.com is a private company owned by Automattic that hosts the largest multisite in the world. This is arguably the best place to start blogging if you have never touched WordPress before. https://wordpress.com/ (announcement, Theme Showcase page)
  • Many, many fixes to get ready for code freeze (see all commits since our last update): including RTL, IE, contextual help, layout, etc
  • Improvements based on feedback from coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. dev team (simplification, code readability and commenting)
  • Lots of activity at the 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. London Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/.

A special thanks to everyone who participated in our “device testing and bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. hunt” activity at WordCamp London, including but not limited to binarymoon, jartes, erichmond, janhenckens, sonjanyc, amistad18, iv.dimova, kdankov, robert olsen, iandstewart, chellycat, sixhours, cainm, blankthemes, thomasguillot, kwight, Frank Klein, siobhan, and defries. And all three of us on the Twenty Fourteen team were present: lancewillett, iamtakashi, obenland. [These are 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/ usernames.]

Next

  • Wrap up final bug fixes: see open tickets
  • Make a Codex page for Twenty Fourteen help and tips—@siobhan to create the draft and kick it off

Discussion

What’s a pragmatic solution for detecting mobile and table devices? We’d like to use wp_is_mobile() but that seems designed for only adminadmin (and super admin) use since it assumes no page caching. See notes at #26221.

#3-8, #bundled-theme, #theme, #twentyfourteen