У вас случайно где-нибудь в php.ini не выставлено mbstring.func_overload отличный от нуля? Ловил такую ошибку когда на окружении, настроенном для битрикса (который как раз требует mbstring.func_overload=2) пробовал запустить проект на Laravel.
"работает страшно медленно" - что работает медленно - фронт? бэк?
Где именно тормозит - на отрисовке? на загрузке данных? на выборках из базы? на обработке выбранных данных?
Alex Kyznetsov, Если одинаково - то переписывать на новое. Если оставить старое - то оно будет и дальше устаревать и в следующий раз, когда потребуются доработки выполнить их будет намного сложнее.
ivankoch, Я вам дал конкретный ответ - отредактируйте меню и добавьте нужный пункт. В ходе дальнейшего обсуждения я увидел, что дал вам недостаточно информации для выполнения этого действия - и дпл вам ссылку на официальную документацию, где в видео по шагам максимально подробно показано как именно можно выполнить такую правку меню.
ivankoch, При чем тут вообще создание раздела? У битрикса меню хранится в отдельных файлах, которые можно править отдельно. Если вы пункты меню добавляли раньше только через создание разделов - то у меня для вас новость...
Правильный вариант - это написать свой обработчик аякса, который будет так уметь. Передаёте ID товара, из базы достаёте ID товаров, лежащие в этих 2 полях, через АПИ корзины добавляете в неё 3 товара.
По второму скрину - долгий ответ сервера. Для начала надо найти что именно тормозит. Скорее всегог это будет какой-то компонент битрикса. Включите на этой странице битриксовую отладку (под Админом открыть страницу, в верхней панели Эрмитажа выбрать Отладка - Суммарная статистика), в выведенном в конце странице блоке отладки посмотреть на что именно тратится время при генерации страницы.
ALTech1, не команда, а css-селектор. Находит на странице сайта элементы, подходящие по селекторам (перечисленным через запятую) и применит к ним правила, написанные после селектора в фигурных скобках. В вашем случае для элементов, подходящих под селектор
.ezd-demo-screen-switch[_ngcontent-c22], .footer-wrapper[_ngcontent-c7] .footer-row[_ngcontent-c7] .footer-btn[_ngcontent-c7] button[_ngcontent-c7]
Применится стиль
background: var(--post-black) !important;
т.е. цвет фона выставится из css-переменной --post-black
ALTech1, давайте на примере строки из вашего предпоследнего сообщения, ".ezd-demo-screen-switch[_ngcontent-c22]"
.ezd-demo-screen-switch - выбрать теги с классом "ezd-demo-screen-switch" <span class="ezd-demo-screen-switch">
[_ngcontent-c22] - выбрать теги с аттрибутом _ngcontent-c22, т.е. например
<span _ngcontent-c22>, либо <span _ngcontent-c22="">
т.е. выбрать теги с классом ezd-demo-screen-switch имеющие аттрибут _ngcontent-c22
Чем вам просто функция не угодила? Если вам требуется только посчитать что-то и вернуть результат.
Если вам принципиально нужен объект - то читайте про магический метод __invoke https://www.php.net/manual/ru/language.oop5.magic....
По ссылке из примера на моей системе ваша галочка выглядит вот так: https://pasteboard.co/ILuH0mHP.png
Имхо, если вы хотите её сделать "более строгой", то для надёжного платформо-независимого решения надо использовать SVG.