Layouts Plugin

Спасибо, Роберт, за ваш ответ. Я использую экземпляр AWS от Bitnami и следую документации по адресу https://docs.bitnami.com/general/apps/discourse/configuration/install-plugins/. В идеале всё должно было сработать, но не понимаю, почему система не может найти ресурсы.

1 лайк

Да, пожалуйста, используйте официальные сборки Discourse. Использование Bitnami осуществляется на ваш собственный страх и риск.

Спасибо за помощь. Конечно, я настрою это на Digital Ocean и сообщу, если проблема сохранится.

Этот плагин не работает с темой Fakebook.

Можно с тем же успехом сказать, что с этим плагином Fakebook сломан? :wink:

Мы поддерживаем ядро Discourse. Если тема работает — отлично. Если нет, то, скорее всего, вам не повезёт.

Хотя мы прилагаем все усилия для оптимизации совместимости, мы не можем гарантировать, что все темы будут работать с нашими плагинами. Особенно это касается случаев, когда и наш плагин, и тема одновременно изменяют шаблоны.

Если вы хотите использовать тему с этим плагином, выберите более лёгкую тему, которая меньше влияет на макет или вообще не влияет на него.

У Fakebook уже есть свои боковые панели, и, скорее всего, он не разрабатывался для работы с этим плагином (иначе зачем ему не использовать боковые панели CL?). Кроме того, он, несомненно, ориентирован на ядро Discourse. Скорее всего, вам придётся выбрать что-то одно. Или используйте CL и заимствуйте элементы из Fakebook, создав собственную тему.

В настоящее время ограничение в Chrome не позволяет нам полностью реализовать предпросмотр списков тем с боковыми панелями. Следите за обновлениями…

2 лайка

По какой-то причине сейчас это не работает.

** НЕСОВМЕСТИМЫЙ ПЛАГИН **

Сборка Discourse невозможна из-за ошибок в плагине по адресу
/var/www/discourse/plugins/layouts-topic-list

Мы удалили его на нашем сайте.

Плагин только что получил значительное обновление.

Теперь вы можете добавлять компоненты темы в качестве виджетов (в дополнение к плагинам). Я обновил используемый вами виджет для поддержки версии v0.2.

Однако я рекомендую новую версию этого виджета в виде темы (с некоторыми улучшениями функциональности и изменениями).

В целом плагин переходит от использования плагинов для виджетов к использованию тем. Полная документация будет опубликована в течение следующего дня или около того.

Обратите внимание, что плагин теперь поддерживает групповые разрешения, поэтому убедитесь, что они настроены в /admin/layouts.

Вскоре этот плагин также перейдет на тот же график обновлений, что и наши другие плагины; см. подробнее:

7 лайков

Это ОТЛИЧНЫЕ НОВОСТИ! Я только что написал то же самое другому человеку и предложил перейти к решению на основе тематических компонентов. Спасибо за обновление!

2 лайка

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

4 лайка

При обновлении Discourse до последней версии плагин Theme Minimal перестал работать.

Мой форум: https://babyforex/net

Привет, добро пожаловать :slight_smile:

Можешь уточнить, в чём именно проблема? Какие виджеты ты пытаешься использовать?

Важно отметить, что плагин теперь содержит настройки enabled и group для каждого виджета. Это первое, что стоит проверить.

Я всё ещё работаю над документацией для версии v0.2 (прямо сейчас!), и v0.2 будет официально запущена только в следующий период обновлений плагина Pavilion: 2020-04-30T14:00:00Z2020-05-04T14:00:00Z.

Если зайти на try.thepavilion.io, можно увидеть, что плагин успешно работает с текущей версией Discourse (только что обновлённой): https://try.thepavilion.io/c/layouts

1 лайк

Привет, Энгус.

Мой форум показывает пустую страницу после обновления до последней версии Discourse. Я использую минималистичную светлую тему.

Я только что обновил try.thepavilion.io до последней версии Discourse и этого плагина, и всё работает без проблем. См., например, try.thepavilion.io/c/layouts

Вы используете последнюю версию плагина?

Если у вас установлена последняя версия всего, перейдите по адресу /logs и отправьте мне личное сообщение со всеми последними логами и полным списком используемых вами плагинов.

Привет, Эггус

Вот мой лог:

ReferenceError: createWidget is not defined
    at https://babyforex.net/assets/plugins/layouts-custom-html-79795a6b28be65e4018399be0f7acd013a9a3065bf89e41348009b7d4d022c17.js:1:871
    at t.module.exports.u.<computed> (https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561910)
    at t.module.exports.u.<computed> (https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561623)
    at require (https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561640)
    at https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:2403830
    at Array.forEach (<anonymous>)
    at Object.t (https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:2403702)
    at Object.n.initialize (https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:176791)
    at https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:340617
    at i.each (https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:501398)

А вот здесь:

ReferenceError: Can’t find variable: createWidget Url: https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js Line: 1 Column: 31156 Window Locati

https://babyforex.net/assets/plugins/layouts-custom-html-79795a6b28be65e4018399be0f7acd013a9a3065bf89e41348009b7d4d022c17.js:1:883

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561915

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561624

require@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:561640

https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:2403839

forEach@[native code]

t@https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:2403709

https://babyforex.net/assets/application-d8533a612d618e9f9772f7c5554ffa382ad1ac0d9948ebcdfcc616f5e295c095.js:1:176795

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:340627

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:501399

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:500421

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:499868

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:499914

_runInitializer@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:340854

runInstanceInitializers@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:340577

_bootSync@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:325419

didBecomeReady@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:331042

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:490059

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:489056

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:491075

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:496504

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:493039

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:497040

e@https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:29468

https://babyforex.net/assets/ember_jquery-d1d89874d5f08a664c68007c6c2eef5e3bb1cbd8058291fce7818d8ef4ded8ca.js:1:29788

Вам необходимо обновить плагин layouts-custom-html до этой версии:

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

3 лайка

Мне пришлось изменить несколько функций, чтобы мой плагин снова заработал.

В основном использовались

layouts.createLayoutsWidget и DiscourseLayouts::Widget.add.

1 лайк
TypeError: Discourse.SiteSettings is undefined_discourse-layouts-21b7cbab0ee1773efd84d72a08dbb131313019d1a0b99321fc5f165b31752521.js:93:23
    <anonymous> _discourse-layouts-21b7cbab0ee1773efd84d72a08dbb131313019d1a0b99321fc5f165b31752521.js:93
    jQuery 8
    _prepareInitializer _application-c96f4694dbdebd9912b6dffe0051bbb7d18f7c4bf08c5c3272c57906b63a978e.js:6849
    start _application-c96f4694dbdebd9912b6dffe0051bbb7d18f7c4bf08c5c3272c57906b63a978e.js:6870
    forEach self-hosted:225
    start _application-c96f4694dbdebd9912b6dffe0051bbb7d18f7c4bf08c5c3272c57906b63a978e.js:6866
    <anonymous> _start-discourse-efa4e5abfbd1b50b5152ffbe64d5dcea9f7c33f766dcc6387e2711f0f2112148.js:3
  var sidebarPadding = 20;
  var mainLeftOffset = Discourse.SiteSettings.layouts_sidebar_left_width + sidebarPadding;
  var mainRightOffset = Discourse.SiteSettings.layouts_sidebar_right_width + sidebarPadding;

Мы столкнулись с проблемой после последнего обновления. Ошибка указывает на то, что Discourse.SiteSettings не определён. Связано ли это напрямую или косвенно с этим плагином?

(Я только что пересобрал наш сайт)

Обновление:
Retort также генерирует те же проблемы. Я отключил Custom Layouts при сборке, но после этого Retort тоже сообщил о той же проблеме с Discourse.SiteSettings :slight_smile:

Спасибо, Тобиас, это связано с этим изменением в Discourse:

Я решил проблему в Layouts:

1 лайк

Ого, я удивлён, что предыдущий код вообще работал! Эти настройки сайта оценивались в момент чтения модуля, что могло произойти ещё до запуска приложения. Ваше новое решение теперь намного чище и устойчиво к будущим изменениям :slight_smile:

5 лайков

Только что оценил возможности этого плагина и мне очень нравится новое направление с виджетами на основе компонентов. Спасибо @angus :tada:

Протестировал его быстро на сайте, но обнаружил проблему совместимости при использовании с другими компонентами темы, которые встраиваются между заголовком и основным содержимым: боковые панели «прилипают» к высоте, включающей высоту внедрённого компонента темы, из-за чего панели оказываются «парящими» в середине или нижней половине экрана.

Также — когда я включаю виджет «Списки тем макетов» в активной теме и активирую его в разделе «Макеты», у меня появляется белая страница, и мне приходится деактивировать плагин «Макеты» и пересобрать сайт, чтобы исправить это.

Всего наилучшего

2 лайка