Моя проблема <p>
теги размещаются вокруг загруженного изображения в CKEditor4. Обычно это не такая уж большая проблема, но в некоторых шаблонах (например, при начальной загрузке) начинает появляться CSS.
В настоящее время я получаю это после загрузки изображения:
<p><img src="https://web-answers.ru/wp-content/uploads/2019/02/example.jpg"></p>
Хотелось бы иметь только:
<img src="https://web-answers.ru/wp-content/uploads/2019/02/example.jpg">
Я попытался добавить (без успеха для изображений):
config.autoParagraph = false;
Я посетил много потоков здесь на stackoverflow и большинство из них ссылаются на WordPress, который я не использую. CKEditor находится в простой CMS для школьных блогов в локальной сети.
Найдена ссылка на плагин WordPress, который, как говорят некоторые, будет работать (убрать все ссылки из WP), но с треском провалился:
<?php
/*
Plugin Name: Paragraph Remover
Description: Removes paragraphs around images
Version: 0.1
Author: Martin Vlcek
Author URI: http://mvlcek.bplaced.net
*/
# get correct id for plugin
$thisfile = basename(__FILE__, ".php");
# register plugin
register_plugin(
$thisfile,
'PRemover',
'0.1',
'Martin Vlcek',
'http://mvlcek.bplaced.net',
'Removes paragraphs around images',
'',
''
);
# activate filter
add_filter('content','premover_replace');
function premover_replace($content) {
return preg_replace_callback("/<p>(?:\s| )*(<a[^>]+>)?(?:\s| )*(<img[^>]+>)(?:\s| )*(<\/a>)?(?:\s| )*<\/p>/",'premover_replace_match',$content);
}
function premover_replace_match($match) {
return $match[1].@$match[2].@$match[3];
}
Не может найти решение и надеется на какой-либо вклад. Либо плагин, либо JavaScript, либо PHP, это не имеет значения.
Задача ещё не решена.
Других решений пока нет …