Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Администрирование форума » Общие вопросы по администрированию (7)


Общие вопросы по администрированию (7)

Сообщений 481 страница 487 из 487

1

В этой теме задаём вопросы по администрированию форума

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

Для запросов новых скриптов и их модификаций, пожалуйста, пишите в теме Запросы по скриптам #11
Если у вас возникли вопросы по оформлению форума, их можете задать в теме Общие вопросы по оформлению (65) #2
У вас возникла непредвиденная проблема с форумом, но самостоятельно вы её решить не можете? Создайте тему в разделе Проблемы с форумом, ознакомившись с правилами раздела.

Важная информация перед тем, как задать вопрос:

  • Ответы в теме дают другие участники форума по собственному желанию.

  • Администрация не может гарантировать моментальное решение или абсолютную корректность каждого ответа.

  • Пожалуйста, уважайте чужое время и усилия других пользователей, старайтесь писать грамотно и доходчиво.

  • Грубое или требовательное отношение к участникам форума неприемлемо и может привести к отказу в помощи на всём форуме.

Подробно сформулируйте свой вопрос, чтобы повысить вероятность отклика помощи:

  • Укажите ссылку на форум: Если ваш вопрос касается конкретного форума, обязательно укажите прямую ссылку на него. Это позволит нам увидеть проблему и предложить наиболее точное решение, не тратя время на догадки.

  • Опишите свой вопрос: Подробно и понятно изложите, что именно вас интересует или какая проблема возникла. Чем больше деталей вы предоставите, тем легче будет понять и помочь.

Если на ваш вопрос долго нет ответа, пожалуйста, напомните о своём вопросе через разумное время (например, через сутки), процитировав его. Избегайте излишней навязчивости.

Отредактировано Alex_63 (Ср, 2 Авг 2017 13:16:07)

+1

481

Виплич написал(а):

Да просто список ссылок, рассортированный по алфавиту.

Ну, вы можете создать подфорумы на каждый город и вывести ссылку на подфорум на главной странице под Названием основного форума.

Виплич написал(а):

Ну вот этот форум - на каком движке? И что такое - плагины для форума?
Что-то поиск по форуму никакой темы про плагины не находит... Что хоть это такое, надо понять.

Плагины - это расширения для форумного движка. Они дают возможности, которые официально не регламентированы для него. Сервис Майбб на основе форумного движка PunBB старой версии, и на сервисе Майбб установка плагинов для пользователей не доступна. На сервисе Майбб для пользователей доступно только установка javascript с некоторыми ограничениями, и css, а также ограничено HTML. Доступа к самому движку и к базе у пользователей Майбб нет.

0

482

kolobdur74 написал(а):

Плагины - это расширения для форумного движка. Они дают возможности, которые официально не регламентированы для него. Сервис Майбб на основе форумного движка PunBB старой версии, и на сервисе Майбб установка плагинов для пользователей не доступна. На сервисе Майбб для пользователей доступно только установка javascript с некоторыми ограничениями, и css, а также ограничено HTML. Доступа к самому движку и к базе у пользователей Майбб нет.

Понятно. Ох уж эта казуистика с названиями - "MyBB".

kolobdur74 написал(а):

вы можете создать подфорумы на каждый город и вывести ссылку на подфорум на главной странице под Названием основного форума

Тут тоже вмешалась казуистика с названиями - "форум".

Согласно общего расклада, у нас сам Форум (Весь форум) -- разбит на Категории (Раздел) -- далее разбито на Форумы (он же Подфорум) -- далее разбито на Темы

Получается, мне надо составить каталог ссылок на темы Подфорума.

Отредактировано Виплич (Вт, 18 Ноя 2025 16:41:27)

0

483

Виплич написал(а):

Понятно. Ох уж эта казуистика с названиями - "MyBB".

Ну, в свое время так решил создатель сервиса))

Виплич написал(а):

Согласно общего расклада, у нас сам Форум (Основной раздел) -- разбит на Категории (Раздел) -- далее разбито на Форумы (Подраздел, он же Подфорум) -- далее разбито на Темы

Получается, мне надо составить каталог ссылок на темы Подраздела.

Не совсем так. Категории -> Форумы -> Подфорумы -> Темы. И есть название Форум, под которым имеется ввиду вообще полностью весь вебсайт данной тематики и с данными возможностями))

0

484

kolobdur74 написал(а):

Не совсем так. Категории -> Форумы -> Подфорумы -> Темы.

В Администрировании мы создаём Категорию. Потом в Категории - создаём Форум. (Можно несколько создать). И уже в Форуме - идут Темы.

Какой ещё Подфорум?

Отредактировано Виплич (Вт, 18 Ноя 2025 16:48:56)

0

485

Виплич
В форуме можно создать подфорум.
https://upforme.ru/uploads/0000/14/1c/32995/t780782.png

+2

486

Виплич написал(а):

В Администрировании мы создаём Категорию. Потом в Категории - создаём Форум. (Можно не сколько создать). И уже в Форуме - идут Темы.

Какой ещё Подфорум?

Откройте: Администрирование- Форумы - нужный вам Форум, там настройка: Категория или форум, с описанием: Выберите либо категорию для основного форума, либо родительский форум для подфорума. Выбираете нужный форум в качестве родительского, и исходный форум становится подфорумом выбранного родительского.

Алекс выше, указал и второй вариант. Создание подфорума в выбранном форуме. Можно так, а можно так сделать подфорумы.

+3

487

Виплич написал(а):

Задача: создать Каталог раздела - в виде списка ссылок на все темы раздела.


У меня тоже есть вариант ответа :)

Ставите код в HTML низ

Код
Код:
<script>
document.addEventListener("DOMContentLoaded", () => {
  // === НАСТРОЙКИ ===
  // Формат: 'post_id;forum_id,post_id;forum_id,...'
  const POSTS_AND_FORUMS = '30377;2,30379;5'; // ← Укажите нужные пары
  // === /НАСТРОЙКИ ===

  // Карта для хранения названий разделов
  const forumNames = new Map();

  // Сначала получаем названия всех указанных разделов
  const forumIds = [...new Set(
    POSTS_AND_FORUMS.split(',')
      .map(pair => pair.trim().split(';')[1])
      .filter(id => id)
  )];

  if (forumIds.length === 0) return;

  const fields = 'id,name';
  const url = `/api.php?method=board.getForums&${new URLSearchParams({
    id: forumIds.join(','),
    fields,
    charset: 'utf-8'
  })}`;

  fetch(url)
    .then(response => response.json())
    .then(data => {
      if (!data?.response || !Array.isArray(data.response)) {
        console.warn("API board.getForums вернул пустой ответ");
        fallbackToStatic(); // резерв
        processPairs();
        return;
      }

      data.response.forEach(forum => {
        forumNames.set(String(forum.id), forum.name);
      });

      processPairs();
    })
    .catch(err => {
      console.error("Ошибка загрузки названий разделов:", err);
      fallbackToStatic();
      processPairs();
    });

  // --- ОСНОВНАЯ ЛОГИКА ЗАМЕНЫ ПОСТОВ ---
  function processPairs() {
    const pairs = POSTS_AND_FORUMS.split(',')
      .map(pair => {
        const [postId, forumId] = pair.trim().split(';');
        return { postId, forumId };
      });

    pairs.forEach(({ postId, forumId }) => {
      // Находим контейнер тела поста
      const postBody = document.getElementById(`p${postId}-content`);
      if (!postBody) {
        console.warn(`Пост #p${postId}-content не найден.`);
        return;
      }

      // Получаем название раздела
      let forumName = forumNames.get(forumId) || `Раздел ${forumId}`;

      // Очищаем всё содержимое и вставляем новый каталог
      postBody.innerHTML = '';
      postBody.insertAdjacentHTML('beforeend', `
        <div id="topic-catalog-${postId}" style="background: #e8f1da; border-radius: 5px; padding: 10px; margin: 10px 0; max-height: 400px; overflow-y: auto;">
          <h3 style="margin-top: 0; color: #2e7d32; font-size: 1.2em;">Темы в разделе: ${forumName}</h3>
          <ul id="topic-list-${postId}" style="list-style: none; padding-left: 0;"></ul>
          <div id="loading-${postId}" style="font-style: italic; color: #666;">Загрузка тем…</div>
        </div>
      `);

      const list = document.getElementById(`topic-list-${postId}`);
      const loading = document.getElementById(`loading-${postId}`);

      // Запрашиваем темы из нужного раздела через API
      fetch(`/api.php?method=topic.get&forum_id=${forumId}&limit=50&fields=id,subject&sort_by=last_post&sort_dir=desc&charset=utf-8`)
        .then(response => {
          if (!response.ok) throw new Error(`HTTP ${response.status}`);
          return response.json();
        })
        .then(data => {
          if (!data?.response || !Array.isArray(data.response)) {
            throw new Error("API вернул пустой или некорректный ответ");
          }

          data.response.forEach(topic => {
            const title = topic.subject || '[Без названия]';
            const link = `/viewtopic.php?id=${topic.id}`;
            const li = document.createElement('li');
            li.style.padding = '5px 0';
            li.style.borderBottom = '1px solid #ccc';
            li.innerHTML = `<a href="${link}" target="_blank">${title}</a>`;
            list.appendChild(li);
          });

          loading.style.display = 'none';
        })
        .catch(err => {
          console.error(`Ошибка загрузки тем для поста ${postId}:`, err);
          loading.textContent = 'Не удалось загрузить темы.';
          loading.style.color = 'red';
        });
    });
  }
});
</script>

В блоке настроек:

const POSTS_AND_FORUMS = '30377;2,30379;5'; // ← Укажите нужные пары

Пишете парами через запятую: ID поста, где нужен список тем, и ID раздела, где берём список тем.

30377;2 → в пост 30377 вставить темы из раздела 2.
30379;5 → в пост 30379 вставить темы из раздела 5.

В указанных постах скрипт полностью заменяет содержимое поста на список тем заданного раздела.

Как это выглядит:

Посмотреть скриншот

https://upforme.ru/uploads/0000/14/1c/38891/93298.webp

Отредактировано Merlin777 (Ср, 19 Ноя 2025 05:07:27)

+1


Вы здесь » Единый форум поддержки » Администрирование форума » Общие вопросы по администрированию (7)