Customize Update – 2016-09-15

This is the weekly update post for the customize component. It includes a summary of this week’s meeting, recent commits, and next week’s meeting agenda.

Weekly Customize Meeting Summary

On Monday we held our weekly 4.7 customize component meeting in #core-customize on Slack [logs]. Participants: @celloexpressions, @aaroncampbell, @westonruter, @boone, @adamsilverstein, @afercia, @johnregan3, @ipstenu. This summary also contains a few notes on action since the meeting.

4.7 Projects

  • Create pages within live preview during site setup – #37914#37915, #37916, #38002, #38013 – @celloexpressions
    • @boone joined us for an extensive discussion on how to preview terms in the 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..
      • When this changes, there is potential for issues based on things that plugins might do, so it would be better to make this sort of change once, as opposed to using a temporary solution, because there could be wasted effort in educating 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 developers twice.
      • We decided that it’s worth exploring a term status APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways., and if that ends up being something more involved than is feasible for 4.7, potentially going with shadow-draft taxonomies for drafted terms. @boone will post findings on #37915. @aaroncampbell volunteered to help research required API changes here.
    • We’re now tracking the ability to assign auto-drafted pages as a static front pageStatic Front Page A WordPress website can have a dynamic blog-like front page, or a “static front page” which is used to show customized content. Typically this is the first page you see when you visit a site url, like wordpress.org for example., or to create pages from there, under this project. @westonruter has prototyped how this could work in #38013.
    • We need UXUX User experience feedback on providing a path to edit newly-created pages, #38002. This was discussed in the design meeting as well but there isn’t an agreed solution yet.
  • A new experience for themes in the customizer – #37661 –@celloexpressions
    • @afercia tested the 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. and provided detailed design and 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) feedback. I evaluated how to approach each item and a few things could use design feedback.
    • I ran an informal user test last week and posted the (generally positive) results on the ticketticket Created for both bug reports and feature development on the bug tracker.. @karmatosed is hopefully still interested in coordinating some more formal tests and we need to start that process in the next week.
    • This was also discussed during the design meeting, and could use more eyes and feedback in general. If anyone has thoughts on any of the proposed UIUI User interface, please share them on the ticket.
  • Code-editing gateways, via CSSCSS Cascading Style Sheets.#35395 – @johnregan3
    • We need information from anyone familiar with the CSSTidy library. It seems that the version included in Jetpack is an up-to-date fork, as the original project was last updated in 2007. If anyone from Automattic can provide input here that would be appreciated.
    • We also need to ensure that the license, GPLGPL GNU General Public License. Also see copyright license. 2.1 or later is compatible with coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
    • The CodeMirror library is also proposed to be bundled with core for this project; we would like core commiter/lead developer approval for bundling both of these soon so that we can proceed. CSSTidy is a requirement, CodeMirror is a usability enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. (syntax highlighting).
    • Once we have approval for bundling libraries and a finalized patch, we’ll post a feature proposal here on make/core.
  • Customizer browser history#28536 – @westonruter
    • No updates
  • Customize transactions#30937 – @westonruter
    • No updates
  • Improving sliding panels UI – #34391, #34343, #29158 – @delawski
    • We’re now tracking three tickets with this project, as they combine to provide a single user-facing group of changes for 4.7.
    • I have been testing the patch on #34391 and evaluating potential compatibility concerns. @ipstenu scanned the plugins repo and @djrmom scanned the themes repo for extends WP_Customize_Seection|Panel. Most instances were in themes and plugins bundling copies of the Redux and Kirki frameworks. Both libraries are most likely compatible with the changes, and the authors will test them with the patch to verify. The remaining instances were all in feature plugins for plugins and I checked each of the 16 themes with custom sections manually. All of these themes should be compatiible with the changes, so we should be okay to proceed with the potentially-breaking changes required.
    • @delawski will evaluate how extensively the patch on #37661 will need to be refactored to be compatible with the changes. Unless that’s a significant issue, we should be ready to commit #34391 in the next week.
    • @helen committed a first pass for #29158. We now need UI feedback to come up with better focus states for customizer back buttons.
    • The design team approved the UX proposed in #34343 in this week’s design meeting.
  • Twenty Seventeen
    • There are a few potential customize-related projects. It’s all tentative, but the customize team should be prepared to spend some time at a minimum reviewing and finalizing patches/commits, and where there’s interest, helping to scope, design, and develop these features.
    • Video headers will start as a theme feature, with the possibility of becoming a core add_theme_support (under the customize component) or (maybe) moving to a media ticket for per-post featured media. If it’s in core we may need to refactor 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, but ideally we’d keep it separate, due to the complexity of that feature.
    • A multi-content page feature of some sort will exist in the theme, and may require a core API, which may be in the customizer. This is being discussed in #37974. See also this pull request.
    • Visible edit links (#27403) are desired, but this will take some major UX work. @westonruter suggested that it could be a theme-specific feature, where the theme has to provide styling for them. Ideally, though, it should work for all themes with selective refresh partials providing support for specific features.

Additional Tickets Needing Attention

  • Improve custom background properties UI – #22058 – needs additional feedback and clarification on the latest proposal and patch.
    • Discussed in the design meeting, and we’re generally on the same page on the preferred direction here.
  • Customizer notifications – #35210 – needs UX feedback and a patch
    • Discussed during the design meeting. Next step is for @westonruter to make a patch to facilitate the next round of feedback.
    • This ticket is holding up some of the other tickets on the 4.7 milestone, such as #22037 and #29932, as well as transactions.
  • Remove customizer support for IE8 – #38021
    • If anyone has objections, bring them up ASAP. All links to the customizer will be hidden in IE8 with this change.

Ticket Scrub

We reviewed the bugs in the Future Release milestone that have a patch.

  • #36908: Customizer menus and widgets “search” usability and visual improvements
    • Has a recent patch, assigned to @afercia for review and commit.
  • #21492: Theme customizer > Static front page: missing error message when front page and posts pages are similar
    • Patch needs to be reworked to leverage the notifications API added in 4.6. It would also be better to disable the option for the selected page in the other dropdown.
  • #23225: Customizer is Incompatible with jQuery UI Tabs
    • This is pending customizer transactions and #30028 (loading the customizer preview with natural URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org), and the patch on the ticket doesn’t fix the issue.
  • #37032: Guard against infinite reload when setting change causes premature selective refresh
    • Needs testing. If anyone’s interested, please try out the patch and leave feedback on the ticket!
  • #34344: Expanded section margin-top glitches when other section is deactivated
    • This is fixed by the 4.7 project that includes #34391, along with another 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.. We’ll revisit the ticket after the commit to verify that it’s fixed as intended.
  • #32577: Customizer QUnit tests not cleaning up
  • #36191: Support responsive images in WP_Customize_Media_Control
    • Work here is being led by the media component. We’ll leave it in future release until they’re ready to revisit it.
    • Note that this ticket is for images in the customizer controls pane. Responsive images on the frontend for images selected in the customizer are a separate topic.
  • #33267: Customizer Theme details: too many events
    • We’ll revisit after work on #37661 is complete, as there are major changes there.
  • #33085: Customizer: controls description inside labels are not real labels nor descriptions
    • The patch here is quite large; @westonruter noted an adjustment that needs to be made and moved the ticket to 4.7. We should get this fixed.
  • #25156: get_custom_header() should return false when there is no header
    • Decided to close the ticket as maybelater due to lack of movement/interest in fixing.

Recent Customize Commits

Here are the customize-related commits for the past week:

  • [38602]: Customizer: Better hover/focus state for section titles and available widgets.
  • [38587]: Customize: Implement previewing of form submissions which use the GET method.
  • [38584]: Menus: Prevent non-published posts/pages from being returned in search results for available items, to match behavior in the customizer.

Big thanks to those who contributed to patches committed this week: @welcher, @westonruter, @celloexpressions, @folletto, @hugobaeta.

We’re always looking for more contributors; check out the open customize tickets and swing by #core-customize in 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/. to get involved. Fun fact: we’re 15 commits away from the 1000th commit that references customize.

Agenda for 2016-09-19 Meeting

Our next regularly-scheduled meeting is next Monday, September 19, 2016, 17:00 UTC. Agenda:

4.7 Projects

Additional Tickets Needing Attention

  • Customizer notifications – #35210 – needs UX feedback and a patch
  • Customizer UI Contrast/Focus Styles – #29158 – needs UI ideas for focus styles on back buttons.

Ticket Scrub

  • Customize tickets without replies. Reply to tickets before the meeting to make the list shorter 🙂
  • We’ll pick a different query to triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. each week. For example, bugs awaiting review (need verification).

We’ll see you next week!

#4-7, #customize