Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Модули » Картинка thumbs вывод самой маленькой картинки на сайте?

Картинка thumbs вывод самой маленькой картинки на сайте?


     23.11.2018    Все вопросы » Модули    50

вопрос
Всем добрый день до версии 10.5 использовал доработку которая выводила с новости не только {image-1} первую картинку но и выводила ее маленькую {thumb-1} картинку. Но после обновления до 12.1 что то поменялось и теперь не работает скрипт.

Подскажите пожалуйста что не так( почему не работает. он выводит картинку но такого вида
/uploads/posts/2018-11//1541260228_1540982207_2_4bc591190d0e1c6463694b907a02e7eb.jpg
а должен
/uploads/posts/2018-11/thumbs/1541260228_1540982207_2_4bc591190d0e1c6463694b907a02e7eb.jpg

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-plus" ) 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 );
}
if (stripos ( $tpl->copy_template, "{medium-" ) !== 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-plus" ) 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('thumbs', $url2)) {
$url2[count($url2)-2] = "medium";
$url = implode("/", $url2);
} else
if(!in_array('medium', $url2)) {
$url2[count($url2)-1] = "medium/" . $url2[count($url2)-1];
$url = implode("/", $url2);
}
$tpl->copy_template = str_replace( '{medium-'.$i_count.'}', $url, $tpl->copy_template );
$tpl->copy_template = str_replace( '[medium-'.$i_count.']', "", $tpl->copy_template );
$tpl->copy_template = str_replace( '[/medium-'.$i_count.']', "", $tpl->copy_template );
}
}
$tpl->copy_template = preg_replace( "#\[medium-(.+?)\](.+?)\[/medium-(.+?)\]#is", "", $tpl->copy_template );
$tpl->copy_template = preg_replace( "#\\{medium-(.+?)\\}#i", "{THEME}/dleimages/no_image.jpg", $tpl->copy_template );

}
	
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-plus" ) 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('thumbs', $url2) OR in_array('medium', $url2)) {
$url2[count($url2)-2] = "";
$url = implode("/", $url2);
}
$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 );

}

Ответа пока нет


1 комментарий

BYMERPRO
Юзер

BYMERPRO - 25 ноября 2018 17:19 -

У меня на Dle 13.1 Такой плагин стоит:

Найти
if (stripos ( $tpl->copy_template, "{image-" ) !== false) {

			$images = array();
			preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['short_story'].$row['xfields'], $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" OR strpos($info['dirname'], 'engine/data/emoticons') !== false) 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 );
	
		}


Ниже вставить:
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 );
	
			}

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх