Обновление Новая Simpla b5-php-8.2.1-1

edpol27

Постоялец
Регистрация
5 Май 2009
Сообщения
68
Реакции
11
Подарок к Новому году для поклонников Simpla

Новая Simpla b5-php8.2.1-1

Скрипт не надо нулить, новый вариант скрипта бесплатный !!

На сайте поддержки можно скачать версии для php7 и php8 со старым дизайном.

Основные изменения:

1. Теперь в названии simpla будет и обозначения для дизайна скрипта.
b5 в названии скрипта обозначает версию Bootstrap 5, на которой сделан шаблон интернет-магазина.
2. Simpla получила новый дизайн, полностью адаптированный под мобильные устройства
3. Simpla стала мультиязычной с возможность подключать использование автоматического перевода контента с помощью google translate.
Вы можете подключать пеервод контента, а можете использовать лишь lang файлы для пеервода скрипта. В скрипте есть только русский язык, перевод делается самостоятельно с помощью инструмента - Переводы.
4. Поиск с использованием категорий товара
5. Добавлен модуль избранные товары
6. Добавлен модуль сравнения товаров
7. Аяксовый фильтр по цене и характеристикам товара
8. Переписан модуль связанные товары, с возможность добавления связанных товаров как на странице товара, так и в корзине товаров.
9. Добавлен функция быстрого просмотра товара.
10. Управление из админки слайдером на главной странице
11. Мультиязычная карта сайта
12. В блоге добавлена возможность размещать аудиозаписи, сделан поиск по записям блога.
13. Через админку можно размещать самому свои контактные данные
14. Есть возможность подключать детектор мобильных устройств

В PHP 8.2 и более поздних версиях установка значения для необъявленного свойства класса устарела и выдает уведомление об устаревании при первой установке свойства в течение времени жизни выполнения приложения.

Поэтому для simpla необходимо прописать для корректной работы изменения во всех классах скрипта и Smarty4. В противном случае вы будеет получать ошибку Deprecated.

PHP 8.2 представляет новый атрибут в глобальном пространстве имен с именем #[AllowDynamicProperties]. Классы, объявленные с этим атрибутом, сигнализируют PHP, что при установке динамических свойств для объектов этого класса не следует выдавать никаких уведомлений об устаревании.

Таким образо вы можете самостоятельно перейти c php 8.1 на php 8.2, прописав в классах свойство #[AllowDynamicProperties], либо скачать скрипт с обновлениями.

Для просмотра ссылки Войди или Зарегистрируйся

Для просмотра ссылки Войди или Зарегистрируйся


1674389671168.png
 

Новая Simpla b5-php-8.2.1-2-admin​


Более новые версии Новая Simpla будут идти с приставкой admin.

Это значит, что классы движка на бэке(админка) и на фронте работают независимо друг от друга.

Так надо было сделать изначально самой simpla, но они этого не сделали.

Это очень удобно, когда вы хотите создать хороший многофункциональный магазин, в котором много по фильтрам запросов к БД, который приходится вешать и на фронт и на бэк одновременно. Кроме этого Вы имеете возможность вести работы по модернизации движка, не затрагивая сразу обе части движка, фронт и бэк.

Таким образом вам проще находить ошибки в движке, строить загрузчики для админки, подключать при необходимости разные БД. Все это в итоге будет повышать скорость движка, которая необходима там, где большие БД и много товаров.

Исправлено загрузка xml, для загрузки прайсов вам уже нет необходимости устанавливать на сервер консоль ru_RU.UTF-8. Будет работать на стандартной en_US.UTF-8.

Кому надо обновить импорт xml, скопируйте отсюда:

simpla/ajax/import.php

require_once('../../admin/Admin.php'); на require_once('../../api/Simpla.php');

class ImportAjax extends Admin; на class ImportAjax extends Simpla

Измените в них:

require_once('admin/Admin.php'); на require_once('api/Simpla.php');

class ImportAdmin extends Admin; на class ImportAdmin extends Simpla

Для просмотра ссылки Войди или Зарегистрируйся

Для просмотра ссылки Войди или Зарегистрируйся
 
Это значит, что классы движка на бэке(админка) и на фронте работают независимо друг от друга.
Так надо было сделать изначально самой simpla, но они этого не сделали.
Не однозначное решение. Например контроллеры у симплы и так разделены. Модели общие, что больше плюс чем минус.
Можно раскрыть мысль?
 
Последнее редактирование:
Не однозначное решение. Например контроллеры у симплы и так разделены. Модели общие, что больше плюс чем минус.
Можно раскрыть мысль?

Вроде уже все написано по этому поводу) Но тогда разжую, к примеру, делаем клиентам очень много фильтров для админки, чтобы можно было быстрее находить, то что нужно, особюенно при работе с доп. модулями.
И все это вам надо лепить в один запрос к БД, иногда получается просто книга) Тоже самое, когда много модулей и фильтров на фронте.
И когда, к примеру, у вас идет глюк, а движок многофункциональный, проще в этом разбираться отдельно, на беке и на фронте. Вы можете работать на беке со многими вещами, не затрагивая фронт.
Иначе что-то не так, магазин отрубили)
Учтите, что если вы работаете с загрузчиками,на кроне, разными поставщиками - это очень удобно.
Для админик вы можете писать свои функции, которые не надо лепить на фронт и наоборот. Это дает, да, скорость, уменьшает нагрузку и т.д.
Если у вас маленький стандартный функциолнальный магазин, то может и все равно. Но мы на симпле делали монстров, потому там это очень важно)

Кстати к этой теме, сейчас столкнулся с тем, что человек хочет обновить фронт, но у него уже много сделано всего на бэке. При обновлении фронта придется заодно и писать многие вещи по-другому, фильтра, новые функции и т.д. Поэтому старый бэк можно перенести в папку admin, а вот фронт переписать заново под новый дизайн.
 
Вроде уже все написано по этому поводу) Но тогда разжую, к примеру, делаем клиентам очень много фильтров для админки, чтобы можно было быстрее находить, то что нужно, особюенно при работе с доп. модулями.
И все это вам надо лепить в один запрос к БД, иногда получается просто книга) Тоже самое, когда много модулей и фильтров на фронте.
Во превых это нарушает основные принципы программирования, например в части дублирования функций. У вас 90% функций в моделях будет с идентичным кодом. Почему нельзя использовать один класс модели и в ней уже иметь функции для фронта и бека?
Модель ничего не должна знать про контроллер, а контроллер про модель. Поэтому контроллеры могут и должны быть разными для фронта и бека,а вот модели как раз нет.
Остальные аргументы вообще не убедительны.
 
Во превых это нарушает основные принципы программирования, например в части дублирования функций. У вас 90% функций в моделях будет с идентичным кодом. Почему нельзя использовать один класс модели и в ней уже иметь функции для фронта и бека?
Модель ничего не должна знать про контроллер, а контроллер про модель. Поэтому контроллеры могут и должны быть разными для фронта и бека,а вот модели как раз нет.
Остальные аргументы вообще не убедительны.
Что-то крупная компания как OpenCart думает иначе и заявление "нарушает основные принципы программирования" наводит на мысли о не понимании MVC и разносе бека и фронта. У OpenCart отдельный MVC для бека и отдельный MVC для фронта. А так же бек выноситься за корень, в случае проникновения.
 
Что-то крупная компания как OpenCart думает иначе и заявление "нарушает основные принципы программирования" наводит на мысли о не понимании MVC и разносе бека и фронта. У OpenCart отдельный MVC для бека и отдельный MVC для фронта. А так же бек выноситься за корень, в случае проникновения.
Приводить говнокод Даниэля Керра как эталон программирования - моветон. Дэн большой любитель положить свой большой и толстый на все: на код, на архитектуру, на пользователей, на разработчиков, на здравый ум, на логику и последовательность. Это, кстати, яркий представитель пограмиста-ортодокса.
В опенкарте нет ничего такого (ну разве что кроме популярности и бренда) что можно было бы восхвалять. Портянки дублированного кода, нет никакого намека ни на PDO/QueryBuilder (там даже плейсхолдера нет). Неймспейсы появились только! в еще не рожденной 4 версии. Система до сих пор расширяется через модификацию файлов!
Так что мимо.
 
Во превых это нарушает основные принципы программирования, например в части дублирования функций. У вас 90% функций в моделях будет с идентичным кодом. Почему нельзя использовать один класс модели и в ней уже иметь функции для фронта и бека?
Модель ничего не должна знать про контроллер, а контроллер про модель. Поэтому контроллеры могут и должны быть разными для фронта и бека,а вот модели как раз нет.
Остальные аргументы вообще не убедительны.
Можно, но тогда на фронте вы будете грузить лишний код в классе, как впрочем и на беке. Можно наоборот выкинуть все лишнее с фронта в классах и на беке тоже, но это уже надо поработать над этим.
Может потом сделаем, но пока времени на это нет. Пока только модель для индивидуальных дерзаний.
Пока наша задача не столько делать новую симплу, сколько реанимировать старую для народа) Особенно для тех, кто ее поклонник)
 
Спасибо за ответ. А на счет грузить лишний код - я думаю что это самая большая плата, с микроскопической ресурсоемкостью, за универсальность.
 
А какую нагрузку держит Simpla?
Кто-нибудь тестировал на большом количестве запросов. Как база данных справляется?
 
Назад
Сверху