New emoji’s / emoticons are unicode characters that contain 4 bytes per character. Older database character sets such as utf8 cannot store these characters, due to which saving a post in WordPress fails when it contains such characters. To fix this you need to convert the character set to utf8mb4.
- Open phpMyAdmin and go to home
- Export the database as a backup
- At the top, click the server name, then under the general settings change the ‘Server connection collation’ to utf8mb4_unicode_ci
- Select the database and go to ‘Operations’
- Under collation, select utf8mb4_unicode_ci
- Also enable the ‘Change all tables collations’ option *
- Also enable the ‘Change all tables columns collations’ option *
- Click [Go]
- Select the database again
- Select all tables
- Run a repair + optimize
Source: https://mathiasbynens.be/notes/mysql-utf8mb4 **
* If your version of phpMyAdmin doesn’t have that option you can use the ‘WP phpMyAdmin’ plugin.
** You don’t need to alter the tables and columns, that automatically happens with this procedure. If not see also https://wordpress.stackexchange.com/questions/195046/relaunch-4-2-utf8mb4-database-upgrade.