0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 415 Просмотров
*

nightbeast

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
Здравствуйте! Гуглил и не нашел ответа. Как сделать так, чтобы ко всем картинкам, которые вставляются текст материала, в качестве альтернативного текста изображения прописывался заголовок материала? Облазил все настройки, ничего не нашел. Редактор JCE. Спасибо!
*

NewUsers

  • Завсегдатай
  • 1621
  • 138 / 0
Переопределять макет списка материалов категории и там укажи на прямую
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

kern.USR

  • Давно я тут
  • 820
  • 63 / 1
Переопределять макет списка материалов категории и там укажи на прямую
И что это даст? Он же хочет в контенте картикам назначить, а не детальной и превью.
Как сделать так, чтобы ко всем картинкам, которые вставляются текст материала, в качестве альтернативного текста изображения прописывался заголовок материала?
Тут вариантов 2. Первый - js'ом проставить. Второй - перед выводом контента - пройти по нему регуляркой и проставить alt'ы
*

nightbeast

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
Тут вариантов 2. Первый - js'ом проставить. Второй - перед выводом контента - пройти по нему регуляркой и проставить alt'ы


вот сейчас непонятно было(

Мне бы и не сложно это руками делать. Но проблема в том, что в день примерно 30 материалов, у некоторых бывает по 6 картинок.
*

kern.USR

  • Давно я тут
  • 820
  • 63 / 1
Код
$this->item->introtext = preg_replace('/(alt\s?=\s?([\'"])\s*\2)/i', '', $this->item->introtext);
$this->item->fulltext = preg_replace('/(alt\s?=\s?([\'"])\s*\2)/i', '', $this->item->fulltext);

$this->item->introtext = preg_replace('/(<img(?!.*?alt=([\'"]).*?\2)[^>]*)(>)/i', '\1 alt="'.htmlspecialchars($this->item->title).'" \3', $this->item->introtext);
$this->item->fulltext = preg_replace('/(<img(?!.*?alt=([\'"]).*?\2)[^>]*)(>)/i', '\1 alt="'.htmlspecialchars($this->item->title).'" \3', $this->item->fulltext);
Что то такое я делал для К2
Сначала проходит по тексту и удаляет все пустые alt'ы
Потом проходит и проставляет всем img, у кого нет alt'a, заголовок материала в alt

Возможно, можно оптимизировать, но мне чёт лень
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться