prowebber.ru - Тут есть все для настоящих вебмастеров

Чтение RSS Мы в твиттере
«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

Всё для вебмастера » Всё для DataLife Engine » DLE хаки » Картинка для краткой новости тегом

Картинка для краткой новости тегом


Данный материал предоставлен сайтом ProWebber.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
У нас вы можете скачать бесплатно Картинка для краткой новости тегом.


Картинка для краткой новости тегом

Недавно возникла необходимость выводить картинку в краткую новость тегом. Решил забирать первую вставленную в новость каритинку и выводить её в краткую новость тегом.

В файле show.short.php найти:

$tpl->set( '{login}', $row['autor'] );



Ниже добавить :

            //get image for the short story
            $tpl->set( '{shortimage}', '' );//ставим пустой тег
            $newsid = $row['id'];
            $imagequery = $db->query( "SELECT * FROM " . USERPREFIX . "_images WHERE news_id = '$newsid'");//запрос в базу

                while ( $rowimgshort = $db->get_row($imagequery) ) {
                                $image = explode('|||', $rowimgshort['images']);//разбиваем картинки
                                $image = '<img src="/uploads/posts/'.$image[0].'" width="72" height="49" />';//тут можно указать высоту, ширину, алт и т.д.
                            $tpl->set( '{shortimage}', $image );//ставим тег
                                
                }


В шаблоне shortstory.tpl , в нужном месте вставить {shortimage}

Радоваться.

P.S. прошу не драться, если сочтёте баяном.


-30
Просмотры: 3760 VIP ProWebber | Комментарии (11)
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1SaD

  • 5 августа 2012 16:52
  • Регистрация: 23.02.2011
  • ICQ: --
  • Комментариев: 502
Это в движке уже реализовано

{image-x}

--------------------

0

#2Almere

  • 5 августа 2012 17:36
  • Регистрация: 14.12.2010
  • ICQ: 1330666
  • Комментариев: 22
Появился этот тег в 9.6, а я писал на 9.5.

--------------------

-1

#3SaD

  • 5 августа 2012 18:17
  • Регистрация: 23.02.2011
  • ICQ: --
  • Комментариев: 502
Almere,
Ну а смысл тогда выкладывать? Тем более это не первая реализация.

--------------------

0

#4Sander

  • 5 августа 2012 19:05
  • Регистрация: 19.02.2010
  • ICQ: 404037556
  • Комментариев: 324
За реализацию жирный минус.
Во первых добавляется запрос на каждую новость.
Во вторых картинка не будет выведена, если она не загружена в новость.
В третьих во всех новостях первой картинкой обязательно должен быть загружен постер.

--------------------

+5

#5Almere

  • 5 августа 2012 19:50
  • Регистрация: 14.12.2010
  • ICQ: 1330666
  • Комментариев: 22
Реализацию? Я польщен : ) строчек кода - реализация)

За зрение жирный минус 20. Писал для своих нужд. Кому надо - подправят 5 строк кода.

--------------------

-5

#6tamerlan

  • 5 августа 2012 20:00
  • Регистрация: 11.09.2010
  • ICQ: 389840028
  • Комментариев: 299
Almere, все он верно сказал.

да и если делал для себя, то и оставляй у себя, а не выкладывай на общее обозрение.

легче реализацию подобного выдрать с dle 9.6.


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

$images = array();
preg_match_all('/(img|src)=("|\')[^"\'>]+/i�
39;, $row['short_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_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 );

}

--------------------

+3

#7Пряник

  • 5 августа 2012 22:18
  • Регистрация: 26.09.2010
  • ICQ: 1422995
  • Комментариев: 53
Да и вообще я писал самую первую реализацию данной фичи... Вроде всё было шикааарно :)

0

#8ivntech

  • 5 августа 2012 23:14
  • Регистрация: 7.03.2011
  • ICQ: --
  • Комментариев: 20
странно, на дле 9,5 для запроса custom в шаблоне ставил {image-1} то выводило нормально первую картинку из записи

0

#9Sander

  • 6 августа 2012 10:32
  • Регистрация: 19.02.2010
  • ICQ: 404037556
  • Комментариев: 324
Almere, Со зрением у меня полный порядок, как и с объективностью восприятия.

Решил забирать первую вставленную в новость каритинку

Говоришь про вставленную, а берешь загруженную. Первую вставленную - берет скрипт предоставленный tamerlan-ом.

--------------------

+1

#10planeta

  • 30 октября 2012 01:30
  • Регистрация: 30.05.2010
  • ICQ: --
  • Комментариев: 23
Написал для 9.5, так хоть укажи это в новости или лучше в заголовке.

0

#11brabus55

  • 10 августа 2013 19:12
  • Регистрация: 6.04.2010
  • ICQ: --
  • Комментариев: 5
Image-x же есть. Но за старание СПС

0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.

Max-energy.top - Заработок на электросчетчиках;)

Skripters.info - все для вебмастера. Только эксклюзивный контент.

Создание шаблонов DLE, быстро и недорого! 3wave.com.ua

Бро лей на лучшую партнёрку

Почти бесплатный VDS хостинг!

теплые стены отопление

pn20.com.ua


Поддержи сайт
Скрипты, cms, шаблоны, статьи по раскрутке

Опросы

Как часто вы бываете на сайте?

Захожу 1-2 раза в день
1-2 часа в сутки
Более 2 часов
Почти целый день тут smile

Архив новостей
Ноябрь 2016 (7)
Октябрь 2016 (10)
Сентябрь 2016 (8)
Август 2016 (11)
Июль 2016 (14)
Июнь 2016 (17)

Последние комментарии:

Искать людей

Ваши переписки