Всё для Веб-Мастера » Всё для DataLife Engine » DLE-Баг-Фиксы » Багфикс правим url для e-mail сообщения о комментарии в новости для DLE 9.2 и ниже
Правила Контакты Чтение RSS

Багфикс правим url для e-mail сообщения о комментарии в новости для DLE 9.2 и ниже

Багфикс правим url для e-mail сообщения о комментарии в новости для DLE 9.2 и ниже


В DLE существует удобная подписка на комментарии к новости по e-mail, кроме того она необходима Администрациям сайтов, но в этой функции есть неприятный момент, это само содержание приходящего сообщения, а вернее его функциональные возможности, чтобы их улучшить мы заменим неудобный и непонятный url приходящий в сообщении в виде dlepro.com/index.php?newsid=106, на более понятный и несущий в себе информацию url согласно типу ЧПУ выбранному в настройках скрипта, например: dlepro.com/106-ringationmod-v201.html, причём сделаем переход непосредственно к комментариям. Это сделает сообщение не только более правильным, но и удобным, раз в нём не предусмотрена информация о названии новости, в которую добавлен комментарий.

Исправляем:

1. Открываем engine/ajax/addcomments.php

Ищем(примерно строка 51):
$user_group = get_vars( "usergroup" );


Выше вставляем:
$cat_info = get_vars ( "category" );
      if ( ! is_array ( $cat_info ) ){
          $cat_info = array ();
          
          $db->query ( "SELECT * FROM " . PREFIX . "_category ORDER BY posi ASC" );
          while ( $row = $db->get_row () ) {
              
              $cat_info[$row['id']] = array ();
              
              foreach ( $row as $key => $value ) {
                  $cat_info[$row['id']][$key] = stripslashes ( $value );
              }
          
          }
          set_vars ( "category", $cat_info );
          $db->free ();
      }


2. Открываем engine/modules/addcomments.php

Ищем(примерно строка 295):
$row['template'] = str_replace( "{%link%}", $config['http_home_url'] . "index.php?newsid=" . $post_id, $row['template'] );


Заменяем на:

if ( $config['allow_alt_url'] == 'yes' )
            {
                $row1 = $db->super_query( "SELECT id, alt_name, flag, category, date FROM " . PREFIX . "_post WHERE id='$post_id' LIMIT 0,1" );

                if ( $row1['flag'] and $config['seo_type'] )
                {
                    if ( $row1['category'] and $config['seo_type'] == 2 ) $link = $config['http_home_url'] . get_url( intval( $row1['category'] ) ) . '/' . $row1['id'] . '-' . $row1['alt_name'] . '.html#comment';
                    else $link = $config['http_home_url'] . $row1['id'] . '-' . $row1['alt_name'] . '.html#comment';
                } else $link = $config['http_home_url'] . date( 'Y/m/d/', $row1['date'] ) . $row1['alt_name'] . '.html#comment';
            } else $link = $config['http_home_url'] . 'index.php?newsid=' . $post_id . '#comment';
            
            $row['template'] = str_replace( "{%link%}", $link, $row['template'] );

Всё!

Теперь в приходящем сообщении о новом комментарии всё удобно и функционально, кликнув на ссылку в тексте сообщения мы переходим непосредственно в комментарии той новости куда был добавлен новый.

Авторы: Брупт (_dle-infa.ru), Yeti (_dlepro.com)!
Внимание! У Вас нет прав для просмотра скрытого текста.



Скачать бесплатно Багфикс правим url для e-mail сообщения о комментарии в новости для DLE 9.2 и ниже на WebWel.ru

{repa}

flatr0n

  • 11 января 2011 14:06
  • Регистрация: --
  • Группа: Гости
  • Комментариев: 0
Правим быстро)

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

Навигация ! ! !

Designed by EnerGY