XF 2.0 Как убрать поле создания темы?

nictic123

Проверенные
Сообщения
910
Реакции
918
Баллы
855
В одном разделе мне нужно, чтобы заполнять можно было только пользовательские поля и поле создания темы мне просто не требуется. Можно ли его отключить только в одном форуме?
 
Да, из определенного раздела
Тут надо скорее модифицировать шаблон и задавать дефолтное значение переменной, что бы позволило сохранить тему. И опять же в самом шаблоне проверять ID раздела.

Я бы сделал отдельно аддоном.
 
  • Мне нравится
Реакции: Hope
Вообще для этого надо бы делать отдельный аддон.

Без аддона можно только костыль замутить, а именно: вставлять какой-нибудь текст в сообщение (например, null) и скрывать сам блок содержимого темы.

В шаблоне forum_post_thread ищем следующий код:
HTML:
<xf:editorrow name="message"
              value="{{ $post.message ?: $forum.draft_thread.message }}"
              attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
              rowtype="fullWidth noLabel mergePrev"
              label="{{ phrase('message') }}" />

Заменяем на:
HTML:
<xf:if is="$thread.Forum.node_id == 2">
    <div style="display: none;">
        <xf:editorrow name="message"
                      value="null"
                      attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
                      rowtype="fullWidth noLabel mergePrev"
                      label="{{ phrase('message') }}" />
    </div>
    <xf:else />
    <xf:editorrow name="message"
                  value="{{ $post.message ?: $forum.draft_thread.message }}"
                  attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
                  rowtype="fullWidth noLabel mergePrev"
                  label="{{ phrase('message') }}" />
</xf:if>

Не забываем заменить двойку на ID раздела.

Повторяюсь, что это костыли и лучше так не делать. XenForo поддерживает собственные сущности (помимо тем) и правильнее всего делать под это аддон.

hidden_thread_message.png
 
CMTV, что-то не работает
Меняй
Код:
<xf:editorrow name="message"
              value="{{ $post.message ?: $forum.draft_thread.message }}"
              attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
              rowtype="fullWidth noLabel mergePrev"
              label="{{ phrase('message') }}" />

на
Код:
<xf:if is="$forum.Node.node_id == 2">
    <xf:hiddenval name="message" value=" " />
<xf:else />
    <xf:editorrow name="message"
        value="{{ $post.message ?: $forum.draft_thread.message }}"
        attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
        rowtype="fullWidth noLabel mergePrev"
        label="{{ phrase('message') }}" />
</xf:if>
 
Последнее редактирование:
Меняй
Код:
<xf:editorrow name="message"
              value="{{ $post.message ?: $forum.draft_thread.message }}"
              attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
              rowtype="fullWidth noLabel mergePrev"
              label="{{ phrase('message') }}" />

на
Код:
<xf:if is="$forum.Node.node_id == 2">
    <xf:hiddenval name="message" value=" " />
<xf:else />
    <xf:editorrow name="message"
        value="{{ $post.message ?: $forum.draft_thread.message }}"
        attachments="{{ $attachmentData ? $attachmentData.attachments : [] }}"
        rowtype="fullWidth noLabel mergePrev"
        label="{{ phrase('message') }}" />
</xf:if>
Неа, все равно не убирается
 
CMTV, Spark108, как я понял ему надо типа LiquidPro Simple Forms, не просто убрать поле
Можно сказать и так, я как понял, ТС хочет что бы юзеры при создание темы в определенном разделе вводили только доп. поля. То бишь без основного текста вообще. Я тут сейчас делаю плуг подобного рода, возникла только проблема, что можно редактировать это же сообщение после создания, ищу куда проверку засунуть.
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу