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

перенаправление после добавления материала


     30.01.2013    Общие вопросы по PHP    2806

вопрос
Как сделать, чтобы после добавления материала мне не выводилась страница с текстом:

"Новость добавлена. Ваша статья была успешно добавлена в базу данных. Добавить еще или Вернуться назад"

А перенаправляло на добавленный материал или главную страницу?

DLE 9.7

Ответил: ПафНутиЙ


Автор: MSW
Версия DLE: 9.5-9.7 //возможно и более старые
Сайт поддержки

Небольшой хак Show Added News добавляет возможность, при добавлении новости с сайта, сразу перейти на только что добавленную новость, так как по умолчанию DLE предлагает добавить ещё новость или вернуться назад.

Особенности - для перехода в добавленную новость формируется ссылка в зависимости от установленных настройке виде ЧПУ.

Установка хака Show Added News
Файл: /engine/modules/addnews.php
Найти:
if( $config['allow_alt_url'] == "yes" ) msgbox(

Добавить выше:
#****** Show Added News *** MSW * http://0-web.ru/ ******#
            if( $config['allow_alt_url'] == "yes" ) {
                if( $config['seo_type'] == 1 OR $config['seo_type'] == 2 ) {
                    $category_id = intval( implode( ',', $catlist ) );
                    if( $category_id AND $config['seo_type'] == 2 ) {
                        $c_url = get_url( $category_id );
                        $full_link = "{$config['http_home_url']}{$c_url}/{$row['id']}-{$alt_name}.html";
                    } else {
                        $full_link = "{$config['http_home_url']}{$row['id']}-{$alt_name}.html";
                    }
                } else {
                    $full_link = $config['http_home_url'].date( 'Y/m/d/', $row['date'] ).$alt_name.".html";
                }
            } else {
                $full_link = "{$config['http_home_url']}index.php?newsid={$row['id']}";
            }
            $show_news = "Посмотреть новость";
#****** Show Added News *** MSW * http://0-web.ru/ ******#


Найти: (2 раза)
$lang[all_prev]

Добавить тут же:
{$lang['add_or']} {$show_news}

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

Lynat1k
1

373 | 93

Lynat1k - 31 января 2013 00:56 - Юзер

$lang[all_prev] 
встречается 4 раза в файле! после которого добавлять?

DaivZ
2

283 | 175

DaivZ - 31 января 2013 00:58 - Юзер

Найти: (2 раза)
<a href=\"{$config['http_home_url']}\">$lang[all_prev]</a>
Добавить тут же:
{$lang['add_or']} {$show_news}

Lynat1k
1

373 | 93

Lynat1k - 31 января 2013 01:13 - Юзер

нашел, сразу после <a href=\"{$config['http_home_url']}\">$lang[all_prev]</a> добавил. но не работает.
и как я понял этот хак только показывает ссылку на добавленный материал. а нельзя сделать чтобы автоматически заходило на этот материал?

ПафНутиЙ
1073

3418 | 2437

ПафНутиЙ - 31 января 2013 01:20 - Админ

а если пользователь не хочет переходить к материалу? зачем решать за него?

Каков вопрос - таков и ответ. Просто помните об этом.

Lynat1k
1

373 | 93

Lynat1k - 31 января 2013 02:01 - Юзер

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

iwanowi4
88 | 71

iwanowi4 - 31 января 2013 07:02 - Юзер

Цитата: Lynat1k
для своего удобства...

{$lang['add_or']} {$show_news}, header("Refresh: 1; url=$full_link");

как то так, наверно... ;-)

Lynat1k
1

373 | 93

Lynat1k - 3 февраля 2013 18:47 - Юзер

не работает
Parse error: syntax error, unexpected T_STRING in /www/engine/modules/addnews.php on line 434

iwanowi4
88 | 71

iwanowi4 - 6 февраля 2013 18:31 - Юзер

Цитата: Lynat1k
syntax error

если после этого ,
header("Refresh: 1; url=$full_link")
, то это ж не ответ, а совет и не проверенный... вот ещё совет:
, header("Refresh: 1; url={$full_link}")
;-) проверить нету возможности, ждите ответа от гуру.

nowheremany
193

1723 | 1306

nowheremany - 6 февраля 2013 23:32 - Эксперт

Цитата: iwanowi4
Refresh: 1; url={$full_link}

Это для метатегов
А надо делать так, если уж перенаправлять. Хотя ИМХО не вижу смысла
header("Location: {$full_link}");

Благодарность принимаю тут Связь

dj-avtosh
39

1490 | 395

dj-avtosh - 6 февраля 2013 04:47 - шашлычник

Я в ответе не увидел ни одного редиректа)) И кстати глупо столько кода городить, имея при себе last_insert_id )))

skype: elhan.isaev

nowheremany
193

1723 | 1306

nowheremany - 6 февраля 2013 10:23 - Эксперт

Кстати предже чем писать подобное, нужно посмотреть и если не доходит, то поставить хак.
Чтобы не выглядеть потом мудаком

Благодарность принимаю тут Связь

dj-avtosh
39

1490 | 395

dj-avtosh - 6 февраля 2013 12:34 - шашлычник

Это мне?

skype: elhan.isaev

nowheremany
193

1723 | 1306

nowheremany - 6 февраля 2013 13:17 - Эксперт


Благодарность принимаю тут Связь

dj-avtosh
39

1490 | 395

dj-avtosh - 6 февраля 2013 23:02 - шашлычник

Разговор зашел в тупик

skype: elhan.isaev

MAPKOBKA
4

80 | 19

MAPKOBKA - 10 июля 2013 20:02 - Юзер

Спасибо, решение рабочее. Для автоматического редиректа на модерируемую новость.
вот это
header("Location: {$full_link}");

вставить так.
  $show_news = "Посмотреть новость";
header("Location: {$full_link}");
#****** Show Added News *** MSW * http://0-web.ru/ ******#

MAPKOBKA
4

80 | 19

MAPKOBKA - 10 июля 2013 20:11 - Юзер

Хм, не полностью работает, работает только при редактировании новости.

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

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