Understanding and Testing Font Library Feature with block editor theme

Font Library in WordPress 6.5 allows users to opt-in to a collection listing for Google Fonts. To comply with GDPR, installing a Google Font uploads the file to the site. When a Font Collection is registered, it will appear in the Font Library UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. in the editor. From here, users can install and activate fonts from the collection.

Before we start testing, we need to first prepare the test environment.

Test Setup

Local Environment

If you have a local development environment running WordPress 6.5 to get started.

Another option is to test with wp-now (requires Node.js), which you can launch from a command line. After following the wp-now setup guide, you will be able to:

  • In your terminal run: npx @wp-now/wp-now start
  • Navigate to Plugins > Add New 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 install and activate GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/.

WordPress Playground

To test only using your browser (no installation required), try out Playground. These links open WordPress directly in your browser and automatically install Gutenberg so that you can start testing right away.

(Playground limitation: Due to browser network security policies, you will be unable to test installation of Google fonts. However, you can test uploaded fonts.)

Things to Test

Here are some suggestions for functionality to test, but you are encouraged to experiment beyond these:

  • Upload fonts using the upload dialog and drag-and-drop.
  • Install fonts from Google Fonts using the Install Fonts tab.
  • Verify that uploaded/installed font assets are stored in your site’s /wp-content/fonts/ directory.
  • Activate/deactivate individual font variants.
  • Compare active fonts with the list on the Styles > Typography 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..
  • Assign custom fonts to elements (like text or headings) on the Styles > Typography sidebar.
  • Assign custom fonts to specific blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. types (like buttons) in Styles > Blocks.
  • Check how the fonts appear on your site’s frontend.
  • Delete an uploaded font family, and verify that the font assets are removed from /wp-content/fonts/

So these are the possible areas which we should consider testing. Later part of this post explains some of them with details along with step by step instructions.

Let’s check on how we can achieve this.

When you go to the Dashboard -> themes -> editor -> Choose the component (Navigation, Templates, Patterns, Style etc)-> site icon


Here, click on the style icon, and it will open up an option for typography. This shows us the fonts.


Now, once you click on this icon, you will get a font manager option here. And with the help of it one can install, upload, activate/deactivate, delete the fonts.


In the font manager you can see what fonts you have and look at the variants from the Library tab.


Here, on the Upload tab you can upload fonts if you have already uploaded some, and it tells you the formats that are acceptable. 


And on the Install Fonts tab you can install Google Fonts.


These are the main areas of the Font Library. Now, let’s go into the details on how we can test this from various aspects. 

1. Font Collections: Editor View/Admin 

Test Scenario: Verify that Font Collections are correctly displayed in the Font Library UI and can be installed and activated by the user.

Steps to Test:

  1. Log in to the site dashboard as an administrator.
  2. Navigate to a post or page editor. 
  3. Locate the Font Library UI section.
  4. Click on the Font Manager Icon.
  5. Try installing and activating fonts from the available Font Collection.
  6. Ensure that the font appears in Typography after the installation, and the user should be able to use it; the changes should be reflected based on selected fonts in the Editor and on the frontend.
  7. Ensure that search and categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. filters are working properly.

2. Adding and Removing Font Collections Programmatically

Test Scenario: Ensure that Font Collections can be added and removed programmatically using the provided functions.

Steps to Test:

  1.  Try avoiding the theme’s function.php file. Instead, create a custom plugin with a given code snippet.
  2.   Use wp_register_font_collection() to add a new Font Collection.
  3.   Verify that the newly added collection appears in the Font Library UI.
  4.   Use wp_unregister_font_collection() to remove a Font Collection.
  5.   Confirm that the removed collection is no longer available in the Font Library UI and is gone from the fonts folder (by default, it is /wp-content/fonts/).

We can add a list of font families with their font faces in either PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. http://php.net/manual/en/intro-whatis.php. or 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. format as part of the Font Collection array.

The JSON format for the font_families field can be a local path or a remote URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org that points to the JSON file. Please walk through the code shared below when using PHP to add Font Collection.

$font_families = [
array(
'font_family_settings' => (
array (
'fontFamily' => 'Open Sans, sans-serif',
'slug' => 'open-sans',
'name' => 'Open Sans',
'fontFace' => array (
array (
'fontFamily' => 'Open Sans',
'fontStyle' => 'normal',
'fontWeight' => '300',
'src' => 'https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4iY1M2xLER.woff2',
),
array (
'fontFamily' => 'Open Sans',
'fontStyle' => 'italic',
'fontWeight' => '400',
'src' => 'https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVIUwaERZjA.woff2'
),
),
)
),
'categories' => [ 'sans-serif' ],
),
array(
'font_family_settings' => (
array (
'fontFamily' => 'Monoton, system-ui',
'slug' => 'monoton',
'name' => 'Monoton',
'fontFace' => array (
array (
'fontFamily' => 'Monoton',
'fontStyle' => 'normal',
'fontWeight' => '400',
'src' => 'https://fonts.gstatic.com/s/monoton/v19/5h1aiZUrOngCibe4fkPBQ2S7FU8.woff2',
'preview' => 'https://s.w.org/images/fonts/17.7/previews/monoton/monoton-400-normal.svg'
),
),
)
),
'categories' => [ 'display' ],
),
array(
'font_family_settings' => (
array (
'fontFamily' => 'Arial, Helvetica, Tahoma, Geneva, sans-serif',
'slug' => 'arial',
'name' => 'Arial',
)
),
'categories' => [ 'sans-serif' ],
),
];

$categories = [
array(
'name' => _x( 'Display', 'Font category name' ),
'slug' => 'display',
),
array(
'name' => _x( 'Sans Serif', 'Font category name' ),
'slug' => 'sans-serif',
),
];

$config = array (
'name' => _x( 'My font collection', 'Font collection name' ),
'description' => _x( 'A collection of my favorite fonts.', 'Font collection description' ),
'font_families' => $font_families,
'categories' => $categories,
);

wp_register_font_collection ( 'my-font-collection', $config );

To remove the font collection, use the code shared below.

add_action( 'init', function() {
wp_unregister_font_collection( 'default-font-collection' );
} );

3. Installing and Activating Fonts

Test Scenario: Validate the process of installing, activating, and deactivating fonts within the Font Library.

Steps to Test:

  1. Install a font from a Font Collection.
  2. Verify that the font settings are saved.
  3. Activate the installed font and check if it reflects in Global Styles.
  4. Switch to a new theme and ensure installed fonts can be reactivated.
  5.  Deactivate a font and confirm its removal from Global Styles.

4. Customizing Fonts Upload Directory location

Test Scenario: Test the customization of the fonts upload directory and ensure proper functionality.

Steps to Test:

  1. Modify the fonts upload directory using the font_dir 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..
  2. Check if fonts are uploaded to the specified directory.
  3. Verify that wp_get_font_dir() returns the customized directory path.
  4. Ensure that the chosen directory has correct permissions for file operations.

For example, wp-content/uploads directory, the fonts upload directory will not adhere to wp_is_file_mod_allowed / DISALLOW_FILE_MODS to prevent font uploads. Alternatively, if we have no clarity on permissions, we can also create a new folder with the current set of permissions.

The example below changes the fonts directory to the WordPress “Uploads” directory (by default, this is /wp-content/uploads/)

Here is the code sample that helps in customizing the fonts. 

function alter_wp_fonts_dir( $defaults ) {
$wp_upload_dir = wp_get_upload_dir();
$uploads_basedir = $wp_upload_dir['basedir'];
$uploads_baseurl = $wp_upload_dir['baseurl'];

$fonts_dir = $uploads_basedir . '/fonts';
// Generate the URL for the fonts directory from the font dir.
$fonts_url = str_replace( $uploads_basedir, $uploads_baseurl, $fonts_dir );

$defaults['path'] = $fonts_dir;
$defaults['url'] = $fonts_url;

return $defaults;
}
add_filter( 'font_dir', 'alter_wp_fonts_dir' );

5. Disabling the Font Library

Test Scenario: Verify that the Font Library can be disabled in terms of both UI and REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/..

Steps to Test (UI Disable):

  1. Use a filter to customize editor settings and disable the Font Library UI.
  2. Access the post or page editor and confirm the absence of Font Library features.

Use this code snippet shared below.

function disable_font_library_ui( $editor_settings ) {
$editor_settings['fontLibraryEnabled'] = false;
return $editor_settings;
}

add_filter( 'block_editor_settings_all', 'disable_font_library_ui' );

Steps to Test (REST API Disable):

  1. Use unregister_post_type() to remove Font Library-associated post types and REST API endpoints.
  2. Check if the Font Library functionality is completely disabled without affecting other editor features. This can verified by visiting the 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. Endpoint URL: /wp-json/wp/v2/font-families

Use this code snippet shared below.

add_action( 'init', function() {
unregister_post_type( 'wp_font_family' );
unregister_post_type( 'wp_font_face' );
} );

6. Testing New REST API Endpoints

Test Scenario: Validate the functionality of the new Font Library REST API endpoints.

Steps to Test:

  1. Use tools like Postman or cURL to make requests to wp/v2/font-collections, wp/v2/font-families, and wp/v2/font-families/<id>/font-faces endpoints.
  2.  Verify the responses for predefined font collections, font families, and font faces.
  3.  Ensure that the API endpoints follow RESTful conventions and return expected data structures. For more details, please check this ticket.

Additional Considerations:

  • Test cross-browser compatibility for Font Library UI including mobile browsers.
  • Test performance impact of installing multiple fonts and switching themes.
  • Verify that font-related functionalities align with WordPress coding standards and best practices.
  • Check for any potential security vulnerabilities related to Font Library operations.
  • Please refer to the related issue tickets for more updates.

By following these comprehensive testing steps, you can ensure a thorough evaluation of the Font Library feature in WordPress 6.5.

Resources for more Guide

Resources for more Guidehttps://www.youtube.com/watch?v=Pnx_nkB-O2E 
REST APIhttps://developer.wordpress.org/rest-api/reference/ 
Font Library Revised API Designhttps://github.com/WordPress/gutenberg/issues/57616 
Articlehttps://make.wordpress.org/core/2024/03/14/new-feature-font-library/ https://make.wordpress.org/test/2023/10/03/help-test-the-font-library/ 

How to report an issue

  1. Record or write down by steps how an issue can be reproduced.
  2. Use Test report plugin to collect all essential information about the site you are testing.
  3. Check if there is a related ticket in TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. and add your report to it or create a new one. In the case of the Font Library,  start the ticket’s summary with Font Library, the component will be Editor and before the 6.5 release version will be trunk.

A big thank you to @ankit-k-gupta @webtechpooja @oglekler and @vipuljnext for reviewing this post.

Highlighted Posts

Categorize a post as Highlight to add it to this section.

Test Team Profile Badge – Your Feedback Needed!

In the Test Team, we are planning to create a handbook page to provide criteria for earning the Test Team Badge. After discussions, we have finalized the criteria listed below to earn the Test Team Badge. There are a few recommendations that we should consider before incorporating them into the handbook.

If you would like a badge on your 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/ profile that acknowledges your contributions to the Test Team, the following criteria must be met:

Test Contributor Badge

To earn a Test Contributor Badge, you must have completed at least one of the following:

  • Submitted a test report comprising at least 3 tickets for testing instructions, issue reproduction, or patch testing either on WordPress or GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/. Please note that reports can be submitted, whether it’s on TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. or GitHubGitHub GitHub is a website that offers online implementation of git repositories that 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. https://github.com/.
  • Reported an issue on Core Trac or the Gutenberg GitHub repo which has been fixed and merged into a WordPress release.
  • Submitted unit or end-to-end tests that have been merged.
  • Contributed to a Test handbook PR that has been merged.
  • Participated in ZIP package builds or default theme tests during a #core <release-party>.
  • Participated in a 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/. (as a table lead, providing technical support, or assisting with onboarding).
  • Suggested a thoughtful idea aimed at improving testing processes in any way, which gets implemented.

Test Team Badge

If you have served as a Test Team RepTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. or Test Lead in any major releaseMajor Release A set of releases or versions having the same major version number may be collectively referred to as “X.Y” -- for example version 5.2.x to refer to versions 5.2, 5.2.1, and all other versions in the 5.2. (five dot two dot) branch of that software. Major Releases often are the introduction of new major features and functionality. of WordPress, you are eligible for the Test Team badge.

How to Request a Test Team Badge?

If you meet the criteria mentioned above, you can request a badge using this link. You will have to include details that demonstrate you have met the criteria mentioned above.

Upon request, a Test Team Rep will confirm your contribution(s) and assign you a badge. There will be a monthly review of contributions, and badges will be awarded at that time. The Test Team will post updates on newly awarded profile badges on the Test Team blog.

Call for feedback.

What do you think of the suggested criteria? Please leave your thoughts on this post by Friday, 22 March 2024.


Core Test Team at WCAsia 2024

WordCamp Asia 2024 is almost here! It takes place from March 7-9 at the Taipei International Convention Center (TICC), Taiwan. As is customary at 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. events, a Contributor Day will be held, taking place on Thursday, March 7.

🕰️ Important Times to Note:

Join the Test team in person or contribute remotely. We can’t wait to see you!

Contribute

The WordPress project offers numerous opportunities for contribution through testing. Some common ways to participate are to:

If none of the above sounds right, or you simply wish to know what contributing to WordPress with testing is all about, please stop by the table to chat or join #core-test channel.

Be Prepared

To ensure you get the most out of 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/., please review the following before the event so that you can focus on the fun stuff when you arrive:

Stay Updated

In addition to keeping the WCAsia 2024 homepage handy, join the #core-test and #contributor-day channels in Make WordPress 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/., and follow #wcasia for other event updates.

Share Your Thoughts

If you have any questions about Contributor Day or the Test Team, please leave a comment below or reach out on the #core-test Slack channel.

Also, if you’re attending Contributor Day in person, let us know in the comments!

Interested in Contributor Day, but not sure if Test is the right fit for you? Try out Make WordPress’s Find Your Team tool to discover other opportunities that may interest you.

Props to @ankit-k-gupta and @oglekler for peer review of this post.

#wcasia

Weekly Meeting Time Change Announcement

Based on our poll results and what we got from our Proposal to change the Weekly Meeting Time post, we concluded our next meeting time. The new meeting time is as follows:

As of this week, the bi-weekly Test team chat meeting will change from 16:00 UTC to 11:00 UTC. This will be reflected in our next meeting, which will be on December 19, 2023.

Along with the Bi-weekly Test team Triage meeting, it will change from 16:00 UTC to 11:00 UTC. This will be reflected in our next triage meeting, which will be on December 12, 2023.

#meeting, #test

Proposal to change Weekly Meeting Time

@ankit-k-gupta and I recently had a conversation about our weekly team meetings. Our primary focus was finding ways to boost participation and encourage more individuals to contribute. However, we encountered a scheduling issue related to the occasional overlap between our meetings and the release cycle parties (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./RCRelease Candidate A beta version of software with the potential to be a final product, which is ready to release unless significant bugs emerge.). As a result, there have been instances when we’ve had to cancel our Test team meetings to accommodate the WordPress Release parties. In light of this situation, we would like to propose an alternative day and time for our weekly meeting.

We have created a Doodle poll for you to help us determine the new day and time for our weekly meeting. Your input is essential, so please take a moment to cast your vote.

Doodle poll – https://doodle.com/meeting/participate/id/dBn2rRNd 

Please Comment on your suitable time below in comments:

Tuesday: 7:00 – 8:00 UTC
Tuesday: 10:00 – 11:00 UTC
Tuesday: 11:00 – 12:00 UTC
Tuesday: 12:00 – 13:00 UTC
Tuesday: 14:30 – 15:30 UTC

Wednesday: 6:00 – 7:00 UTC
Wednesday: 7:00 – 8:00 UTC
Wednesday: 10:00 – 11:00 UTC
Wednesday: 11:00 – 12:00 UTC
Wednesday: 12:00 – 13:00 UTC
Wednesday: 14:30 – 15:30 UTC

Thursday: 6:00 – 7:00 UTC
Thursday: 7:00 – 8:00 UTC
Thursday: 10:00 – 11:00 UTC
Thursday: 11:00 – 12:00 UTC
Thursday: 12:00 – 13:00 UTC
Thursday: 14:30 – 15:30 UTC

Friday: 6:00 – 7:00 UTC
Friday: 7:00 – 8:00 UTC

Please make sure to submit your vote by no later than November 21, 2023. December 5, 2023 (we are extending this poll for two weeks.)

Props to @ankit-k-gupta for peer review of this post.

#meeting

Introducing: Test Team Reps for 2023-2024

Following this year’s nominations and voting period, we are pleased to announce our new Test Team Reps for the 2023-2024 term! 🎉 Join us in welcoming Pooja Derashri and Ankit K Gupta to represent the Test team!

Election Results | Detailed Results

Pooja Derashri (@webtechpooja)

Pooja got involved with WordPress in 2013 as a developer. In 2015, she co-founded WPVibes, a 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 development company. It was in 2017 when she attended her first 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., started getting involved in the WordPress community, and started her contribution journey.

Within the project, she has served as Co-Team RepTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. of the Training Team for the 2022 & 2023 term. She has been a noteworthy contributor to the WordPress 6.1 release. She is part of the release squad for 6.3 as Test Co-lead and 6.4 as Test Lead. She is also GTEGeneral Translation Editor General Translation Editor – One of the polyglots team leads in a geographic region https://make.wordpress.org/polyglots/teams/. Further information at https://make.wordpress.org/polyglots/handbook/glossary/#general-translation-editor. of Hindi locale and co-organizer of Ajmer WordPress MeetupMeetup All local/regional gatherings that are officially a part of the WordPress world but are not WordCamps are organized through https://www.meetup.com/. A meetup is typically a chance for local WordPress users to get together and share new ideas and seek help from one another. Searching for ‘WordPress’ on meetup.com will help you find options in your area..

Pooja’s dedication to WordPress was acknowledged with the Kim Parsell Scholarship, granting her the opportunity to attend WCUS 2022. However, she couldn’t attend the event due to visa issues. In 2023, she was one of the organizers of the inaugural WordCamp Asia.

Pooja lives in Ajmer, a beautiful city in Rajasthan, India. Beyond her WordPress endeavors, she enjoys gardening, exploring new places, and listening to music.

You can read more about Pooja on her profile page.

Ankit K Gupta (@ankit-k-gupta)

Ankit holds a Master’s Degree in Computer Applications, a testament to his dedication to the field of technology. His journey in the tech world commenced as a computer lecturer at a prominent college in Delhi. However, driven by his unwavering passion, Ankit made a pivotal career move in 2013, transitioning into Software Quality Engineering. Currently, Ankit serves as a Lead QA with the 10up OSP team.

Ankit’s professional mission revolves around ensuring a bug-free and user-friendly experience for everyone within the WordPress community.

His dedication to this mission has led him to become a coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. contributor to WordPress for an impressive ten consecutive versions, spanning from WordPress 4.0 to WordPress 4.9 and continuing into the 5.X and 6.X release series.

Beyond core contributions, Ankit has contributed to various releases of BuddyPress, bbPressbbPress Free, open source software built on top of WordPress for easily creating forums on sites. https://bbpress.org., Translation, WordPress Docs, and WordPress 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. sites. Furthermore, he holds the roles of editor and locale manager within the Hindi WordPress Polyglot team.

Outside of the professional realm, Ankit’s enthusiasm extends to sharing his knowledge and experience with others. He has been a speaker at numerous WordCamps and meet-ups centered around WordPress and Quality Assurance.

When he’s not immersed in the world of technology, Ankit cherishes quality time with his family. His leisure activities include embarking on long drives, exploring new places, and capturing the beauty of the world through his camera.

You can read more about Ankit on his profile page.

Congratulations 🥳 to our new reps! I look forward to supporting their move into the team rep role.

Props @webtechpooja and @costdev for peer review of this post.

+make.wordpress.org/updates/

#team-reps

Help Test the Font Library

Update: This one is the old post. Please check this one for the latest updated post: Understanding and Testing Font Library Feature with Block Editor Theme.

Released in Gutenberg 16.7, the Font Library is a major feature that was originally planned for sync into WordPress Core for the 6.4 release. It’s now slated for WordPress 6.5 and we need your feedback to help ensure it’s ready for the future.

Test Setup

Local Environment

If you have a local development environment running WordPress 6.3.x, just install Gutenberg 16.7 to get started.

Another option is to test with wp-now (requires Node.js), which you can launch from a command line. After following the wp-now setup guide, you will be able to:

  • In your terminal run: npx @wp-now/wp-now start
  • Navigate to Plugins > Add New 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 install and activate GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/.

WordPress Playground

To test only using your browser (no installation required), try out Playground. These links open WordPress directly in your browser and automatically install Gutenberg so that you can start testing right away.

(Playground limitation: Due to browser network security policies, you will be unable to test installation of Google fonts. However, you can test uploaded fonts.)

Things to Test 🧪

Here are some suggestions for functionality to test, but you are encouraged to experiment beyond these:

  • Upload fonts using the upload dialog and drag-and-drop.
  • Install fonts from Google Fonts using the Install Fonts tab.
  • Verify that uploaded/installed font assets are stored in your site’s /wp-content/fonts/ directory.
  • Activate/deactivate individual font variants.
  • Compare active fonts with the list on the Styles > Typography 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..
  • Assign custom fonts to elements (like text or headings) on the Styles > Typography sidebar.
  • Assign custom fonts to specific blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. types (like buttons) in Styles > Blocks.
  • Check how the fonts appear on your site’s frontend.
  • Delete an uploaded font family, and verify that the font assets are removed from /wp-content/fonts/.

Note that the Font Library currently only supports block themes, as it is only accessible through the site editor (Appearance > Editor).

Key Known Issues

This is a short list of common issues that will be updated as more testing reports are gathered.

  1. Font Library: Uploaded fonts do not always display correctly until after page refresh #55018
  2. Fonts: theme font family missing when editing individual blocks #55011
  3. Fonts: Switching style variations unchecks active fonts #54985
  4. Font Library: “update” button greyed out after uploading a new font #54881
  5. Font Library: Some installed Google fonts don’t display in editor or frontend #54706

Reporting Issues

If you find a bug that isn’t listed above, please make sure to check the Font Library issues list in GitHubGitHub GitHub is a website that offers online implementation of git repositories that 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. https://github.com/ before filing a new one. After checking, new bugs can be filed here.

Props @annezazu and @rmartinezduque for contributions and review of this post.

Test Team Reps: Submit Your Votes

From August 15 to September 22, 2023, the Test team opened nominations for new reps to serve over the 2023-2024 term. The polls are now open and ready for your votes!

What Are Team Reps?

For a refresher on the Test Team RepTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. role, please see the most recent call for nominations. The Test team will elect two team reps for the next term, to collaborate and share responsibilities.

Who Are the Nominees?

In alphabetical order, this term’s nominees are:

Where Can I Vote? 🗳️

Please cast your votes through this anonymous public poll. You may vote for two nominees, but once submitted, you cannot vote again.

And because many of you are testers and like to break test things 😉, please note that attempting to vote for all three at once will lock out your vote 🙅. Please resist the temptation to test the voting platform!

👉🏻 The poll will remain open for two weeks, until October 12, 00:00 UTC. After that, votes will be tallied and reps selected based on votes received.

#team-reps

Test Team Reps: Call for Nominations

Update: This call for nominations has been extended to 2023-09-23 00:00 (see comment below).

Update 2: Nominations for the 2023-2024 term are closed.

It’s time again to nominate the Test Team Reps who will serve for the next 12 months!

This Call for Nominations is open until 2023-08-31 12:00 2023-09-23 00:00. Please leave a comment identifying your nominee(s) before then.

For a quick refresher of Team RepTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. roles across the project, please see the Team Reps post on Team Updates.

The Role

Reps in the Test Team perform primary and secondary (or backup) duties to help support team chats, make updates to the team’s blog and handbook, remove blockers, keep a pulse on team objectives, and promote testing opportunities within the WordPress project.

As a reminder, Reps are not called “team leads” for a reason. While people elected as Team Reps will generally come from the pool of folks that people think of as experienced leaders, the Team Rep role is designed to change hands regularly.

Test Team Rep duties include:

These duties are shared between the primary and secondary Reps (see Rep Responsibilities on the Team Rep page).

Qualifications

A Rep is an active team member who is reliable and trusted, advocates for and is knowledgeable of one or more areas of testing, and wants to represent, nurture, and grow the team to better serve the WordPress open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. project.

Test Team Reps must be committed to showing up and performing regular duties, and should expect a time commitment of at least 2-4 hours per week. Reps serve for a term of one year.

How Test Team Elections Work

Step 1: Call for Nominations 📣

The first step is to reach out to the community with a Call for Nominations (this post!)

Please nominate in the comments of this post. You can write a comment as simple as “I nominate @the_persons_username.” Self-nominations are also welcome by leaving a comment such as “I nominate myself.”

Private nominations can be submitted by contacting @Piotrek Boniu or @ironprogrammer 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/..

If you’ve been nominated, please accept or decline the nomination as a reply to the same comment.

⏰ The deadline for nominations is 2023-08-31 12:00 2023-09-23 00:00.

After the deadline, each nominee will be contacted to discuss qualifications and to confirm their acceptance of the nomination.

If you get nominated, please do not feel like you have to say “yes”. It’s okay for you to decline the nomination if you don’t feel like this is the right fit for any reason. “Thank you, but no thank you!” 😉

Step 2: Vote for Team Reps 🗳

An election will happen only if there are more than two accepted nominations within the nomination period; otherwise the nominees will become the new Test Team Reps.

If held, the election will be conducted by an anonymous poll (example). The poll will remain open for 2 weeks.

Step 3: Announce Team Reps 🎉

Once uncontested nominations have been accepted, or in the event of an election the voting period has passed, the new Test Team Reps will be announced in a post (example).

Time to Nominate!

Are you ready? It’s time to nominate folks to serve as our Test Team Reps for the new term! If you have any questions, please feel free to ask in the comments.

Props to @boniu91 for review of this post.

+make.wordpress.org/updates/

#team-reps