Изображение страницы приветствия

Здравствуйте, не могли бы вы помочь с доступным решением? Я хочу разместить изображение на своей приветственной странице внутри div с классом .contents.clearfix.body-page, под приветственным текстом, но перед нижними кнопками.
Спасибо!

что-то вроде этого

В данный момент вы можете добавлять контент только над текстом… но я только что выпустил обновление, которое позволит добавлять контент и ниже, так как это кажется разумным. (FEATURE: Add below-static plugin outlet · discourse/discourse@e4ebc30 · GitHub).

Если вы обновите Discourse через несколько часов (через yoursite.com/admin/upgrade), вы получите это изменение и сможете добавлять контент там, где это необходимо.

Вот как это сделать. В вашей теме вам нужно добавить следующее в файл header.html:

<script type="text/x-handlebars" data-template-name="/connectors/below-static/custom-login">
  {{#if showLoginButton}} 
    <div class="custom-login-content">
       <!-- Your custom HTML here -->
    </div>
  {{/if}}
</script>

Обратите внимание, что этот шаблон используется в нескольких местах (страница FAQ, страница «О нас» и т. д.), поэтому, если вы хотите, чтобы ваш контент отображался только на странице входа «Добро пожаловать», необходимо сохранить оборачивающий блок {{#if showLoginButton}} {{/if}}.

Вы можете узнать больше об использовании точек расширения для добавления контента в наши шаблоны Handlebars здесь: Developing Discourse Themes & Theme Components

Привет, Крис! Я использую локальный экземпляр Discourse в Docker для этих изменений в дизайне перед их применением к живому форуму, но не могу получить доступ к странице ‘example.com/admin/upgrade’, так как такой страницы не существует. Её нет и на нашем живом сайте. Я что-то делаю не так или есть другой способ обновления? Также я не вижу способа выполнить обновление через admin/dashboard на живом сайте?

Привет снова, Крис. Страница, которую вы упомянули выше, недоступна в моем тестовом Discourse на Docker или в моем рабочем Discourse. Можете помочь?
С уважением

Вы работаете в подпапке? Как были установлены эти экземпляры?

У каждого экземпляра Discourse должен быть URL /admin/upgrade, но если вы не администратор, он будет для вас недоступен.

Привет, Стивен,
Я администратор, модератор с уровнем доверия 4 на обоих экземплярах.
Локальный экземпляр был установлен с помощью Docker в каталоге: Users/my-local-user-account(admin)/documents/discourse-test. Мне нужно сначала обновить Discourse здесь, чтобы я мог создать тестовую страницу входа.
Я не уверен, как был установлен рабочий сайт (он появился до моего прихода), но его можно найти по адресу https://lifeevents.digital.gov.au

Извините, вы администратор и владеете TL4?

Включён ли docker-manager в вашем app.yml как плагин?

Уверены ли вы, что локальная установка не является установкой для разработки?

Да, админ и TL4 на обеих
Локальная установка без плагинов
Не уверен насчет установки в dev-режиме — она была выполнена так: # Запуск Discourse локально для тестирования

Самый быстрый способ — использовать Docker.

Шаг 1: Установка Docker

Вы можете установить Docker напрямую с официального сайта.

Скачать можно здесь: Install Docker Desktop on Mac | Docker Docs

Проверка успешной загрузки

Чтобы убедиться, что Docker скачан успешно, введите в терминале команду docker -v — она покажет версию, которая у вас запущена.

Шаг 2: Создание папки Discourse

Рекомендую создать папку в Documents или в любом другом удобном месте. Для этого выполните следующие команды:

cd ~/Documents
mkdir discourse-test
cd discourse-test
curl -sSL https://raw.githubusercontent.com/bitnami/bitnami-docker-discourse/master/docker-compose.yml > docker-compose.yml
docker-compose up -d

Шаг 3: Обновление файла /etc/hosts

Необходимо добавить следующую строку в конец файла /etc/hosts:
127.0.0.1 www.example.com

Сначала откройте файл с помощью редактора nano — система запросит ваш пароль.

sudo nano /etc/hosts

Затем добавьте в конец файла этот текст: 127.0.0.1 www.example.com

Чтобы сохранить изменения, нажмите ctrl+x, затем y, а затем Enter.

Шаг 4: Открытие локально

Теперь вы должны иметь возможность открыть браузер и перейти по адресу www.example.com для тестовой копии Discourse.

Имя пользователя: user

Пароль: bitnami123

Полезные команды для Docker

Остановка Discourse (убедитесь, что вы находитесь в каталоге ~/Documents/discourse-test):

docker-compose stop

Запуск Discourse (убедитесь, что вы находитесь в каталоге ~/Documents/discourse-test):

docker-compose up -d

Удаление контейнеров (убедитесь, что вы находитесь в каталоге ~/Documents/discourse-test):

docker-compose down -v

Удаление образов (сначала необходимо удалить контейнеры):

docker rmi $(docker images -q)

Хорошо, вы используете установку Bitnami, которая является сторонним пакетом. Боюсь, мы не можем предоставить поддержку для этого здесь. Я помечаю эту тему как unsupported-install

Единственными поддерживаемыми установками являются официальная стандартная установка или, для разработчиков, работающих локально, dev-install.

Если вам нужна помощь с этой установкой, вам следует обратиться в Bitnami, либо сделать резервную копию и восстановить её на официально поддерживаемой установке.

Хорошо, это локальная установка… Я изучу стандартную установку. Согласен, что эта установка не является стандартной.
Что касается работающего сайта — страница admin/upgrade тоже недоступна на работающем сайте? Я бы не стал помечать это как неподдерживаемую установку, так как запрос касался обоих экземпляров?

Тогда возможно, что это тоже Bitnami, и к нему будут применяться те же правила. Если это не так, значит docker-manager отключен, что также крайне необходимо. Оставляю вам investigate эту установку — вы всегда можете обновить нас позже.

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

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

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

Я изучу живую инстанцию Discourse и вернусь с ответом позже. Спасибо за помощь и извините за путаницу, возникшую из-за объединения запросов на установку инстанций в одну тему.

Это не проблема и не вызывает у нас разочарования — однако я понимаю, что это может запутать или расстроить пользователей, обращающихся за помощью.

Мы предоставляем здесь много бесплатной поддержки, поэтому вынуждены предпринимать шаги для того, чтобы её рамки оставались разумно сфокусированными. Есть очень творческие люди, которые делают :sparkles: потрясающие :sparkles: вещи с помощью Discourse, и помощь в этом может быть весьма вознаграждающей. Поддержка неофициальных образов увеличила бы нагрузку на нашу поддержку экспоненциально, что негативно сказалось бы на всех остальных аспектах нашей работы.

Это отлично! Если бы я хотел добавить контент слева или справа от блока текста входа, означало бы это необходимость создания нового plugin-outlet или это лучше реализовать, добавив CSS-свойства?

Во-вторых, я предполагаю, что это также возможно добавить в header.html компонента темы, но просто хотел перепроверить.

Спасибо!

Я пытаюсь заставить это решение работать, но по какой-то причине showLoginButton никогда не воспринимается как true. Мой тестовый сайт установлен как приватный, и при переходе по /login кнопка отображается на странице. Я попробовал вывести значение showLoginButton в лог, и оно возвращает undefined.

Если я заменю if на unless, всё работает нормально. Буду признателен за любые идеи относительно причины проблемы.

<script type="text/x-handlebars" data-template-name="/connectors/below-static/custom-login">
  {{#unless showLoginButton}} 
    <div class="custom-login-content">
       <h1>test</h1>
    </div>
  {{/unless}}
</script>