[Light Portal] - современный портал для SMF 2.1

Автор Bugo, 19 марта 2023, 12:42:22

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

Bugo

Light Portal
Автор: Bugo
Последняя версия: 2.1 beta
Совместим: SMF 2.1.x
Ссылка: https://dragomano.ru/mods/light-portal
Github: https://github.com/dragomano/Light-Portal
Русификация: В комплекте
Поддержка плагинов: Да

Тема для обсуждения Light Portal на русском языке.

arisudi

У меня при установке портала на php 8.1 и php 8.2 вываливается следующая ошибка:
Fatal error: Uncaught Error: Undefined constant "Bugo\LightPortal\LP_CACHE_TIME" in /Sources/LightPortal/Helper.php:42 Stack trace: #0 /Sources/LightPortal/Repositories/PluginRepository.php(48): Bugo\LightPortal\Repositories\PluginRepository->cache() #1 /Sources/LightPortal/AddonHandler.php(200): Bugo\LightPortal\Repositories\PluginRepository->getSettings() #2 /Sources/LightPortal/AddonHandler.php(49): Bugo\LightPortal\AddonHandler->__construct() #3 /Sources/LightPortal/Helper.php(57): Bugo\LightPortal\AddonHandler::getInstance() #4 /Sources/LightPortal/Integration.php(88): Bugo\LightPortal\AbstractMain->hook('preloadStyles', Array) #5 /Sources/Subs.php(5766): Bugo\LightPortal\Integration->preCssOutput() #6 /Sources/Subs.php(4828): call_integration_hook('integrate_pre_c...') #7 /Themes/Forum/index.template.php(37): template_css() #8 /Sources/Load.php(2778): template_html_above() #9 /Sources/Subs.php(4550): loadSubTemplate('html_above', true) #10 /Sources/Subs.php(4157): template_header() #11 /index.php(187): obExit(NULL, true, true) #12 {main} thrown in /Sources/LightPortal/Helper.php on line 42

Bugo

Просто нажимаете в браузере "Назад" или переходите на страницу ?action=admin;area=packages. Портал установится. В последней версии 2.7 этой ошибки быть не должно.

Delysid

Посмотрел дёмку портала, классно сделано. Делал бы сайт сейчас, обратил бы пристальное внимание.

T-braze

Здравствуйте. Попробовал LightPortal - выглядит замечательно. Много всякого полезного функционала, плагины, да и в целом всё очень достойно! Я пока что просто балуюсь на тестовой версии сайта, смотрю как работает, и поэтому у меня возникло несколько вопросов.

Наш небольшой обскурный сайт на данный момент работает на smf 2.0.19 в связке с Simple Portal, тем самым представляя из себя главную страницу с новостями и форум. Смысл в том, что сайт и новости - на двух языках. На текущей версии новости на главной странице - это темы из определенного раздела форума, где первый пост - это сама новость, а остальные посты в ней - комментарии. Соответственно, когда сайт на русском языке - отображаются темы-новости из одного раздела, когда на английском - из другого. В SimplePortal у меня это реализовано кастомным кодом в блоке, отображаемом на главной странице, который парсит содержимое двух других блоков, в которых и настроено отображение нужных для текущего языка разделов с темами-новостями.

Я решил сделать отдельную тестовую версию сайта, которая уже работает на smf 2.1.4, и попробовать использовать LightPortal для тех же целей (новости на главной, переключение в зависимости от языка). Поэтому, немного покопавшись вчера вечером, выявил два способа это реализовать.

Первый способ:  через Общие настройки -> Первая страница -> Все темы из выбранных разделов. Этот вариант визуально очень здорово выглядит. Большие красивые карточки новостей на главной странице, с картинками, есть возможность их выстроить в две колонки. Прелесть! Однако тут, как я понял, нельзя выбрать отображение разных разделов с темами-новостями для русского и английского языков. Или всё же как-то можно это реализовать?
Здесь же я обратил внимание на особенности отображения карточек, конкретно в стандартном их шаблоне:

Ситуация такова: есть раздел форума с темами-новостями, в каждой из которых первый пост - это сама новость, а остальные посты - комментарии. В первых постах-новостях иногда имеются изображения, иногда их нет. Данный раздел выбран в качестве отображаемого на первой странице портала в настройках главной страницы (Первая страница портала - Все темы из выбранных разделов).

Итак, на главной странице отображаются новости в виде карточек. Шаблон оформления карточек стандартный. Сами новости бывают трех вариантов:

1. Новость содержит картинку в первом посте, имеет другие посты-комментарии. В данном случае если при выбранном стандартном шаблоне оформления карточек кликать на картинку в карточке, то открывается первое сообщение темы (ссылка вида ?topic=). При этом, если кликнуть на название карточки, то ссылка приведет на последний пост-комментарий в данной теме (ссылка формата ?msg=)
2. Новость содержит картинку в первом посте, других постов-комментариев в теме нет, только первый пост. В данном случае клик по картинке и клик по названию отсылает на первое сообщение темы (ссылка вида ?topic=).
3. Новость не содержит картинку в первом посте, имеет другие посты-комментарии. В данном случае при клике на название карточки открывается последний пост-комментарий в данной теме (ссылка формата ?msg=)
4. Новость не содержит картинку в первом посте и не имеет других постов. Здесь при клике на название карточки открывается первый пост и ссылка на него вида ?topic=XXXX.new;topicseen#new

В других шаблонах карточек ссылки на тему генерируются иначе. Это баг или фича? Мне следует разобраться в создании своих шаблонов карточек, где можно будет настроить генерацию ссылок по своему вкусу?



Второй способ: создать блоки с типом Новости раздела, в настройках которых можно задать отображение для разных языков. В итоге на главной странице действительно будет отображаться нужный на текущем языке раздел, но выглядит это несколько проще, чем в первом способе, кажется тут в карточках не отображаются изображения, присутствующие в постах. К тому же тут нет пагинации.




Если нет возможности, или не планируется добавлять мультиязычный функционал в первом способе, то можно ли ожидать некоей "прокачки" второго способа по визуалу (добавление пагинации, больше настроек оформления)?

Извиняюсь за длинный пост. Портал замечательный, надеюсь что вы и далее будете его развивать, ведь он вроде как лучше всех на данный момент.