Задать вопрос
@alexandr_norkin

Как добавить модуль в joomla после определенного тега?

Нашел вот такой код. Он вставляет после заданного мною количества абзацев.

<?PHP
function addContent($addTo, $add, $cntRep, $after = '</p>', $openTag = '<div align="center">', $closeTag = '</div>')
    {
       $posAfter = 0;
       for ($i=0; $i < $cntRep; $i++) {
           $pos = stripos($addTo, $after, $posAfter);
           $posAfter = $pos+strlen($after);
           if($pos===FALSE) {
              return $addTo;
           }
       }
       $beforeAdding = substr($addTo, 0, $posAfter);
       $afterAdding = substr($addTo, $posAfter);
       $result = $beforeAdding . $openTag . $add . $closeTag . $afterAdding;
       return $result;
    }
$this->item->fulltext = addContent($this->item->fulltext,'<div>любой код</div>',5);
echo $this->item->fulltext;
?>


В моем случае хочу добавить модуль 1, после каждого H2 и модуль 2, после каждого Н3 встречающегося в $this->item->fulltext. Как это сделать?
  • Вопрос задан
  • 64 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
gaparchi
@gaparchi
$this->item->fulltext = addContent($this->item->fulltext,'<div>любой код</div>',5);
$this->item->fulltext = addContent($this->item->fulltext,'<div>любой код1</div>', 1, '</h2>');
$this->item->fulltext = addContent($this->item->fulltext,'<div>любой код2</div>', 1, '</h3>');

Вот как то так попробуй.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы