Page edit auto-creates blank revision and editor

The problem turned out to be the transition from utf8 encoded databases to utf8mb4.

Apparently the editor was getting a silent error and defaulted to dropping the transaction.


The Solution: Recently WordPress has started switching to using utf-8mb4, so most people probably need to change their charset <meta charset="UTF-8" to <meta charset="UTF-8mb4">. Very old and out of date blogs may need to convert from latin1.

Most of the time your meta tag is filled in using bloginfo( "charset" ), which is pulled straight from your database, specifically your wp_options table.

‘charset‘ – Displays the “Encoding for pages and feeds” set in Settings > Reading. This data is retrieved from the “blog_charset” record in the wp_options table. Note: this parameter always echoes “UTF-8”, which is the default encoding of WordPress.

Therefore you can open your database and change the field, if you’d like. From UTF-8 to UTF-8MB4.

Or you can just hack it into your theme like so…

<meta charset="<?php bloginfo( 'charset' ) ?>mb4">