Make WordPress Core

Recent Updates Page 4 Toggle Comment Threads | Keyboard Shortcuts

  • Pascal Birchler 9:48 am on March 28, 2015 Permalink |
    Tags: ,   

    WordPress Core Weekly 

    Hi Everyone!

    It’s time for another run-down of what’s going on in WordPress core. This edition covers March 20, 2015 [31845] through March 28, 2015 [31915].

    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 WordPress 4.2 Beta 3, which was released on Thursday. There were many accessibility and emoji improvements and bug fixes. Also, shiny installs functionality was removed.


    • Improve newly added strings for i18n. [31905] #31776
    • Remove <code> tags from translatable strings. Uncomment deprecation notice for get_bloginfo( 'text_direction' ). [31899] #30614


    • Theme Switcher: Opening themes details modal shouldn’t require two clicks on touch devices. [31914] #31794
    • Theme Switcher: Reset font size of theme names in overlay. Apply left position only to themes section. [31892] #31303
    • Theme Switcher: Don’t hide action buttons on narrow screens. [31912] #31794
    • Use proper preview URL for Live Preview links. [31911] #31782
    • Avoid SecurityErrors when the Customizer is embedded in an origin other than wp-admin. [31885] [31893] #31687
    • Use responsive button styles if screen is max-width 640px. [31913] #31794, #28784


    • [31864] changed emoji image’s inline style from height to max-height. Unfortunately, anything using feedparser.py (for example, NewsBlur) strips out max-height, which gives us massive emoji in feeds. This re-adds height, and also reminds us why we can’t have nice things. [31909] #31719
    • When we’re replacing emoji with <img>s in email, we can only do that if the Content-Type is text/html – otherwise, they’ll show up in the email as the HTML string. [31860] #31720
    • Instead of loading the emoji JS files automatically, we now include a small JS shim in the header, to test if the user’s browser needs Twemoji. It then loads the emoji JS files only if they’re needed. [31875] [31877] [31879] #31701
    • Set the emoji image protocol with set_url_scheme(), instead of defaulting to HTTPS. [31861] #31735

    Press This

    • Remove role="application" from the Categories list wrapper. This doesn’t make it work better in screen readers. [31907] #31443
    • On sites that support oEmbed, if the user has selected some text, quote it below the embed. [31894] #31763
    • Fix the links on inserted images to point to the source site. Fix inserting of images above the blockquote when the editor has not been focused. [31868] #31745



    • Remove ambiguity in the time display format in core, switches to using 24hr notation where am/pm isn’t specified. [31862] #31121
    • Comments List: Don’t let “Quick Edit” break on smaller screens. [31889] #31482
    • Admin menu: Revert [31720] for swipe open/closed. This is problematic on any device that uses swipe for history navigation, particularly iOS. [31910] #31187
    • Do not output empty name and id HTML attributes in get_submit_button(). [31880] #31749
    • When altering the admin URL to reflect the canonical location, keep the existing hash (if present) in the URL. [31882] #31758, #23367
    • WordPress 4.2-beta3 [31902] [31903]


    • When saving post, ensure that non-hierarchical taxonomy input is defined before attempting to parse it. [31895] #30859
    • Taxonomy List Tables: On mobile devices, hide the slug column, to avoid cramping the action links into two rows. [31865] #29992
    • Supplement hook documentation for the get_terms_fields filter to more clearly explain the expected consequences of using it to modify the fields to select in a terms query. [31855] #31174


    • Make sure the editor is not completely empty before checking if the user clicked above or below a wpView. [31888] #31765
    • Pad empty paragraphs with <br> in Chrome to stop it from inserting non-breaking spaces in them. [31878] #31255
    • Fix error and PHP warning when adding more than one instance in RTL mode. [31874] #31578
    • Fix the icon for the wp_code button. [31858] #31733
    • When pasting an URL, check if the node it is pasted at is empty and remove any empty inline child elements. [31856] #31158

    Script Loader

    • Avoid a PHP notice in wp_enqueue_script() if $handle is an array. Calling wp_enqueue_script() with an array as the first argument is a “hidden feature” and should be avoided. Use dependencies instead. [31887] #31636, #14488


    • Text Widget: Use !empty() for checking if the filter setting is set. [31886] #31690
    • Trigger _doing_it_wrong() if register_sidebar() is not passed an id. [31850] #31675

    Login and Registration

    • Implement an aria-describedby attribute for login screen errors, and improve the “Forgot password?” anchor text. [31871] #31143


    • Introduce attachment_url_to_postid filter to let plugins manage the uploads location better. [31867] #31717
    • Show filename instead of extension in the list table. [31857] #30943

    Bundled Theme

    • Update editor styles to better display images and captions in small screens. [31849] #31250

    Build/Test Tools

    Thanks to @A5hleyRich, @afercia, @aferica, @atimmer, @azaozz, @boonebgorges, @Cheffheid, @dd32, @dkotter, @DrewAPicture, @ericlewis, @extendwings, @HarishChaudhari, @helen, @ianmjones, @iseulde, @jacklenox, @janhenckens, @johnbillion, @johneckman, @jorbin, @kraftbj, @lamosty, @lancewillett, @magicroundabout, @maimairel, @markjaquith, @mattheu, @mattwiebe, @MikeNGarrett, @nerrad, @obenland, @ocean90, @pento, @ramiy, @rianrietvel, @SergeyBiryukov, @sorich87, @stephdau, @swissspidy, @tschutter, @tyxla, @valendesign, @valendesigns, and @westonruter for their contributions!

    • Piet Bos 10:27 am on March 28, 2015 Permalink | Log in to Reply

      There is another open ticket for Emojis and that is #31651 with the request to switch the CDN from the .com domain to the .org domain

  • Drew Jaynes 4:00 pm on March 25, 2015 Permalink |
    Tags: ,   

    Dev Chat Agenda, March 25, 2015 

    Here’s the agenda for Wednesday’s Dev Chat in the #core channel on Slack.

    » Beta 2 was tagged last week as scheduled and we’re heading toward tagging Beta 3 this week.

    Time/Date: March 25 2015 21:00 UTC:

    Reminder for those on Daylight Saving Time – If you’re already on Daylight Saving Time, the core dev chat will be an hour later for you until next week, though still 21:00 UTC. The above time link should give you the correct time and date for your local timezone.


    1. Decisions
      • Shiny Updates: Auto-activation behavior
      • wpLink modal: Behavior for working links lacking source text
      • Pursue or Punt: #26601 – Inappropriate content in headings on admin screens
      • About page highlights
      • Make/Core Posts – Ideas: Schema change, query class changes, TinyMCE views changes, twemoji front-end loader, update on HTML5 widgets revert, etc.
    2. Upcoming Milestones overview
      • Beta 3 (90 tickets on Report 6)
        • Start finishing up tickets with string changes
        • Start About page
      • Beta 4 (50 tickets on Report 6)
        • Soft string freeze (all string changes completed save for the About page)
        • Start finishing up the About page
      • RC 1 (0 tickets on Report 6)
        • About page finished
        • Hard string freeze
    3. Open Floor – Looking for dev feedback on a ticket? Use this part of the meeting to let us know!
    • Aaron Jorbin 5:03 pm on March 25, 2015 Permalink | Log in to Reply

      RE: Shiny Updates –

      24 hours ago I wouldn’t be advocating this, but there are a couple of really good reasons that we shouldn’t do auto-activates.

      1) Plugins that require after activation steps (such as connecting for jetpack or google analytics, updating permalinks for buddypress, etc) aren’t obvious. We need a way for plugins to provide a notice upon activation of next steps
      2) Since the menu isn’t updated, users still need to do a page refresh in order for the changes to actually go in affect and for them to utilize the features of many plugins.
      3) There are plugins such as maintenance mode ones that users will not want to be activated right away.

      I really like the idea of auto-activating since I think it helps to discourage users from having code that isn’t actually being used from being on the server and also saves the user a step, but in reality, they aren’t saved a step.

      We have at least two options for what to do instead.

      1) We remove shiny installs from the release. This is fairly easy to do as we just need to remove the js bindings on that page and remove the ajax actions. Since much of the infrastructure code is in place now, I think that it’s possible to continue development of shiny installs in a plugin. This would enable us to work on things such as:

      • Adding the ability for plugins to register “notifications” for users on what they need to do after installing.
      • Add the ability for plugins to “opt-out” of auto installs
      • Work on adding in menu items or at least a link to a plugins setting screen.

      2) Turn off auto-activation and instead do some UI changes when a user installs a plugin. I’m thinking a notice banner inside the plugin card giving the option to activate. This can either be a shiny (ajax) activation or a traditional activation. We also could change the “install” button to be “activate”.

      At this point, I recommend option 1. Shiny updates is still a solid MVP and a win for the users. It also sets us up for some bigger wins down the rode.

      • Eric Lewis 5:21 pm on March 25, 2015 Permalink | Log in to Reply

        I’m in favor of option 1 as well. It’s late in our release cycle to be making user-facing decisions that bear such heavy impact.

        Shiny Updates is a great improvement, let’s focus the rest of our effort there and follow-up on Shiny Installs later.

      • Gary Pendergast 10:47 pm on March 25, 2015 Permalink | Log in to Reply

        I’m strongly in favour of option 1. Providing an Activate option gives us one of two problems:

        • If it’s a Shiny Activate, it’ll have most of the same problems we’ve run into with auto-activate.
        • If it directs to the old activate screen, it’ll interfere with currently running Shiny Installs, and probably other things.

        I’m also in favour of seeing if we can turn this into a plugin. I think the Shiny Updates dev process has well and truly shown that the trunk dev model is totally broken.

      • Shailesh 9:14 pm on March 26, 2015 Permalink | Log in to Reply

        What if we convert Install button in Activate It after plugin is downloaded?
        If user click on activate button, page will open in new window something like target=”_blank”. So current other progress will not affected.

        Same for already activated plugins. We can put Deactivate It button and onclick we can deactivate it in new window.

      • Chuck Reynolds 2:31 am on March 27, 2015 Permalink | Log in to Reply

        agreed. glad the auto-activation was stopped.
        Something to consider going forward… a filter to disable the auto-activate after install.

  • Rachel Baker 1:51 pm on March 24, 2015 Permalink |

    WP REST API: Version 1.2 

    Hello everyone. Remember us? Today, I can finally announce the release of version 1.2 of the WP REST API.

    A short nine months after our last release we have support for Cross-Origin Resource Sharing, full request hijacking, JSON encode/decode errors, and a swarm of bug fixes.

    Here are the expanded highlights:

    • Add handling for Cross-Origin Resource Sharing (CORS) OPTIONS requests.

      Preflighted requests (using the OPTIONS method) include the headers Access-Control-Allow-Origin, Access-Control-Allow-Methods, and Access-Control-Allow-Credentials in the response, if the HTTP origin is set.

      (props @rmccue, #281)

    • Allow overriding full requests.

      The json_pre_dispatch filter allows a request to be hijacked before it is dispatched. Hijacked requests can be anything a normal endpoint can return.

      (props @rmccue, #281)

    • Check for JSON encoding/decoding errors.

      Returns the last error (if any) occurred during the last JSON encoding or decoding operation.

      (props @joshkadis, @rmccue, #461)

    • Add filtering to the terms collection endpoint.

      Available filter arguments are based on the get_terms() function. Example: /taxonomies/category/terms?filter[number]=10 would limit the response to 10 category terms.

      (props @mauteri, #401, #347)

    • Add handling for the role parameter when creating or updating a user.

      Allow users to be created or updated with a provided role.

      (props @pippinsplugins, #392, #335)

    • Add handling for the post_id parameter when creating media. Allow passing the post_id parameter to associate a new media item with a post.

      (props @pkevan, #294)

    • Handle route matching for - in taxonomy and terms.

      Previously the regular expression used to match taxonomy and term names did not support names with dashes.

      (props @EdHurtig, @evansobkowicz, #410)

    • Handle JSONP callback matching for . in the function name.

      Previously the regular expression used to match JSONP callback functions did not support names with periods.

      (props @codonnell822, #455)

    • Fix the Content-Type header for JSONP requests.

      Previously JSONP requests sent the incorrect application/json Content-Type header with the response. This would result in an error if strict MIME checking was enabled. The Content-Type header was corrected to application/javascript for JSONP responses.

      (props @simonlampen, #380)

    • Add $context parameter to json_prepare_term filter.

      Terms responses can now be modified based on the context parameter of the request.

      (props @traversal, #316)

    • Move the JavaScript client library into the plugin.

      Previously, the wp-api.js file was a separate repository. The JavaScript client has moved back into the plugin to coordinate code changes.

      (props @tlovett1, #730)

    • Always return an object for media sizesThe media sizes value should always be an object even when empty.

      Previously, if a media item did not have any sizes set, an empty array was returned.

      Compatibility warning: Clients should be prepared to accept an empty object as a value for media sizes.

      (props @maxcutler, #300)

    • Give top-level posts a null parent value.

      For date type consistency, post parent property should be null. Previously, parent-less posts returned 0 for parent.

      Compatibility warning: Clients should be prepared to accept null as a value for post parent.

      (props @maxcutler, #391)

    • Move permission checks out of WP_JSON_Posts.

      Introduce json_check_post_permission() function to allow post object capability checks to be used outside the WP_JSON_Posts class.

      Deprecation warning: Calling WP_JSON_Posts::check_read_permission and WP_JSON_Posts::check_edit_permission is now deprecated.

      (props @rachelbaker, #486, #378)

    • Split comment endpoints into separate class.

      All comment handling has moved to the WP_JSON_Comments class.

      Deprecation warning: Calling WP_JSON_Posts::get_comments, WP_JSON_Posts::get_comment, WP_JSON_Posts::delete_comment, and WP_JSON_Posts::prepare_comment is now deprecated.

      (props @whyisjake, @rmccue, @rachelbaker, #378)

    • Split meta endpoints into separate class.

      All post meta handling has moved to the new WP_JSON_Meta_Posts class.

      Deprecation warning: Calling WP_JSON_Posts::get_all_meta, WP_JSON_Posts::get_meta, WP_JSON_Posts::update_meta, WP_JSON_Posts::add_meta, WP_JSON_Posts::delete_meta, WP_JSON_Posts::prepare_meta, and WP_JSON_Posts::is_valid_meta_data is now deprecated.

      (props @rmccue, @rachelbaker, #358, #474)

    • Rename internal create methods.

      Deprecation warning: Calling WP_JSON_Posts::new_post, WP_JSON_CustomPostType::new_post and WP_JSON_Posts::new_post is now deprecated.

      (props @rachelbaker, @rmccue, #374, #377, #376)

    • Fix discrepancies in edit and create posts documentation examples.

      Corrected the edit and create posts code examples in the Getting Started section. The new post example was updated to include the required content_raw parameter. The new and edit posts examples were updated to use a correct date parameter.

      (props @rachelbaker, #305)

    • Update the cookie authentication documentation examples.

      With 1.1 the localized JavaScript object for wp-api.js changed to WP_API_Settings. This updates the Authentication section documentation nonce example to use the updated object name.

      (props @rachelbaker, #321)

    • Add flexibility and multisite support to unit tests.

      Tests can be run from any WordPress install, and are not limited to only as a plugin installed within a WordPress.org develop checkout. Unit tests are now run against a multisite installation.

      (props @danielbachhuber, #397)

    As always, we’ve got a full list of all the changes and a longer changelog.

    Here’s who contributed to this release:

    $ git shortlog 1.1.1...1.2 --summary
        1  Chris O'Donnell
        12  Daniel Bachhuber
         1  David Hayes
         4  DrewAPicture
         7  Eddie Hurtig
         2  JDGrimes
         1  Japh
         5  Josh Kadis
         1  Josh Pollock
         1  Justin Sternberg
         2  K.Adam White
         1  Marko Heijnen
         2  Max Cutler
         2  Mike Auteri
         1  Milan Dinić
         1  NikV
         3  Paul Kevan
         2  Pippin Williamson
        86  Rachel Baker
        73  Ryan McCue
         7  Sarah Gooding
         1  Simon Lampen
         2  Taylor Lovett
         1  Travis Hensgen
         1  Wayne K. Walrath
         1  ironpaperweight
         1  kalenjohnson
         1  kellbot
         1  paul de wouters

    Release Plan

    1.2 will be the last major release on the 1.x branch of the plugin. We’ve been working hard over the past four months, with the aim of releasing a beta for version 2.0 next month.

    For existing code written for version 1.x we will issue a final 1.x release as a compatibility shim to seamlessly connect existing code to version 2.

    • Heather Acton 1:55 pm on March 24, 2015 Permalink | Log in to Reply

      Woohoo!!! Congratulations! Great work to all.

    • Emyr Thomas 2:02 pm on March 24, 2015 Permalink | Log in to Reply

      This is great news, thanks for the update. Two quick questions…

      1. What’s the current status for getting this into WordPress core? I assume if it’s still going to make it into core, that won’t happen until version 2?
      2. What’s the situation with regards to the overlap between this project and the Jetpack/WP.com JSON API? Are both projects going to remain separate, or are there plans to merge somewhere down the line?

      • Rachel Baker 2:46 pm on March 24, 2015 Permalink | Log in to Reply


        It would be version 2 that makes it into WordPress core, and the timeline for that is “sometime in 2015″. I cannot speak for the Jetpack/WP.com team, but our goal is to make the WP REST API too impressive to refuse.

        • John Teague 3:58 am on March 25, 2015 Permalink | Log in to Reply

          I’ve reviewed v4.2. Believe me, REST API is already too impressive to put off including in core any longer. Not that I don’t appreciate a solid 100% commitment towards maintenance, but a a solid innovative inclusion in core would be a breath of fresh air these days :)

  • Drew Jaynes 11:30 am on March 23, 2015 Permalink |
    Tags: ,   

    This Week in 4.2: March 23 – 29 

    This is the jump-start post for the tenth week of the WordPress 4.2 release cycle.

    We entered the Beta 2 stage of development last week. We should transition to Beta 3 and try to wrap up enhancements/tasks this week.

    Thrice-weekly scrubs will continue this week on Tuesday, Wednesday, and Friday using Report 6.

    Core Meetings this week:

    4.2 Feature Chats this week:

    Priority tickets this week:


    • #30468 – wplink modal accessibility
    • #28820 – Focus isn’t clear when previewing an oEmbed from Add Media Panel
    • #31143 – Login error handling accessibility improvements
    • #31326 – Edit comment screen: misplaced-missing labels


    • #29906 – Submenus can’t be dismissed on mobile
    • #29991 – Comment action links are quite cramped on small screens
    • #29993 – Media action links are cramped on small screens
    • #31609 – Scroll bleed through and scroll position loss in the view plugin details modal on iOS
    • #31610 – Scroll bleed in the session expired log in modal on iOS
    • #31611 – Scroll bleed in the attachment details modal on iOS
    • #31612 – Scroll bleed in the link modal on iOS

    Notable updates from last week:

  • Pascal Birchler 7:51 am on March 21, 2015 Permalink |
    Tags: ,   

    WordPress Core Weekly 

    Hi Everyone!

    It’s time for another run-down of what’s going on in WordPress core, directly from WordCamp 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!


    Bundled Themes


    • If the URL 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 meta tags we check in the bookmarklet to 200. Sometimes there are empty meta tag nodes (no attributes) in some browsers. [31778] #31373
    • Simplify and restyle the categories drop-down, remove the checkboxes and use JS to get the selected categories on submitting the form. [31765] #31443




    • Ensure that we target the correct plugin row for update updates [31831] #31621
    • Request FTP and SSH credentials when needed during shiny updates [31811] #31528


    • 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


    • 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 admin CSS 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



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


    • Edit Terms: Show error messages actually as error messages. [31823] #31241
    • Ensure that the $exclusions parameter of list_terms_exclusions filter is always a string. [31813] #31681


    • Move HTML 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 API

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

    Build/Test Tools


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


    • HHVM doesn’t support passing a DB link to mysqli_get_client_version(). While we usually pass a DB link to every ext/mysql 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!

  • Drew Jaynes 10:00 am on March 18, 2015 Permalink |
    Tags: ,   

    Dev Chat Agenda, March 18, 2015 

    Here’s the agenda for Wednesday’s Dev Chat in the #core channel on Slack.

    » Beta 1 was tagged last week as scheduled and we’re heading toward tagging Beta 2 this week.

    Time/Date: March 18 2015 21:00 UTC:

    Reminder for those on Daylight Saving Time – If you’re already on Daylight Saving Time, the core dev chat will be an hour later for you for the next few weeks, though still 21:00 UTC. The above time link should give you the correct time and date for your local timezone.


    1. Ticket Ownership
      • New Trac report, Tickets I Own, primarily for committers
      • Review milestoning best-practices in the testing stages
    2. Bug Scrub/Commit Sprint

    No Open Floor this week – Due to time constraints, we won’t be holding an open floor period during the regularly-scheduled dev chat this week. If you have a ticket on the 4.2 milestone you’d like to get dev feedback on, leave a note in the comments.

    • Justin Sternberg 1:04 pm on March 18, 2015 Permalink | Log in to Reply

      Would like to get a decision on https://core.trac.wordpress.org/ticket/31556. Thanks Drew.

    • Joe McGill 1:19 pm on March 18, 2015 Permalink | Log in to Reply

      I think https://core.trac.wordpress.org/ticket/30900 is ready to go in, just needs an owner.

      The second ticket where I’d like to get some feedback is https://core.trac.wordpress.org/ticket/31352 – making media icons retina friendly. Issue being whether it’s better to use SVGs for those icons or to modify the output of `wp_get_attachment_image_src()` to support multiple sources (e.g. icon1x.png, icon2x.png, etc.).

    • Paal Joachim Romdahl 5:58 pm on March 18, 2015 Permalink | Log in to Reply

      I believe there is a lack in people contributing to WordPress core.
      This is a topic that should be discussed.

      It would be informative to ask for feedback on how people experience contributing to WordPress.

      I see two different ways outside of slack we can handle this. Both would be helpful for the community.

      Creating a survery asking people if they have contributed to WordPress Core in some way.

      • How was your experience?
      • Do you have suggestions on how to improve the experience?
      • Anything else you would like to add?
      • How should we go about encouraging others to contribute?
      • Has your company considered donating employees time to contributing to improve WordPress? Yes/no
      • If so why or why not.
      • Etc…

      Holding a town hall meeting with the topic “Improving the contributing experience for WordPress Core”.

      Findings will then need to be strongly considered and changes implemented looking at the structure of how things are done in WordPress. All companies need to find ways to better themselves WordPress is also one of them. I am hoping that this can create a serious introspection with the result of adjusting what does not work with a new flow that does.

  • Ryan Boren 7:57 pm on March 16, 2015 Permalink |  

    Mobile patch testing with VVV and xip.io 

    I recently started using Varying Vagrant Vagrants and xip.io for real device mobile testing of patches on trac tickets. I go through tickets with patches that change UI and drop mobile and desktop screenshots of the patches in action. These screenshots hasten UI feedback and usually reveal visual glitches on mobile that are then patched up, making our mobile experience that little bit better. Until that blue sky someday when I can apply patches to a patch server with a tap, I’ve found VVV and xip.io to be the easiest way to do localhost testing of patches from mobile devices. I’m using Vagrant’s public_network option along with xip.io. This allows me to test from any device on my local network using links like http://build.wordpress-develop. without the need for port forwarding, dynamic dns, or hosts file editing. The two resources I used most in setting this up were:



    Working those into something for the core developer handbook would be a great public service. Patch testing and mobile testing need to be much easier. Let’s all start putting mobile screenshots of our patches on trac and dogfood the mobile patch testing experience. Setting up and using npm and grunt are currently undocumented in the handbook. There is much confusion about build vs src. Getting to where I could localhost test patches was a struggle.

    How do you localhost test patches from physical mobile devices? Do you also use VVV? Have a cool bash_aliases or other script to share?


    • bradparbs 8:00 pm on March 16, 2015 Permalink | Log in to Reply

      Just want to mention that I just added the xip.io configurations for VV (https://github.com/bradp/vv) this weekend, so you’re able to use that as well.

    • Drew Jaynes 8:31 pm on March 16, 2015 Permalink | Log in to Reply

      Neat. Might be worth adding a section or article to Core Contributor Handbook. I can help you with that if you like.

    • Fabien Quatravaux 8:23 am on March 17, 2015 Permalink | Log in to Reply

      I use ngrok which provides a service similar to xip.io but which needs some installation.

    • Eric Lewis 9:08 am on March 17, 2015 Permalink | Log in to Reply

      Can we give VVV the official WordPress Core stamp of approval yet

      • Ryan Boren 4:01 pm on March 17, 2015 Permalink | Log in to Reply

        I don’t code anymore and am out of touch with many dev conversations. So read me as openly curious when I ask what this stamp might entail? I think the core developer handbook is a good vector for infecting WP dev with VVV. Having a VVV section under “Installing a Local Server” seems a good start, something like the ones for MAMP and XAMPP.

        grunt, npm, when to use build vs. src, how to patch against src, and other concepts necessary to creating, applying, and testing patches are pretty much undocumented right now. I, personally, would be just fine with documenting these activities within the context of VVV. VVV does a lot of heavy lifting for you and hides a lot of grief. I want something I can recommend to patch testers, and VVV seems the best candidate.

  • Drew Jaynes 10:00 am on March 16, 2015 Permalink |
    Tags: ,   

    This Week in 4.2: March 16 – 22 

    This is the jump-start post for the ninth week of the WordPress 4.2 release cycle.

    We entered the Beta 1 stage of development last week. We should transition to Beta 2 later this week.

    Thrice-weekly scrubs will continue this week on Tuesday (bugs), Wednesday (tasks), and Friday (Report 6).

    For those following the Press This feature, the Slack channel has been renamed from #feature-pressthis to #core-pressthis and will be used for general Press This component maintenance and discussion going forward.

    Core Meetings this week:

    4.2 Feature Chats this week:

    Priority tickets this week:


    • #30556 – Modern widgets default wrapper
    • #31527 – Bundled themes: Add ARIA attributes to menu toggle
    • #30468 – wplink modal accessibility
    • #31546 – Press This and admin tag meta-box: use aria-describedby to improve accessibility


    • #31187 – Allow swiping the admin menu open and closed on touch devices
    • #29906 – Submenus can’t be dismissed on mobile
    • #31233 – Dismissable admin notices

    Posts seeking your feedback:

    Notable updates from last week:

  • Dion Hulse 1:40 pm on March 14, 2015 Permalink  

    Plugin Automatic Security Updates 

    Just a quick note that I’ve published an overview of the background updates for plugins over on the Plugin Announcements blog – https://make.wordpress.org/plugins/2015/03/14/plugin-automatic-security-updates/

    If you’re a plugin author, and not following that blog, now would be a good time to head on over and subscribe :)

  • Pascal Birchler 3:37 pm on March 13, 2015 Permalink |
    Tags: ,   

    WordPress Core Weekly 

    Hi everyone, and welcome to this week’s installment of WordPress Core Weekly – covering March 5 2015 [31621] through March 13, 2015 [31764].

    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.

    WordPress 4.2 Beta 1

    In case you missed it, the first beta of WordPress 4.2 was released yesterday! Read the announcement post for a quick overview of all features (emojis! 🎉🎉) and be sure to test it extensively.

    Code Updates



    • Abstract the code for creating floating toolbars. Introduce editor.wp namespace to hold exported methods from our plugins. [31725] #30619
    • Hide TinyMCE help button on mobile. [31718] #31161
    • Update TinyMCE to 4.1.9. [31700] #31551
    • TinyMCE: when pasting an URL over a selection, insert a link with the URL instead of replacing the selection with it. [31691] #31571
    • In the modal state for Embed previews, only show the Title field when the preview fails. [31632] #29476


    • Shiny Updates: Disable body scrolling when filesystem request modal is open. [31753] #31607
    • Shiny Updates: Don’t translate an error code string. [31751] #31606

    Posts, Post Types

    • Allow is_page_template() to accept an array, as many other conditional tags do. [31754] #31271
    • Introduce a new algorithm for displaying a hierarchical list of post objects in the WP_Posts_List_Table. This reduces processing time, reduces database queries, and substantially reduces memory use on sites with a high number of Pages. [31730] #15459

    Press This

    • Remove obsolete help tab in Settings -> Writing. [31743] #26794
    • update _limit_url(), use esc_url_raw(). [31737] #31373
    • Filter and select the content on the PHP side. Then pass only the needed data to JS. [31693] #31373
    • Add preview functionality. Opens the preview in a new window or a tab next to the source tab. [31654] #31458


    • EXIF/IPTC captions should populate Caption (post_excerpt) on upload, not Description (post_content). [31694] #22768
    • Introduce a function, wp_attachment_is( $type, $post = 0 ), to collapse the logic for determining whether an attachment is an image, audio, or video. [31645] [31670] #25275



    External Libraries


    • Plugin details: Ensure banner image doesn’t repeat. [31719] #30773



    • Return the original value when filtering theme mods/options and the current blog has changed. [31707] #31428
    • Prevent a race condition when attempting to publish too soon after updating widget form fields with multiple edits. [31706] #31501
    • Fix previewing and applying widgets when previewing another theme. [31705] #31484
    • Introduce WP_Customize_Media_Control, a new base class for all Customizer media controls. [31698] #29215
    • Add loading indicators for the Customizer preview. [31697] #31196
    • Add audio/video previews for upload controls. [31661] #30850


    • Improved customizability for the Submit button in comment_form(). [31699] #15015
    • Comments: Show more identifying information for moderation and editing. [31641] [31695] #23988


    • Screen Options: Improve items per page option label. Add a default label “Number of items per page:” to WP_Screen->render_per_page_options() and remove all the existing one-word labels. [31696] #31349, #15576
    • Theme Details: Hide admin toolbar on smaller screens. [31702] #31381
    • Star ratings: Use a yellow color across the board. Keying these to color schemes originally turned out to be weird. [31747] #31424
    • Remove single-use URL parameters and create canonical link based on new URL. [31736] #23367
    • Allow swiping of the admin menu on touch devices. [31720] #31187
    • Restore <title> tag on Posts and Pages screens after [31696]. [31709] #31349
    • Replace flagrant instances of .html(”) with .empty(). [31690] #27034
    • Nav menus: Return to calling links “Custom Links”. [31748] #31344

    Networks and Sites

    • Introduce delete_site meta capability. [31673] #30470
    • Return HTTP status code 403 in network admin when access is forbidden. [31658] #31422
    • Return HTTP status code 500 by default in ms_not_installed() [31657] #30002



    • Improve experience when deleting users from a multisite network. [31656] #18132

    Bundled Theme

    Thanks to @adamsilverstein, @afercia, @azaozz, @batmoo, @beaulebens, @bendoh, @boonebgorges, @celloexpressions, @codix, @coffee2code, @craig-ralston, @dd32, @doublesharp, @DrewAPicture, @elliottcarlson, @ericlewis, @Fab1en, @HarishChaudhari, @helen, @hugobaeta, @iandunn, @Idealien, @iseulde, @jeremyfelt, @jesin, @jipmoors, @joen, @johnbillion, @jorbin, @kraftbj, @lancewillett, @LeoPeo, @mattheu, @mattheu, @MattyRob, @Michael-Arestad, @MikeHansenMe, @miqrogroove, @morganestes, @morpheu5, @mkaz, @nacin, @netweb, @ninnypants, @nofearinc, @obenland, @ocean90, @OriginalEXE, @pavelevap, @pbearne, @pento, @peterwilsoncc @podpirate, @rachelbaker, @rodrigosprimo, @scott.gonzalez, @seanchayes, @senff, @SergeyBiryukov, @SergeyBiryukov, @stephdau, @stevenkword, @swissspidy, @thaicloud, @thomaswm, @tyxla, @valendesigns, @westonruter, @wonderboymusic, and @yo-l1982 for their contributions!

compose new post
next post/next comment
previous post/previous comment
show/hide comments
go to top
go to login
show/hide help
shift + esc
Skip to toolbar