Home > database >  Font size names and defaults from theme.json for paragraph blocks in Wordpress
Font size names and defaults from theme.json for paragraph blocks in Wordpress

Time:03-27

I am using theme.json to set font sizes for paragraph blocks, like so...

...
"core/paragraph": {
    "typography": {
        "customFontSize": false,
        "customLineHeight": false,
        "dropCap": true,
        "fontSizes": [
            {
                "name": "Small",
                "slug": "small",
                "size": "clamp(14px, 1.25, 28px)"
            },
            {
                "name": "Medium",
                "slug": "medium",
                "size": "18px"
            }
        ]
    }
},
...

This works fine and the font sizes are selectable when a paragraph is added to the page, but the font size names come through as integers, 1 & 2:

paragraph font sizes

When I change the value of small to be a pixel size like 14px then the names are the pixel sizes without 'px':

paragraph font sizes

Two questions:

  • How can I set meaningful font size names to appear in the editor sidebar?
  • How can I set a default font size that is pre-selected?

Thanks.

CodePudding user response:

In your example with "small" set to clamp(14px, 1.25, 28px) the Using clamp

Eg. Using px

Using pixels

If you have more than five font sizes set, the component will instead render a drop down list / select of the font size names:

More than five font sizes

It's potentially an oversight in the way "clamp" is handled, but also there are many changes happening to theme.json and building block based themes is still very much in development, so this could change..

Tested in WordPress 5.9.2, no Gutenberg plugin.

  • Related