【環境情報】
・baserCMSのバージョン:5.1.5
・レンタルサーバー名:XSERVER
・PHPスキル(自己評価):C
hgroupタグの下にpタグを設置することは現行の仕様上許容されていると思うのですが、hgroupタグの外にはじき出されてしまいます。
CKEditor4に起因しているならば、この問題と似ていると思いました。
ひとまず自動整形(ACF)を止めれば解決できるのではないかと考え、エディタのオプションを追加できるところを片っ端から試してみたのですが、整形を止めることはできませんでした。
allowedContent: true
とすればよい理解です。
とりあえず作用するかを確認したくvendor配下の以下のファイルを直接修正してみたのですが、ダメでした。
/vendor/baserproject/baser-core/src/View/Helper/BcCkeditorHelper.php
// build内にて
$setting = json_encode([
'editorOptions' => [
'allowedContent' => true,
]
/vendor/baserproject/bc-admin-third/webroot/js/vendor/ckeditor/config.js
CKEDITOR.editorConfig = function( config ) {
config.allowedContent = true;
無効にした経験がある方がおられましたら、どのファイルを修正したかご教示頂けると幸いです。よろしくお願いします。
大事なことを失念していました。
そもそもの発端はプレビューで表示が崩れることで、比較するとプレビューでは自動整形がかかってしまうことに気付いたことです。
それで当初はpタグでラップされていなかったので、HTMLの仕様に準拠してないのが原因だと思いラップしたけれども、CKEditorが自動整形させてしまうので、それを止められればと考えた次第です。
ただ、最初の「プレビューでは自動整形される」がCKEditorによる作用なのかが分からず、そちらが止められないと希望に適わないのが正直なところです。
(CKEditorだけの問題であれば、極論、ソースモードから直接保存すれば変換されないまま保存は可能。しかしプレビューで崩れるのは如何ともし難い)
buli
3
こんにちは。
私の方でも同じ現象が再現したので、どうにかならないかなと思い、少し調べてみました。
解決方法まではたどり着いてはいませんが、情報共有までです。
@macchaka さんの修正した箇所に加えて、
vendor/baserproject/bc-admin-third/src/js/admin/_lib/jquery.bcCkeditor.js
/**
* 基本設定
* @param config
*/
setUpConfig: function (config) {
CKEDITOR.config.allowedContent = true;
CKEDITOR.config.allowedContent = true;
CKEDITOR.config.extraPlugins = 'draft,showprotected';
CKEDITOR.config.stylesCombo_stylesSet = config.editorStylesSet;
CKEDITOR.config.protectedSource.push(/<\?[\s\S]*?\?>/g);
// 空「i」タグを消さないようにする
CKEDITOR.dtd.$removeEmpty["i"] = false;
// 空「span」タグを消さないようにする
CKEDITOR.dtd.$removeEmpty["span"] = false;
// ↓ を追記 ↓
// hgroupタグの中にpタグを許可する
CKEDITOR.dtd.hgroup.p = true;
// ↑を追記 ↑
上記の追加
その上で今変更した分を読み込まれているファイルに反映するには
admin-thirdのjs, cssのファイルをビルドする必要があるみたいです。