Bringing CSS Grid to WordPress Layouts
WordPress 5.0 (released on December 6, 2018) has revolutionized the platform, with the heart of which is the block editor (Gutenberg). This marks the most significant innovation since the introduction of the custom article genre in version 3.0. The block editor replaces the classic editor, which is too simple in design concepts to be competent for the needs of modern web layout.
Classic editors focus mainly on text editing, while block editors use "blocks" as the basis to break down page content into atomic units (text paragraphs, pictures, embedded content, etc.). This structured way of content organization is the most significant advantage of block editors.
Layout plan before block editor
Before the block editor appeared, WordPress layout mainly relied on two methods:
- Custom templates: code is required, and the threshold is high for most users.
- Page builder plug-in: provides visual layout tools, but usually there are problems such as slow speed, poor user experience, and closed ecosystem.
The disadvantages of the page builder plugin are:
- Performance issues: In order to have comprehensive functions and huge code volume, it affects the speed of the website.
- User experience: Some plug-in editing experience is poor.
- Eco-locking: It is difficult to migrate to other platforms or tools.
The block editor is designed to solve these problems, provide users with a better writing experience, and provide developers with a unified API.
A brief history of CSS layout
Early CSS (1996) was mainly used for text styles and simple element typesetting. Due to the lack of concepts and mixed content and styles of semantic HTML, a large number of tables are used for layout, resulting in code redundancy and difficulty in maintaining.
Subsequently, the Web Standards campaign advocates separation of content and styles, and uses div elements and float attributes for layout. Although more flexible than tables, the clearing mechanism of float attributes increases complexity.
In 2012, the release of the Flexbox specification solved many layout problems, and its concise syntax greatly reduced the amount of code.
CSS Grid: 2019 layout tool
In 2017, the CSS Grid layout module was officially released. Compared to Flexbox, Grid supports two-dimensional layouts, allowing for more flexibility in controlling the position of elements on the page without relying on HTML tag order.
The basic principle of Grid is to divide the page into row-column grids and lay out by specifying the location of elements in the grid. This greatly simplifies the code and does not require changing the HTML structure when modifying the layout.
The following example shows the basic usage of Grid:
<code>.my-container { display: grid; grid-template-columns: repeat( 3, 1fr ); grid-template-rows: repeat( 2, 1fr ); } .element-1 { grid-column-start: 2; grid-column-end: 4; grid-row-start: 1; grid-row-end: 3; }</code>
Grid also supports defining named areas using grid-template-areas
attributes to further simplify layout.
<code>.container { display: grid; grid-template-areas: "header header header header" "main main . sidebar" "footer footer footer footer"; }</code>
Using CSS Grid in WordPress
In order to simplify the application of CSS Grid in WordPress, we have developed the Grids plugin. This plugin provides a visual Grid layout tool in the block editor, combining a 12×6 grid with a drag-and-drop area, where users can set size, background, and responsive behavior through visual controls.
The advantages of the Grids plugin are:
- Integrated with Block Editor: Seamlessly connect the Block Editor for easy use.
- Lightweight: The generated HTML tag is concise and avoids redundant code.
- Scalability: Supports custom styles and extension functions.
The styles generated by the Grids plug-in are added to the page header inline styles for easy caching.
Looking forward to your feedback!
In order to promote the application of CSS Grid, we need more automated layout tools. The Grids plug-in is designed to simplify the layout of CSS Grid in WordPress, looking forward to user feedback and continuous improvement and improvement.
The above is the detailed content of Bringing CSS Grid to WordPress Layouts. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

It's out! Congrats to the Vue team for getting it done, I know it was a massive effort and a long time coming. All new docs, as well.

With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum

I had someone write in with this very legit question. Lea just blogged about how you can get valid CSS properties themselves from the browser. That's like this.

The other day, I spotted this particularly lovely bit from Corey Ginnivan’s website where a collection of cards stack on top of one another as you scroll.

I'd say "website" fits better than "mobile app" but I like this framing from Max Lynch:

There are a number of these desktop apps where the goal is showing your site at different dimensions all at the same time. So you can, for example, be writing

If we need to show documentation to the user directly in the WordPress editor, what is the best way to do it?

Questions about purple slash areas in Flex layouts When using Flex layouts, you may encounter some confusing phenomena, such as in the developer tools (d...
