Помогите с созданием ссылки на случайную новость в DLE

D
На сайте с 09.01.2013
Offline
10
994

Пытался сделать в DLE ссылку при нажатии на которую выбирается случайная новость, но выдает ошибку. Не подскажите в чем проблема.

в engine/modules/randpost.php

<?php

if( !defined( 'DATALIFEENGINE' ) AND !LOGED_IN ) {

die( "Hacking attempt!" );

}

$rand_post = $db->super_query( "SELECT id, title, category, date, alt_name, flag FROM " . PREFIX . "_post ORDER BY RAND() LIMIT 1" );

if( $config['allow_alt_url'] == "yes" ) {

if( $rand_post['flag'] and $config['seo_type'] ) {

if( $rand_post['category'] and $config['seo_type'] == 2 ) {

$full_link = $config['http_home_url'] . get_url( $rand_post['category'] ) . "/" . $rand_post['id'] . "-" . $rand_post['alt_name'] . ".html";

} else {

$full_link = $config['http_home_url'] . $rand_post['id'] . "-" . $rand_post['alt_name'] . ".html";

}

} else {

$full_link = $config['http_home_url'] . date( 'Y/m/d/', $rand_post['date'] ) . $rand_post['alt_name'] . ".html";

}

} else {

$full_link = $config['http_home_url'] . "index.php?newsid=" . $rand_post['id'];

}

header("Location: ".$full_link);

?>

engine/engine.php

case "randpost" :

include ENGINE_DIR . '/modules/randpost.php';

break;

ну и сама ссылка

http://mysite.ru/?do=randpost

WebAlt
На сайте с 02.12.2007
Offline
266
#1

Если v.9.7, то можно сделать стандартным способом примерно тоже самое, без модулей:

1. В main.tpl в нужное место:

{custom template="rand" order="rand"}

2. Создать в папке с шаблоном rand.tpl с содержимым:

<div class="">[full-link]Случайная новость[/full-link]</div>

http://dle-news.ru/extras/online/startnews.html

http://dle-news.ru/extras/online/all16.html

D
На сайте с 09.01.2013
Offline
10
#2

WebAlt,У меня v9.6

дани мапов
На сайте с 06.09.2012
Offline
204
#3

А какая ошибка выходит?

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
D
На сайте с 09.01.2013
Offline
10
#4

Спасибо всем,но я решил проблему по другому.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий