Sasha1981 0 Опубликовано: 2 мая 2011 Рассказать Опубликовано: 2 мая 2011 Предлагаю тему и прошу помощи. Можно ли при просмотре подробной новости, не выходя на главную страницу, сделать ссылки перехода в следующую подробную новость, либо в предыдущую, но тоже в подробную. Как в полной новости сайта установить стрелки для перехода? Попробовал прописать в шаблоне раздела fullstory.tpl следующее, [prev-link] Назад [/prev-link], [next-link] Далее [/next-link], в таком вот виде: <div class="navigation" align="center" style="margin-bottom:10px; margin-top:10px;">[prev-link]Назад[/prev-link] {pages} [next-link]Далее[/next-link]</div>, но всё это появилось вместе со скобками и без намёка на ссылки. Может кто знает, как можно сделать подобные кнопки перехода, чтоб не выходя на главную бегать в подробных новостях? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 2 мая 2011 Рассказать Опубликовано: 2 мая 2011 Такой возможности в скрипте нет, поэтому добавлением каких либо тегов в шаблоне этого не сделать, нужно писать модификации в скрипте. Цитата Ссылка на сообщение Поделиться на других сайтах
LADYX 90 Опубликовано: 4 мая 2011 Рассказать Опубликовано: 4 мая 2011 Sasha1981, необходимо будет вам совершить некоторые телодвижения для достижения определенной вами же цели) celsoft, с Вашего позволения) В файле engine/inc/options.php найти: showRow( $lang['opt_sys_wdq'], $lang['opt_sys_wdsd'], makeDropDown( array ("1" => $lang['opt_sys_yes'], "0" => $lang['opt_sys_no'] ), "save_con [allow_quick_wysiwyg]", "{$config['allow_quick_wysiwyg']}" ) ); ниже добавить: showRow( $lang['opt_sys_full'], $lang['opt_sys_full_bn'], makeDropDown( array ("1" => "Да", "0" => "Нет" ), "save_con[backnext_allow]", "{$config['backnext_allow']}" ) ); В файле engine/modules/show.full.php найти: if( $config['related_news'] ) { выше добавить: if( $config['backnext_allow'] == "1" ) { if( $config['allow_cache'] != "yes" ) { $config['allow_cache'] = "yes"; $revert_cache = true; } else $revert_cache = false; $back_link = dle_cache( "backlink", $row['id'] ); $next_link = dle_cache( "nextlink", $row['id'] ); if( $back_link === FALSE ) { // Back Link $backlink = $db->super_query( "SELECT id, date, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE date < FROM_UNIXTIME({$row['date']}) AND category = '{$row['category']}' AND approve = '1' ORDER BY date DESC LIMIT 0,1" ); if( $backlink ) { $backlink['date'] = strtotime( $backlink['date'] ); $backlink['category'] = intval( $backlink['category'] ); if( strlen( $backlink['title'] ) > 75 ) $backlink['title'] = substr( $backlink['title'], 0, 75 ) . " ..."; if( $config['allow_alt_url'] == "yes" ) { if( $backlink['flag'] and $config['seo_type'] ) { if( $backlink['category'] and $config['seo_type'] == 2 ) { $back_link = $config['http_home_url'] . get_url( $backlink['category'] ) . "/" . $backlink['id'] . "-" . $backlink['alt_name'] . ".html"; } else { $back_link = $config['http_home_url'] . $backlink['id'] . "-" . $backlink['alt_name'] . ".html"; } } else { $back_link = $config['http_home_url'] . date( 'Y/m/d/', $backlink['date'] ) . $backlink['alt_name'] . ".html"; } } else { $back_link = $config['http_home_url'] . "index.php?newsid=" . $backlink['id']; } } else { $back_link = ""; } if( $back_link ) { $back_link = "<a href=\"" . $back_link . "\">" . stripslashes( $backlink['title'] ) . "</a>"; } $db->free(); create_cache( "backlink", $back_link, $row['id'] ); } if( $next_link === FALSE ) { // Next Link $nextlink = $db->super_query( "SELECT id, date, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE date > FROM_UNIXTIME({$row['date']}) AND category = '{$row['category']}' AND approve = '1' ORDER BY date ASC LIMIT 0,1" ); if ( $nextlink ) { $nextlink['date'] = strtotime( $nextlink['date'] ); $nextlink['category'] = intval( $nextlink['category'] ); if( strlen( $nextlink['title'] ) > 75 ) $nextlink['title'] = substr( $nextlink['title'], 0, 75 ) . " ..."; if( $config['allow_alt_url'] == "yes" ) { if( $nextlink['flag'] and $config['seo_type'] ) { if( $nextlink['category'] and $config['seo_type'] == 2 ) { $next_link = $config['http_home_url'] . get_url( $nextlink['category'] ) . "/" . $nextlink['id'] . "-" . $nextlink['alt_name'] . ".html"; } else { $next_link = $config['http_home_url'] . $nextlink['id'] . "-" . $nextlink['alt_name'] . ".html"; } } else { $next_link = $config['http_home_url'] . date( 'Y/m/d/', $nextlink['date'] ) . $nextlink['alt_name'] . ".html"; } } else { $next_link = $config['http_home_url'] . "index.php?newsid=" . $nextlink['id']; } } else { $next_link = ""; } if( $next_link ) { $next_link = "<a href=\"" . $next_link . "\">" . stripslashes( $nextlink['title'] ) . "</a>"; } $db->free(); create_cache( "nextlink", $next_link, $row['id'] ); } if( $revert_cache ) $config['allow_cache'] = "no"; } else $back_link = $next_link = ''; // Back and Next Link Template $tpl->set( '{back-link}', $back_link ); $tpl->set( '{next-link}', $next_link ); В файле language/Russian/adminpanel.lng найти: 'wysiwyg_language' => "ru", ниже добавить: // Ссылки в полной новости на предыдущую и следующую новость opt_sys_full => "Показывать предыдущую и следующую новости?", opt_sys_full_bn => "Если 'Да', то в полной новости будет показыватся ссылка на предыдущую и следующую новости, если 'Нет', то ссылки показыватся не будут", В шаблоне fullstory.tpl там, где необходимо отображать ссылки, добавить: {back-link} - ссылка на предыдущую новость {next-link} - ссылка на следующую новость В админке в разделе: "Настройки системы" > "Новости" не забудьте указать: "Показывать предыдущую и следующую новости?" - "Да" Удачи! Цитата Ссылка на сообщение Поделиться на других сайтах
Alex-Levsha 6 Опубликовано: 4 мая 2011 Рассказать Опубликовано: 4 мая 2011 (изменено) LADYX браво! скажите о какой версии ДЛЕ идет речь? 9.2 интересует. Изменено 4 мая 2011 пользователем Alex-Levsha Цитата Ссылка на сообщение Поделиться на других сайтах
LADYX 90 Опубликовано: 4 мая 2011 Рассказать Опубликовано: 4 мая 2011 У нас 9.2 - всё работает. Цитата Ссылка на сообщение Поделиться на других сайтах
Sasha1981 0 Опубликовано: 6 мая 2011 Рассказать Опубликовано: 6 мая 2011 Автор Sasha1981, необходимо будет вам совершить некоторые телодвижения для достижения определенной вами же цели) celsoft, с Вашего позволения) В файле engine/inc/options.php найти: showRow( $lang['opt_sys_wdq'], $lang['opt_sys_wdsd'], makeDropDown( array ("1" => $lang['opt_sys_yes'], "0" => $lang['opt_sys_no'] ), "save_con [allow_quick_wysiwyg]", "{$config['allow_quick_wysiwyg']}" ) ); ниже добавить: showRow( $lang['opt_sys_full'], $lang['opt_sys_full_bn'], makeDropDown( array ("1" => "Да", "0" => "Нет" ), "save_con[backnext_allow]", "{$config['backnext_allow']}" ) ); В файле engine/modules/show.full.php найти: if( $config['related_news'] ) { выше добавить: if( $config['backnext_allow'] == "1" ) { if( $config['allow_cache'] != "yes" ) { $config['allow_cache'] = "yes"; $revert_cache = true; } else $revert_cache = false; $back_link = dle_cache( "backlink", $row['id'] ); $next_link = dle_cache( "nextlink", $row['id'] ); if( $back_link === FALSE ) { // Back Link $backlink = $db->super_query( "SELECT id, date, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE date < FROM_UNIXTIME({$row['date']}) AND category = '{$row['category']}' AND approve = '1' ORDER BY date DESC LIMIT 0,1" ); if( $backlink ) { $backlink['date'] = strtotime( $backlink['date'] ); $backlink['category'] = intval( $backlink['category'] ); if( strlen( $backlink['title'] ) > 75 ) $backlink['title'] = substr( $backlink['title'], 0, 75 ) . " ..."; if( $config['allow_alt_url'] == "yes" ) { if( $backlink['flag'] and $config['seo_type'] ) { if( $backlink['category'] and $config['seo_type'] == 2 ) { $back_link = $config['http_home_url'] . get_url( $backlink['category'] ) . "/" . $backlink['id'] . "-" . $backlink['alt_name'] . ".html"; } else { $back_link = $config['http_home_url'] . $backlink['id'] . "-" . $backlink['alt_name'] . ".html"; } } else { $back_link = $config['http_home_url'] . date( 'Y/m/d/', $backlink['date'] ) . $backlink['alt_name'] . ".html"; } } else { $back_link = $config['http_home_url'] . "index.php?newsid=" . $backlink['id']; } } else { $back_link = ""; } if( $back_link ) { $back_link = "<a href=\"" . $back_link . "\">" . stripslashes( $backlink['title'] ) . "</a>"; } $db->free(); create_cache( "backlink", $back_link, $row['id'] ); } if( $next_link === FALSE ) { // Next Link $nextlink = $db->super_query( "SELECT id, date, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE date > FROM_UNIXTIME({$row['date']}) AND category = '{$row['category']}' AND approve = '1' ORDER BY date ASC LIMIT 0,1" ); if ( $nextlink ) { $nextlink['date'] = strtotime( $nextlink['date'] ); $nextlink['category'] = intval( $nextlink['category'] ); if( strlen( $nextlink['title'] ) > 75 ) $nextlink['title'] = substr( $nextlink['title'], 0, 75 ) . " ..."; if( $config['allow_alt_url'] == "yes" ) { if( $nextlink['flag'] and $config['seo_type'] ) { if( $nextlink['category'] and $config['seo_type'] == 2 ) { $next_link = $config['http_home_url'] . get_url( $nextlink['category'] ) . "/" . $nextlink['id'] . "-" . $nextlink['alt_name'] . ".html"; } else { $next_link = $config['http_home_url'] . $nextlink['id'] . "-" . $nextlink['alt_name'] . ".html"; } } else { $next_link = $config['http_home_url'] . date( 'Y/m/d/', $nextlink['date'] ) . $nextlink['alt_name'] . ".html"; } } else { $next_link = $config['http_home_url'] . "index.php?newsid=" . $nextlink['id']; } } else { $next_link = ""; } if( $next_link ) { $next_link = "<a href=\"" . $next_link . "\">" . stripslashes( $nextlink['title'] ) . "</a>"; } $db->free(); create_cache( "nextlink", $next_link, $row['id'] ); } if( $revert_cache ) $config['allow_cache'] = "no"; } else $back_link = $next_link = ''; // Back and Next Link Template $tpl->set( '{back-link}', $back_link ); $tpl->set( '{next-link}', $next_link ); В файле language/Russian/adminpanel.lng найти: 'wysiwyg_language' => "ru", ниже добавить: // Ссылки в полной новости на предыдущую и следующую новость opt_sys_full => "Показывать предыдущую и следующую новости?", opt_sys_full_bn => "Если 'Да', то в полной новости будет показыватся ссылка на предыдущую и следующую новости, если 'Нет', то ссылки показыватся не будут", В шаблоне fullstory.tpl там, где необходимо отображать ссылки, добавить: {back-link} - ссылка на предыдущую новость {next-link} - ссылка на следующую новость В админке в разделе: "Настройки системы" > "Новости" не забудьте указать: "Показывать предыдущую и следующую новости?" - "Да" Удачи! Вот на все сто процентов знал, что мир не без добрых людей!!! Громадная вам благодарность!!! Цитата Ссылка на сообщение Поделиться на других сайтах
LADYX 90 Опубликовано: 7 мая 2011 Рассказать Опубликовано: 7 мая 2011 Вот на все сто процентов знал, что мир не без добрых людей!!! Громадная вам благодарность!!! Если люди не научатся помогать друг другу, то род человеческий исчезнет с лица земли. Вальтер Скотт Цитата Ссылка на сообщение Поделиться на других сайтах
ABP0PA 3 Опубликовано: 25 ноября 2012 Рассказать Опубликовано: 25 ноября 2012 Всем привет, на 9.7 похоже это не работает. Существуют ли готовые моды данной функции? типа - engine/modules/mymod.php поделитесь ссылкой пожалст. или может движок в базовой комплектации уже это умеет? Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.