Мы в твиттере Мы в телеграме!

Провеббер » DataLife Engine » DLE хаки » Вывод последних комментариев под краткой новостью в DLE

Набор в команду! Ведется набор в команду, для наполнения сайта новым, интересным контентом. Если у тебя есть предложения, свободное время, ты обладаешь интересным контентом, и хочешь поделиться с другими?
Обращайся к нам в ЛС группы Вконтакте.

Вывод последних комментариев под краткой новостью в DLE

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


Небольшая модификация хак дле если нужно вывести последние комментарии под краткой новостью. Будет полезен сайтам , которым важно ,чтобы пользователи видели какие новости обсуждаются .

Все версии DLE скрипта.
Количество запросов: увеличится на 1 при просмотре коротких новостей.
Автор: RedRat
Источник: admin-club.ru

Установка:
1. В файле engine/modules/show.short.php

найти

$tpl->compile( 'content' );

        if( $user_group[$member_id['user_group']]['allow_hide'] ) $tpl->result['content'] = str_ireplace( "
Внимание! У Вас нет прав для просмотра скрытого текста.
", "", $tpl->result['content']) );
        else $tpl->result['content'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#ims", "<div class=\"quote\">" . $lang['news_regus'] . "</div>", $tpl->result['content'] );


вставить выше

if($row['comm_num']>0){
            $newsIDs[] = $row['id'];
            $tpl->set('{comments_here}', '{comments_here:'.$row['id'].'}');
            $tpl->set('[comments_here]','');
            $tpl->set('[/comments_here]','');
        }else{
            $tpl->set('{comments_here}', '');
            $tpl->set_block ("'\\[comments_here\\](.*?)\\[/comments_here\\]'si", '');
        }        


найти

    $tpl->clear();
    $db->free( $sql_result );
    
    if( $do == "" ) $do = $subaction;
    if( $do == "" and $year ) $do = "date";
    $ban_short = array ();
    unset( $ban_short );


вставить выше

    if(count($newsIDs) && $lang['tplCommCount']>0 && $lang['tplCommShortNews']!=''){
        if($lang['CommIncludeStandartTemplate']==1){
            $lang['tplCommShortNews'] = file_get_contents($tpl->dir . DIRECTORY_SEPARATOR . 'comments.tpl');
        }
        $queComms = $db->query("SELECT * FROM ".PREFIX."_comments LEFT JOIN ".PREFIX."_users ON ".PREFIX."_comments.user_id = ".PREFIX."_users.user_id WHERE post_id = ".join(' OR post_id = ',$newsIDs)." ORDER by ".PREFIX."_comments.id DESC");
        $lastComms = array();
        $cIDs = array();
        while($row2 = $db->get_row($queComms)){
            if($cIDs[$row2['post_id']]<$lang['tplCommCount']){
                $lastComms[$row2['post_id']][] = $row2;
                $cIDs[$row2['post_id']]++;
            }
        }
        function InsertLastComms($id){
            global $lastComms, $lang, $user_group, $config;
            if(!isset($lastComms[$id])) return '';
            $r = '';
            foreach($lastComms[$id] as $v){
                $r_ = preg_replace ( "#\\[aviable=lastcomments\\](.*?)\\[/aviable\\]#ies", '', $lang['tplCommShortNews'] );
                $r_ = preg_replace ( "#\\[not-group=5\\](.*?)\\[/not-group\\]#ies", '', $r_ );
                $r_ = preg_replace ( "#\\[fast\\](.*?)\\[/fast\\]#ies", '', $r_ );
                if($v['signature']=='') $r_ = preg_replace ( "#\\[signature\\](.*?)\\[/signature\\]#ies", '', $r_ );
                
                $r .= strtr($r_,array(
                    '{post_id}' => $v['post_id'],
                    '{author}' => $v['author'],
                    '{email}' => $v['email'],
                    '{author}' => $v['is_register']?'<a href="/user/'.urlencode($v['name']).'/">'.$v['name'].'</a>':$v['autor'],
                    '{name}' => $v['name'],
                    '{user_id}' => $v['user_id'],
                    '{date2}' => $v['date'],
                    '{date}' => date('d.m, H:i', strtotime($v['date'])),
                    
                    '{comment}' => $v['text'],
                    '{news_title}' => '',
                    '{mass-action}' => '',
                    '{icq}' => $v['icq']?$v['icq']:'---',
                    '{group-name}' => $user_group[$v['user_group']]['group_name'],
                    '{news-num}' => $v['news_num'],
                    '{comm-num}' => $v['comm_num'],
                    '{registration}' => date('d.m.Y', $v['reg_date']),
                    '{foto}' => $v['foto']?'uploads/fotos/'.$v['foto']:'/templates/'.$config['skin'].'/images/noavatar.png',
                    '{signature}' => $v['signature']
                )).$lang['tplCommShorNewsExplorer'];
            }
            return $r;
        }
        $tpl->result['content'] = preg_replace ( "#{comments_here:(.*?)}#ies", "InsertLastComms('\\1')", $tpl->result['content'] );
    }




2. В файле language/Russian/website.lng. Данную вставку желательно провести в каждый языковую папку.

найти

$lang = array (


ниже вставить


'tplCommShortNews' => 'Комментарий: {comment}, от <strong>{name}</strong> ({date})',
'tplCommShorNewsExplorer' => '<br/>',
'tplCommCount' => 3,
'CommIncludeStandartTemplate' => 1,


tplCommShortNews - строка-шаблон, если вдруг Вы решите не использовать стандартный шаблон comments.tpl.
tplCommShorNewsExplorer - вставляется после каждого блока комментариев,
tplCommCount - количество последних комментариев,
CommIncludeStandartTemplate - 1 использовать стандартный шаблон comments.tpl, 0 не использовать стандартный шаблон.


3. В файле шаблона shortstory.tpl

В любое место вставить
[comments_here]{comments_here}[/comments_here]


Готово.


Дополнительные ссылки на скачивание ТОЛЬКО для зарегистрированных


-1
Просмотры: 7 723 :: Комментарии (8) :: :: Нужна помощь? Задайте вопрос на форуме ::
Теги: dle, хаки
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1llipek

  • 15 июля 2011 19:27
  • Регистрация: 14.08.2009
  • Был(а) онлайн: 28.01.2019
  • Комментариев: 41
  • 0
Интересно, оригинально, однозначно заслуживает +

#2CollisionRepair3p

  • 15 июля 2011 22:45
  • Регистрация: 4.07.2011
  • Был(а) онлайн: 15.07.2011
  • Комментариев: 1
  • -1
http://www.driversed.com has drivers ed for drivers in Alabama, Alaska, American Samoa, Arizona, Arkansas, California, Colorado, Connecticut, Delaware, District of Columbia, Florida, Georgia, Guam, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, Nevada, New Hampshire, New Jersey, New Mexico, New York, North Carolina, North Dakota, Northern Marianas Islands, Ohio, Oklahoma, Oregon, Pennsylvania, Puerto Rico, Rhode Island, South Carolina, South Dakota, Tennessee, Texas, Utah, Vermont, Virginia, Virgin Islands, Washington, West Virginia, Wisconsin, Wyoming.

Teenagers can begin taking drivers education online at http://www.driversed.com and get 10% OFF purchase when using discount code TENOFFDRIVER.

DriversEd.com has the best drivers ed online and they are trusted and dmv certified! Take 20% of the course for free before you purchase!

#3Dryn9

  • 15 июля 2011 23:10
  • Регистрация: 5.07.2011
  • Был(а) онлайн: 26.07.2011
  • Комментариев: 5
  • 0
ооо суперски))))

#4ReteImpamitte

  • 16 июля 2011 13:33
  • Регистрация: 16.07.2011
  • Был(а) онлайн: 16.07.2011
  • Комментариев: 1
  • 0
Everything is interesting

#5Evan

  • 17 июля 2011 12:55
  • Регистрация: 23.11.2009
  • Был(а) онлайн: 21.07.2024
  • Комментариев: 35
  • 0
Open in Ajax Window:
3. shortstory.tpl open and found:
Comments: [com-link]<b>{comments-num}</b>[/com-link]


Change:
[comments_here]Comments: <script type="text/javascript">function showYorum{news-id}() {$(function(){
    $('#Yorum{news-id}').dialog({ &
nbsp;      autoOpen: true,        show: 'fade',        hide: 'fade',        width: 770,            &nbs
p;   buttons: {            "Cl
ose" : function() {             &
nbsp;  $(this).dialog("close");  &nb
sp;         }   &nbs
p;           }    });});}</script><div id="Yorum{news-id}" title="Last 3 Comments" style="display:none; " >{comments_here}</div><a class="Yorum{news-id}" href="#" onclick="showYorum{news-id}(); return false;" class="mainlevel">{comments-num}</a>[/comments_here]

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

#6dimass

  • 17 июля 2011 14:51
  • Регистрация: 20.09.2010
  • Был(а) онлайн: 4.04.2020
  • Комментариев: 10
  • 0
Что то новенькое испробую

#7edvardas218

  • 20 августа 2011 14:32
  • Регистрация: 12.07.2011
  • Был(а) онлайн: 17.07.2014
  • Комментариев: 1
  • 0
nirabotajas etu hak

#8GroupR

  • 1 сентября 2011 15:09
  • Регистрация: 5.02.2011
  • Был(а) онлайн: 17.04.2014
  • Комментариев: 14
  • 0
Подскажите как сделать чтобы комментарии выводились не снизу вверх а сверху вниз ?

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

Архив новостей
Ноябрь 2024 (9)
Октябрь 2024 (169)
Сентябрь 2024 (13)
Август 2024 (60)
Июль 2024 (12)
Июнь 2024 (30)

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