Wyłączenie lightbox'a z bbcode
: 17 lut 2015, 17:47
W momencie kiedy utworzymy custom bbcode z np. samym obrazkiem:
Po przeparsowaniu tego bbcode w poście zamiast surowego obrazka będzie link który uruchamia lightbox'a.
Niestety IPS nie przewidział prostego wyłączenia tego, opcją jest modyfikacja plików (chyba że powstało jakieś rozszerzenie).
Plik: admin\sources\classes\text\parser\html.php
Zamieniamy na:
Następnie w samym bbcode nasz obrazek musi posiadać parametr rel="no-lgh", przykładowo:
Kod: Zaznacz cały kod
<img src="http://www.adminzone.pl/images/logo.png" alt="logo" />
Po przeparsowaniu tego bbcode w poście zamiast surowego obrazka będzie link który uruchamia lightbox'a.
Niestety IPS nie przewidział prostego wyłączenia tego, opcją jest modyfikacja plików (chyba że powstało jakieś rozszerzenie).
Plik: admin\sources\classes\text\parser\html.php
Kod: Zaznacz cały kod
/* Add lightbox rel tag. Emoticons should be code at this point */
if ( ! parent::$Perms['parseHtml'] )
{
$html = preg_replace( "/(?!<span rel='lightbox'>)<img(?!.*sharedmedia_screenshot)([^>]+?)>/i", "<span rel='lightbox'><img class='bbc_img'\\1></span>", $html );
$html = preg_replace( "/<img class='bbc_img'([^>]+?)class='bbc_img'([^>]+?)>/i", "<img class='bbc_img'\\1\\2>", $html );
}
Zamieniamy na:
Kod: Zaznacz cały kod
/* Add lightbox rel tag. Emoticons should be code at this point */
if ( ! parent::$Perms['parseHtml'] )
{
if( ! strpos($html, 'no-lgh') ) {
$html = preg_replace( "/(?!<span rel='lightbox'>)<img(?!.*sharedmedia_screenshot)([^>]+?)>/i", "<span rel='lightbox'><img class='bbc_img'\\1></span>", $html );
$html = preg_replace( "/<img class='bbc_img'([^>]+?)class='bbc_img'([^>]+?)>/i", "<img class='bbc_img'\\1\\2>", $html );
}
}
Następnie w samym bbcode nasz obrazek musi posiadać parametr rel="no-lgh", przykładowo:
Kod: Zaznacz cały kod
<img rel="no-lgh" src="http://www.adminzone.pl/images/logo.png" alt="logo" />