Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Шаблоны (TPL) Тег {image-x} в searchresult.tpl

Тег {image-x} в searchresult.tpl


     31.07.2012    Шаблоны (TPL)    2739

вопрос
Здравствуйте. Обнаружил, что в файле шаблона searchresult.tpl не работает тег {image-x}. Для разрешения этой проблемы дополнительные поля использовать не хочу. Надеюсь на вашу помощь.

Ответил: CrasHandBurN


  1. Откройте папку /engine/modules
  2. Найдите search.php
  3. И вставьте после:
    $tpl->set( '{views}', $row['news_read'] );

    //Вывод картинки тегом {image-X}    
    if (stripos ( $tpl->copy_template, "{image-" ) !== false) {

    $images = array();
    preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['story'], $media);
    $data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]);

    foreach($data as $url) {
    $info = pathinfo($url);
    if (isset($info['extension'])) {
    $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=0;
    foreach($images as $url) {
    $i++;
    $tpl->copy_template = str_replace( '{image-'.$i.'}', $url, $tpl->copy_template );
    $tpl->copy_template = str_replace( '[image-'.$i.']', "", $tpl->copy_template );
    $tpl->copy_template = str_replace( '[/image-'.$i.']', "", $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 );

    }

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

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