Javascript вам лишь укажет куда класть кирпич.
А вот какой кирпич взять (html) и как его украсить (css), чтобы посетителям понравилось, это уже не забота скриптов.
ivan_kholodov, не общее количество книг, а количество книг на одной странице. Считаем, что на всех страницах у нас выводится одинаковое и постоянное количество элементов, кроме, разумеется последней.
ненавижу такие ответы. не работает и всё тут. Ну ты хоть объясни поему у тебя вдруг математика перестала работать? У всех работает с доисторических времен, а у тебя вдруг нет.
ivan_kholodov, когда делают постраничную навигацию, то обычно количество элементов на одной странице — величина постоянная. Поэтому опираются на номер страницы и количество на странице.
Почему у вас такой рандом?
wakenby, Это какой подвал? Глобальный на странице? Можно так и назвать PageFooter / GlobalFooter / LayoutFooter. AppFooter тоже норм. Чаще так и называю.
Что вы так заморачиваетесь с именами?
Я к тому, чтобы не править JOOMLA 3, а через настройки PHP-fpm 7.4 решить вопрос, на случай если ещё понадобится.
php здесь ни при чём. Ему какую строку выдала БД, такую он и пытается пережевать.
Не правьте джумлу. Поправьте вручную тип поля в таблице. Сделайте его MEDIUMTEXT. Туда поместится 2^24 символов. Данная смена типа должна пройти гладко, но всё же помните про бэкапы.
47911, База данных режет строку. При чтении json не валиден => ошибка.
В коде оно пытается, зачем-то, декодировать этот JSON
Очевидно, эти данные нужны, не зря же они записываются. Потому и декодируются.
При просмотре - длинна строки оканчивается на 65535-м символе
Еще раз: в поле TEXT помещается только 65535 байт.
И еще раз: ошибок при обрезке данных БД не выдаст. Просто запишет столько, сколько поместилось.
Для БД ваш json в поле типа TEXT - это просто строка символов. Она никак не проверяется на валидность.