Перейти к публикации

Как вывести ссылку на thumb изображение?


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

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

Может кто сталкивался, через {image-x} можно вывести url картинки с краткой новости, а как вывести ссылку на thumb изображения?

 

http://yabkupila.com/

Ссылка на сообщение
Поделиться на других сайтах

Вообщем нашел решение в интернете.

В engine/modules/show.short.php добавил 

			// Доработка
			if (stripos ( $tpl->copy_template, "{thumb-" ) !== false) {

				$images = array();
				preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['short_story'], $media);
				$data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]);
	
				foreach($data as $url) {
					$info = pathinfo($url);
					if (isset($info['extension'])) {
						if ($info['filename'] == "spoiler-plus" OR $info['filename'] == "spoiler-minus" ) continue;
						$info['extension'] = strtolower($info['extension']);
						if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) array_push($images, $url);
					}
				}
	
				if ( count($images) ) {
					$i_count=0;
					foreach($images as $url) {
						$i_count++;
						$url2 = explode("/", $url);
						if(in_array('medium', $url2)) {
						$url2[count($url2)-2] = "thumbs";
						$url = implode("/", $url2);
						} else
						if(!in_array('thumbs', $url2)) {
						$url2[count($url2)-1] = "thumbs/" . $url2[count($url2)-1];
						$url = implode("/", $url2);
						}
						$tpl->copy_template = str_replace( '{thumb-'.$i_count.'}', $url, $tpl->copy_template );
						$tpl->copy_template = str_replace( '[thumb-'.$i_count.']', "", $tpl->copy_template );
						$tpl->copy_template = str_replace( '[/thumb-'.$i_count.']', "", $tpl->copy_template );
					}
	
				}
	
				$tpl->copy_template = preg_replace( "#\[thumb-(.+?)\](.+?)\[/thumb-(.+?)\]#is", "", $tpl->copy_template );
				$tpl->copy_template = preg_replace( "#\\{thumb-(.+?)\\}#i", "{THEME}/dleimages/no_image.jpg", $tpl->copy_template );
	
			}
			// Доработка

По сути это тот же самый код как и для {image-x},

			if (stripos ( $tpl->copy_template, "{image-" ) !== false) {

				$images = array();
				preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['short_story'], $media);
				$data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]);
	
				foreach($data as $url) {
					$info = pathinfo($url);
					if (isset($info['extension'])) {
						if ($info['filename'] == "spoiler-plus" OR $info['filename'] == "spoiler-minus" ) continue;
						$info['extension'] = strtolower($info['extension']);
						if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) array_push($images, $url);
					}
				}
	
				if ( count($images) ) {
					$i_count=0;
					foreach($images as $url) {
						$i_count++;
						$tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url, $tpl->copy_template );
						$tpl->copy_template = str_replace( '[image-'.$i_count.']', "", $tpl->copy_template );
						$tpl->copy_template = str_replace( '[/image-'.$i_count.']', "", $tpl->copy_template );
					}
	
				}
	
				$tpl->copy_template = preg_replace( "#\[image-(.+?)\](.+?)\[/image-(.+?)\]#is", "", $tpl->copy_template );
				$tpl->copy_template = preg_replace( "#\\{image-(.+?)\\}#i", "{THEME}/dleimages/no_image.jpg", $tpl->copy_template );
	
			}

только переделанный под {thumb-x} 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...