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

Нужно добавить уникальный ID для картинок в темах

Recommended Posts

Здравствуйте

 

Нужно добавить уникальный ID для картинок в темах, для новых и для старых тоже.

 

admin/sources/classes/text/parser/html.php

 

		if ( ! parent::$Perms['parseHtml'] )
	{
		$uniqid_forimages = uniqid();
		$html = preg_replace( "/(?!<span rel='lightbox'>)<img(?!.*sharedmedia_screenshot)([^>]+?)>/i", "<span rel='lightbox'><img class='bbc_img' id='" . $uniqid_forimages . "'\\1></span>", $html );
		$html = preg_replace( "/<img class='bbc_img'([^>]+?)class='bbc_img'([^>]+?)>/i", "<img class='bbc_img'\\1\\2>", $html );
	}

 

Но...

1) Если в посте загрузить или вставить через img bbcode несколько картинка, тогда для всех добавляется одинаковые ID.

2) Нужно еще добавить для старых картинок.

Share this post


Link to post
Share on other sites

Как вариант

$html = preg_replace_callback(
"/<img class='bbc_img'/i",
function ($matches) {
	return $matches[0] . ' id="' . uniqid() . '"';
},
$html
);

 

php

$html = preg_replace_callback(
   "/<img class='bbc_img'/i",
   create_function('$matches', 'return $matches[0] . \' id="\' . uniqid() . \'"\';'),
   $html
);


Либо

$html = preg_replace_callback(
"/<img class='bbc_img'/i",
array($this, 'addIdToImages'),
$html
);

 

и добавить метод

protected function addIdToImages($matches)
{
return $matches[0] . ' id="' . uniqid() . '"';
}

 

2) Нужно еще добавить для старых картинок.

Нужно удалить кеш постов

  • Upvote 1

Share this post


Link to post
Share on other sites
Parse error: syntax error, unexpected T_FUNCTION in /admin/sources/classes/text/parser/html.php on line 111

Share this post


Link to post
Share on other sites

php версии ниже 5.3?

Share this post


Link to post
Share on other sites

Я добавил вариант для php

  • Upvote 1

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...