Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
f2065

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

Recommended Posts

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

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

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

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

 

Что делать?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

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

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

 

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

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

Share this post


Link to post
Share on other sites

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

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

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

 

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

 

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

Edited by f2065

Share this post


Link to post
Share on other sites

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

 

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'ом

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...