Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Как сохранить спойлеры от IPB 3.x ?

Опубликовано:

У меня в IPB 3.4.9 спойлеры с заголоком, типа {spoiler=заголовок}текст{/spoiler}

А в IPS 4 всё не так… При обновлении такие спойлеры пропали.

Стал искать плагины спойлеров для IPS 4.x - они не используют BB-коды вообще! Они сразу пишут HTML-конструкцию для работы своего спойлера (потом, при очередном обновлении движка это всё с большой вероятностью пропадёт или заглючит). И заголовков нет…

Нашёл разве что плагин который выводит в заголовок спойлера первую строку скрытого текста если она в {b}-тегах. Но это слишком кривое решение.

 

Что делать?

Рекомендованные сообщения

Опубликовано:

Не понял. Вам нужен спойлер для 4-ки с возможностью указать заголовок или сохранить заголовки при обновлении?

Опубликовано:
  • Автор

Не понял. Вам нужен спойлер для 4-ки с возможностью указать заголовок или сохранить заголовки при обновлении?

И сохранить старые заголовки при обновлении с 3.4.9 до 4.4.4, и для будущих постов тоже чтобы была возможность делать спойлеры с заголовком.

Опубликовано:

И сохранить старые заголовки при обновлении с 3.4.9 до 4.4.4

Пока что не подскажу. Нужно смотреть.

Вы делали обновление? Что со спойлерами произошло? Удалились из постов или заголовок исчез?

 

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

Посмотрите https://ckeditor.com/cke4/addon/spoiler

Опубликовано:
  • Автор

Вы делали обновление? Что со спойлерами произошло? Удалились из постов или заголовок исчез?

Старые спойлеры с заголовками - поломались. В тексте в IPS4 написано отрыто {spoiler=заголовок}, потом текст весь. Конечный тег {/spoiler} вырезан полностью. Т.е. в базе формата IPS 4 штатная конвертаций необратимо портит старые спойлеры.

{spoiler}…{/spoiler} - движок корректно конвертировал сам, проблема только вот со {spoiler=…}…{/spoiler}

 

Проблема в том что IPS в базе (в отличии от IPB) не хранит BB-теги спойлеров, она сразу конвертирует их в HTML div class="ipsSpoiler"…

 

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

Изменено пользователем f2065

Опубликовано:

Не тестировал.

 

system/Text/LegacyParser.php

Найти

		$value = str_replace( "[/spoiler]", "</p></div></div><p>", $value );

Выше добавить

		$value = preg_replace( "#\[spoiler=[\"']?(.+?)[\"']?\]#i", '</p><div class="ipsSpoiler" data-ipsSpoiler><div class="ipsSpoiler_header"><span>\\1</span></div><div class="ipsSpoiler_contents"><p>', $value);

 

Но все равно по умолчанию кастомные заголовки будут заменены на дефолтные javascript'ом

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.