А Вы как предполагаете, вставку картинки отовсюду, в т.ч. с внешних ресурсов, или с возможностью загрузки на ваш?
Первое можно легко реализовать, чтобы люди вставляли просто адрес файла, а дальше автоматом картинка появлялась в комменте.
Плагин Comment Image вроде работает.
Спасибо за ответ.
Мне подошёл бы любой из вариантов. Хоть с внешнего ресурса, хоть загрузка с компьютера. не принципиально.
Я не спорю, что плагин Comment Image рабочий.
После выбора Comment AttachImage — selection field — выбора Inject via WordPress hook или Inject via Javascript появляется кнопка обзор.
После нажатия кнопки обзор и выбора файла для добавления в комментарий сохраняется текст комментария, но отсутствует и само изображение, и нет каких либо символов, обозначающих, что какое-либо изображение добавлялось.
Если в комментарии выделяю текст, изменяю шрифт, стиль, цвет, то после сохранения появляется набор «зюков» в конце текста комментария.
Если вставить в комментарий адрес файла с внешнего ресурса, отражается именно адрес файла.
Хоть в виде Ссылки http://s017.radikal.ru/i41…
хоть Картинка в тексте [URL=http://radikal.ru/…jpg[/IMG][/URL]
я честно, не знаю, что делать.
Или что делаю не так.
Уже возникла мысль, что у меня где-то стоит блокировка отображения изображений в комментариях.
В самих сообщениях проблемы вставить изображение нет.
метод 1 — сырой, но работает
Идея отсюда
если добавить такую функцию в functions.php , введенный адрес изображения
http://s017.radikal.ru/i41...
будет сопровождаться самой картинкой (некликабельной, но можно и с гиперссылкой сделать).
Стили (максимальну высоту и ширину) можно регулировать. Здесь максимальная ширина 100% от поля комментария.
add_filter('comment_text', 'show_image');
function show_image($content) {
$pattern ="/<a(.*?)href=('|\")(.*?).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>/i";
$replacement = '<img src=$2$3.$4$5 style="max-height:400px;max-width:100%;"/><br />';
$content = preg_replace($pattern, $replacement, $content);
return $content;
}
Сырой, потому что убрать адрес после картинки вам поможет кто-нибудь более сведущий в регулярных выражениях.
Метод 2 — плагин Comment Image Embedder — делает то же самое, но чистенько )
Метод 3 плагин Comment-Images — загрузка изображений
Вы, кажется, какой-то другой используете.
http://wordpress.org/extend/plugins/wordpress-comment-images/
Спасибо.
Опробовала способ 1.
Скопировала фильтр в файл ,отправила изменения на сервер.
Строка появилась в верху консоли про фильтр.
после попытки забросить изображение в виде ссылки-адреса в комментарий появилось вот это:
add_filter(‘the_content’, ‘addrellightbox’); function addrellightbox($content) { global $post; $pattern =»//i»; $replacement = »; $content = preg_replace($pattern, $replacement, $content); return $content; }
Warning: Cannot modify header information — headers already sent by (output started at /home/svitanoc/public_html/wp-includes/functions.php:4561) in /home/svitanoc/public_html/wp-includes/pluggable.php on line 934
С Плагином Comment Image Embedder точно так же, как и с предыдущим — не срабатывает загрузка.
Знакомый компьютерщик вообще сказал, что это проблемы темы.
И что только изменение темы на другую может решить проблему. Хотя вопрос у меня — а вдруг не так.
Неужели тема настолько может влиять на отображение комментариев?
Мне моя тема нравится 🙁
Для метода 2 и 3 у меня открываются одинаковые страницы.
То есть это одинаковые плагины, правильно?
фильтр надо положить в файл functions.php активной темы,
папка ни в коем случае не wp-includes а
public_html/wp-content/themes/тема/funcions.php
Для диагностики темы и плагинов : п. 4-6
Если Вы новичок, файлы темы можно отредактировать в админке
Внешний вид -> Редактор
Вписала фильтр в public_html/wp-content/themes/тема/funcions.php.
Теперь вообще не смогла войти на сайт :
Parse error: syntax error, unexpected ‘?’ in /home/svitanoc/public_html/wp-content/themes/vector-flower/functions.php on line 88
Через минуту зашла.
Попытка вставить изображение и ответ:
add_filter(‘the_content’, ‘addrellightbox’); function addrellightbox($content) { global $post; $pattern =»//i»; $replacement = »; $content = preg_replace($pattern, $replacement, $content); return $content; }
Warning: Cannot modify header information — headers already sent by (output started at /home/svitanoc/public_html/wp-includes/functions.php:4554) in /home/svitanoc/public_html/wp-includes/pluggable.php on line 934
Убрала из файла фильтр.
удаляю комментарий. Снова мне написало:
Warning: Cannot modify header information — headers already sent by (output started at /home/svitanoc/public_html/wp-includes/functions.php:4554) in /home/svitanoc/public_html/wp-includes/pluggable.php on line 934
Спасибо за помощь.
Видимо, я сама не в состоянии справиться с проблемой
Новичок 🙂
Но с редактором знакома уже.
Пришлось редактировать страницы типа О нас, Контакты вручную, так как неправильные ссылки были внутри сайта прописаны. номера строк не совпадали.
Ну, и названия меняла.
кардинально в глубь не лезла.
с виджетами разобралась со всеми.
но вот эту проблему не решила.
И знакомый, пишущий сайты и работающий сисадмином, тоже не смог помочь.
Сказал, что надо лезть в коды.
Не может быть всё хорошо.
Что-то должно и не получаться 🙂
проверила. Кошмар.
Теперь если добавляю комментарий любой или удаляю мне пишет:
Warning: Cannot modify header information — headers already sent by (output started at /home/svitanoc/public_html/wp-includes/functions.php:4554) in /home/svitanoc/public_html/wp-includes/pluggable.php on line 934
? Что сделать?
катастрофа )
Единственное, что никогда не угадываю — уровень познаний людей на форуме )
обычно кажется, что он больше.
раз уж спровоцировал такие проблемы, легче исправить, чем объяснять
если нужна помощь, пишите wpedit собака gmail.com
можете посмотреть мою историю, пароли воровать не буду )