Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Модули Случайная новость

Случайная новость


     26.06.2014    Модули    1388

вопрос
Есть модуль Вывод случайной новости:
У меня вывод изображения к новости настроен через доп. поле, а в модуле скорее всего стандартно, как сделать чтобы модуль выводил моим способом.
---------------------------------------------
*/
$kol = 100; // количество символов в выводе короткой новости в блоке
$maxWidth = 150; // максимальная ширина изображения
$maxHeight = 150; // максимальная высота изображения

$db->query("SELECT COUNT(*) FROM ".PREFIX ."_post");
$row = $db->get_row();

$offset = mt_rand(0, $row['COUNT(*)']-1);
$db->query("SELECT * FROM ".PREFIX ."_post LIMIT 1 OFFSET $offset");

$row = $db->get_row();
preg_match_all( '|<img[\s]+src[\s]*=[\s]*\"([^\"]*)\"|', $row['short_story'], $matches );

if ($matches[1][0] != '') {
$imageinfo = @getimagesize($matches[1][0]);  
$width  = $imageinfo[0];
$height = $imageinfo[1];

if ($width > $height) {
   $fltRatio = floatval($maxWidth / $width);
} else {
   $fltRatio = floatval($maxHeight / $height);
}

$intNewWidth  = intval($fltRatio * $width);
$intNewHeight = intval($fltRatio * $height);
    
$pic = '<center><img src="'.$matches[1][0].'" width="'.$intNewWidth.'" height="'.$intNewHeight.'"></center>';
} else {$img = '';}

$news_r = '<b>'.'<center>'.ucfirst($row['title']).'</b>'.'<br>';
if ($pic != '') {$news_r .= '<br>'.$pic;}
if ($config['allow_alt_url'] == "yes") {
if ($row['flag'] AND $config['seo_type']) {
if ($row['category'] AND $config['seo_type'] == 2) {
$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";
} else {
$full_link = $config['http_home_url'].$row['id']."-".$row['alt_name'].".html";
} } else {
$full_link = $config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html";
} } else { $full_link = $config['http_home_url'].$row['id']."-".$row['alt_name'].".html"; }
if (strlen($story) >= 0) {$news_r .= substr($story,0,$kol).'<br><a href="'.$full_link.'">Cмотреть</a>';}
echo $news_r;
?>

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


Комментарии пользователей (9)

FastFud
50

1599 | 588

FastFud - 26 июня 2014 22:47 - Юзер

1. Есть модуль BlockPro
2.

$xfieldsdata = xfieldsdataload( $row['xfields'] );
в нужном месте.
$xfieldsdata['image']


image - название допо поля.

whyso
10 | 1

whyso - 27 июня 2014 09:57 - Юзер

FastFud,а можно поподробней модуль установил, куда код который Вы дали пихать?

FastFud
50

1599 | 588

FastFud - 27 июня 2014 14:18 - Юзер


после
$row = $db->get_row();
добавить
$xfieldsdata = xfieldsdataload( $row['xfields'] );

потом

$pic = '<center><img src="'.$xfieldsdata['image'] .'" width="'.$intNewWidth.'" height="'.$intNewHeight.'"></center>';

severnake
61 | 8

severnake - 27 июня 2014 17:16 - Юзер

а через кастом с сорт ранд - нет?)

whyso
10 | 1

whyso - 27 июня 2014 18:53 - Юзер

FastFud, не помогает, не выводит картинку((
Помогите пожалуйста, очень нужно.

rocksmart
64

307 | 115

rocksmart - 27 июня 2014 19:13 - Юзер

да выводи через родной тег

{custom template="custom" limit="1" order="rand" cache="yes"}


custom ->твой шаблон

А твой код фигня - два не нужных запроса без кеширования

whyso
10 | 1

whyso - 27 июня 2014 19:18 - Юзер

rocksmart, я бы с радостью но нужно чтобы при обновлении страницы показывал уже другую новость, а не эту же.

rocksmart
64

307 | 115

rocksmart - 27 июня 2014 19:39 - Юзер

cache="yes"


cache принимает значения yes или no - устанавливает кешировать вывод или нет, рекомендуется кешировать для снижения нагрузки.



почитай дукументацию http://dle-news.ru/extras/online/index.html?startnews.html

whyso
10 | 1

whyso - 27 июня 2014 19:41 - Юзер

rocksmart,благодарю, выручили очень)

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

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