- 昨日、WordPress6.5にアップデートしたところ、ブログカードを再編集したときに、URLの間に空行が追加されることに気づきました。
- どうも、ブロックエディタのブログカード内での改行の仕様が変更になっているようです。
- Cocoon バージョン:2.7.2.5で修正されました。
1. ブログカードが妙に縦に伸びている
ブログカードに複数URLを挿入する運用をしています。
WordPress6.5にアップデート後に、ブロックエディタの編集画面をみていたら、ブログカードが妙に縦に伸びていました。
どうも、勝手に空行が追加されているようです。
空行を消してから記事を更新しても、エディタで再表示すると、また空行が追加されます。
ただし、エディタを再表示する度に空行が追加されるわけではありません。
2. サイト表示では問題ない
公開されている記事上の表示には問題はありませんでした。
特に、ブログカードの間に空行があったりはしません。
3. ブロックエディタの仕様変更が原因?
今回のWordPress 6.5へのアップデートでは、かなりブロックエディタの機能が更新されています。
どうも、ブロックエディタの改行の認識の仕様が変更になっているようです。
というのも、ブログカードのHTML表示をみると、改行と<br>それぞれを入れてあります。
<div class="wp-block-cocoon-blocks-blogcard blogcard-type bct-none">
こちらもどうぞ。
<br>
https://chiilabo.com/2020-05/lets-start-programming-class/
<br>
https://chiilabo.com/2023-04/vulnerability/
<br>
https://chiilabo.com/2024-03/macos-update-sonoma-14-4-1/
<br>
https://chiilabo.com/2024-02/chatgpt-bug-and-fix-update/
</div>
それが、両方とも改行として認識されているのかもしれません。
そのため、改行が2つ続くのです。
4. WordPress 6.3へのアップデート時に「逆の現象」
これは、以前 WordPress 6.3へのアップデート時に「逆の現象」がありました。
そのときは、改行が認識されず URLが連続してしまい、正しいブログカードが表示できないエラーでした。
5. Cocoon 2.7.2.4での修正(blocks/src/block/blogcard/save.js)
Cocoon フォーラムに報告したところ、修正版を公開していただきました。
原因と思われる部分を修正してみました。
参照:https://wp-cocoon.com/community/postid/78355/
「blocks/src/block/blogcard/save.js」の保存時の
「.replace( /<br>/g, '\n<br>\n' )
」という置換処理が削除されたようです。
「Code」の「Download ZIP」から最新版のテーマをダウンロードします。
既存のcocoon-masterのバックアップを取ってから、インストールします。
5-1. あれ?動作しない?
ところが、うまく動作していませんでした。
ブロックエディタ上は無駄な改行はなくなったのですが、今度はサイト表示したときにブログカードに変換されなくなってしまいました。
どうも、<br>で区切られていた複数のURLが、一つになってしまっているようでした。
ここで、HTML表示にして、<br>を消して、改行コードに変更すると、動作することがわかりました。
6. Cocoon 2.7.2.5での修正(blocks/src/block/blogcard/edit.js)
改めて、修正版を公開していただきました。
変更箇所を見てみると、「blocks/src/block/blogcard/edit.js」で、文字列置換処理が追加されていました。
今回は無事にブログカードで、複数の記事をカードにできるようになりました。