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

goga_pgasovav

  • Захожу иногда
  • 409
  • 4 / 0
  • Внимательный джумловод
Всем привет!
Стало интересно, каким образом система разбивает текст статьи на introtext и fulltext. Т.е. в каком PHP-файле это происходит?
И самое главное: можно ли подобное реализовать с дополнительным текстовым полем (custom field)?

Я создал такое поле, в редакторе имеется кнопка "Подробнее", которая вставляет в код <hr id="system-readmore" />. Всё сохраняется, как и положено. Но выводится сразу весь текст (что не удивительно), просто разделённый чертой.

Заранее спасибо за наводки всем знатокам  ::)
« Последнее редактирование: 02.11.2020, 19:04:13 от goga_pgasovav »
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: System-readmore (Подробнее) и парсинг кода
« Ответ #1 : 02.11.2020, 18:43:08 »
здра.
сам механизм разделения просто реализовать стандартной функцией
https://www.php.net/manual/ru/function.explode.php

вопрос больше про то, что именно должно происходить по нажатию на Подробнее.
в случае доп поля на ум приходит только показ остального текста посредством js, т.к. механизма перехода куда-либо не предусмотрено (ведь с случае со статьей, происходит переход из блога категории непосредственно к статье).
хотя если нужен именно переход, то можно, допустим, переходить на эту же страниу, добавляя параметр в url и исходя из него казать уже весь текст.

в случае если надо просто показать вторую часть текста без перезагрузки, можно взять любой плагин спойлера и получится ровно то же, только надо будет не разделитель вставлять, а обрамлять второй кусок текста синтаксисом плагина

*

goga_pgasovav

  • Захожу иногда
  • 409
  • 4 / 0
  • Внимательный джумловод
Re: System-readmore (Подробнее) и парсинг кода
« Ответ #2 : 02.11.2020, 18:48:13 »
effrit, большое спасибо за explode()! Мои познания в РНР не так широки, как хотелось бы. Думаю дальше сам смогу.
Никакого нажатия на "Подробнее", как такового нет. Просто в блоге категории выводится introtext, а при переходе на страницу материала fulltext.
То же самое хочу сделать и с доп.полем: в блоге выводить то, что до разделителя, а на странице материала — то, что после.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

goga_pgasovav

  • Захожу иногда
  • 409
  • 4 / 0
  • Внимательный джумловод
Re: System-readmore (Подробнее) и парсинг кода
« Ответ #4 : 02.11.2020, 19:03:55 »
Великолепно! А думал, что буду несколько часов копать )))
Получилось примерно так:
Код
<?php echo explode('<hr id="system-readmore" />', $myCustomFields['text_en'])[1]; ?>
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Получить category description image в index.php шаблона

Автор goga_pgasovav

Ответов: 6
Просмотров: 412
Последний ответ 12.07.2024, 17:06:14
от goga_pgasovav
[Решено] Перестали работать переходы по меню сайта

Автор AlexP750

Ответов: 12
Просмотров: 759
Последний ответ 06.02.2024, 12:42:26
от AlexP750
Как отменить system-massage?

Автор olderman

Ответов: 0
Просмотров: 366
Последний ответ 28.06.2023, 11:34:33
от olderman
Как отменить system-massage?

Автор olderman

Ответов: 0
Просмотров: 350
Последний ответ 28.06.2023, 11:33:59
от olderman
Вернуть слайдер после работы с модулем html кода

Автор Jenik1245

Ответов: 0
Просмотров: 484
Последний ответ 30.05.2023, 14:15:58
от Jenik1245