Core themes chat summary for September 4, 2019

These are the notes for the weekly Twenty Twenty meeting which takes place on Mondays. You can read the full transcript on the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.-themes SlackSlack Slack is a Collaborative Group Chat Platform The WordPress community has its own Slack Channel at channel (archive link) and find the meeting’s agenda here (also on Slack, for this first one).


Thanks all around

The Twenty Twenty GitHub repo was made public on Friday, and there’s been a flurry of activity over the weekend with numerous issues posted and Pull Requests created. We’ll be working through them and will try to address all of them in time.


It’s a tight deadline, with just two weeks left until 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. 1, so major topics other than those alredy in the agenda were encouraged to be kept to GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner.

Discussion Topics


Non-latin font fallbacks

A ”Support for non-latin font fallbacks” issue (#118) has been created, with calls for suggestions on which font fallbacks to include for each alphabet. There are lots of alphabets yet to be added, so suggestions are welcome. The issue could also use suggestions on how to best include the CSSCSS Cascading Style Sheets. for the different alphabets. @nielslange offered to take a closer look at that.

Whether to bundle a font

One proposed solution was to limit the font-family setting to serif and sans-serif. That led to a bigger discussion about whether a bundled font should be used, or if we should rely on a stack of system fonts like Twenty Nineteen. The arguments for using system fonts were that it reduces the size of the theme, and the page size of sites using it. The argument against is the user experience being uneven depending on which system the visitor uses. The discussion will be continued on GitHub.

Build Tools

Due to the tight deadline, the team has decided not to go overboard with using build tools for the theme.


The structure of the 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. menu locations was brought up by @joyously. Currently, the theme is intended to use three menu locations for the header. One for mobile, and two for desktop: a horizontal, traditional one, and one hidden behind a toggle. The arguments against the structure is that it could be confusing to the user, for two reasons:

  • The distinction between the two different desktop menus would not be clear
  • Users might not set a menu to the mobile menu location, and not understand why a menu is not displayed on mobile

A suggestion was made that the mobile menu can fall back to either the horizontal menu or the modal menu, if the mobile menu has not been set. The discussion will continue in a GitHub issue (#164).

MigrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. from jQuery to Vanilla JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.

@fabiankaegy has created a PR for converting the currently jQuery based construct.js file to a Vanilla 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. one, using @wordpress/scripts. The discussion around it centered on whether @wordpress/scripts was needed. It was argued that including it adds a barrier of entry to new contributors, and that given the small amount of JavaScript needed to replicate the current jQuery functionality, @wordpress/scripts wasn’t needed. @fabiankaegy has since added a new PR without the build tooling, which can be found here: #163.

@audrasjb also raised concerns about removing the jQuery from the theme entirely, as the adminadmin (and super admin) bar doesn’t function correctly when jQuery is not enqueued by the theme. This is described more in detail in an issue for Twenty Nineteen. @williampatton will try to look at the issue in Core and check if a fix is doable by 5.3. If a fix is not included in 5.3, it was decided that Twenty Twenty will enqueue jQuery when the admin bar is displayed, same as Twenty Nineteen.

Open floor

Due to the meeting already running 30 minutes long at this point, the open floor was skipped.