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

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


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

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

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

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

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> добавил. но не работает.
и как я понял этот хак только показывает ссылку на добавленный материал. а нельзя сделать чтобы автоматически заходило на этот материал?

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 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
192

1659 | 1292

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

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

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

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

dj-avtosh
39

1479 | 390

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

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

skype: elhan.isaev

nowheremany
192

1659 | 1292

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

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

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

dj-avtosh
39

1479 | 390

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

Это мне?

skype: elhan.isaev

nowheremany
192

1659 | 1292

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


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

dj-avtosh
39

1479 | 390

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

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

skype: elhan.isaev

MAPKOBKA
4

80 | 18

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 | 18

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

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

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

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