- Совместимость
- проверялся на совместимость
- Изменения в БД
- не требуются
- Автор
- Sprinx
- Общественное достояние
- нет
Описание: добавляет генерацию ссылок ЧПУ.
Возможности:
SEO_MODE - это имя файла, например топика, который передается в урл(лежит в папке page) domain.ru/topic/4437/
Возможности:
- Удобная генерация и добавление ссылок
- Возможна работа без реврайтов (работает на хостингах)
- Поддержка коротких ссылок (domain.ru/topic/4437/)
SEO_MODE - это имя файла, например топика, который передается в урл(лежит в папке page) domain.ru/topic/4437/
- Инструкция по установке
-
Открыть common.php:
Найти:
PHP:// Board init if (defined('IN_FORUM')) {
PHP:require(INC_DIR .'classes/seoUrl.php');
Открыть init_bb.php:
Найти:
PHP:if (defined('PAGE_HEADER_SENT')) return;
PHP:if (!defined('BB_SCRIPT')) define('BB_SCRIPT', 'undefined');
Открыть page_header.tpl:
Найти:
PHP:{META}
PHP:<!-- IF not IN_ADMIN --> <base href="{SITE_URL}" /> <!-- ENDIF -->
Открыть page_header.php:
Найти и удалить
PHP:if (!defined('BB_SCRIPT')) define('BB_SCRIPT', 'undefined');
Открыть config.php и добавить:
PHP://seoUrl $bb_cfg['romanize'] = true; //транслит $bb_cfg['no_rewite_url'] = true; //выключение реврайта $bb_cfg['fulllink'] = array( 'ucp' => array( 'register', 'users', 'settings', ), );
PHP:location / { try_files $uri $uri/ /index.php?$uri&$args; }
PHP:RewriteEngine On RewriteRule ^.*$ index.php [NC,L]
- Перенести файл viewtopic.php в папку page и переименовать в topic.php
- Перенести файл viewforum.php в папку page и переименовать в forums.php
- Перенести файл index.php в папку page
Найти:
PHP:$topic_id = isset($_GET[POST_TOPIC_URL]) ? (int) $_GET[POST_TOPIC_URL] : 0;
PHP:$topic_id = (SEO_ID) ? (int) SEO_ID : 0;
Найти:
PHP:$forum_id = (int) request_var('f', '');
PHP:$forum_id = (int) SEO_ID;
PHP:Link::BuildUrl('forums', '1', 'Мой титле') -> http://domain.ru/forums/moy-title.1/ если выключены реврайты http://domain.ru/index.php?=forums/moy-title.1/ Link::BuildUrl('forums', '1') -> http://domain.ru/forums/1/ если выключены реврайты http://domain.ru/index.php?=forums/1/ Link::BuildUrl('forums') -> http://domain.ru/forums/ если выключены реврайты http://domain.ru/index.php?=forums/ Link::BuildUrl() -> http://domain.ru/ если выключены реврайты http://domain.ru/index.php
Реврайт nginx для старых ссылок(мода лога):
Код:rewrite ^/category-(.*)-(.*).html /rewrite.php?c=$2 last; rewrite ^/forum-(.*)-(.*).html /rewrite.php?f=$2 last; rewrite ^/topic-(.*)-(.*).html /rewrite.php?t=$2 last;
Пример для ссылок из папки ucp:
Пример для файла register.php
Создать папку ucp в папке page и закинуть туда данный файл
В файле добавить после <?php
PHP:$user->session_start(); $mode = SEO_MODE; if (IS_GUEST && $mode == 'settings') login_redirect();
Заменить в файле все вхождения
Код:editprofile
Код:settings
При добавление новых файлов в ucp нужно их указать в конфиге, для их работы.