Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Ritsuka

Как сделать IP.Content "корневым" приложением

Рекомендованные сообщения

03/15/12 13:14 (изменено)

Меню изменилось, IP.Content выходит главной страницей, но на ней не работает ни одна ссылка. Можете подсказать в чём дело?

Изменено пользователем AndreyPB

Поделиться сообщением


Ссылка на сообщение
03/26/12 12:37 (изменено)

Огромное спасибо.

главная страница - /портал

форум - /forums

 

НО!

Столкнулся с проблемой (IPB 3.2.3) - на форуме в ссылке при просмотре последних сообщений, получается ссылка не правильная, как писал vna

Спс с этим разобрался но все равно пишет когда заходишь в тему

[#10CCS2] We could not find the page you were looking for.

 

Хотя ЧПУ сбросил

 

Врубился в чем проблема почему то когда из категории выбираешь тему то она не дописывает /forums/в ссылке

 

Кто знает как это исправить?

 

Помогите вот одна и таже тема но ссылки разные

/showtopic=614/page__view__getnewpost это не рабочая

/forums/topic/614-pw-patcher/

 

post-49052-0-50841800-1330780901_thumb.png

 

Неужели не кто помочь не может?

Ошибка в коде unread

 

Что бы исправить данную проблему заменяем содержимое файла /admin/applications/forums/extensions/furlTemplates.php на:

(файл furlTemplates.php написанный специалистом Ritsuka, и файл furlTemplates.php написанный мной - разные! У меня для версии IPB 3.2.3)

 

<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.2.3
* Sets up SEO templates
* Last Updated: $Date: 2011-08-02 15:53:39 -0400 (Tue, 02 Aug 2011) $
* </pre>
*
* @author      $Author: bfarber $
* @copyright   © 2001 - 2009 Invision Power Services, Inc.
* @license     http://www.invisionp...rd/license.html
* @package     IP.Board
* @subpackage  Forums
* @link        http://www.invisionpower.com
* @since       20th February 2002
* @version     $Rev: 9351 $
*
*/

if ( ! defined( 'IN_IPB' ) )
{
   print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
   exit();
}

/**
* SEO templates
*
* 'allowRedirect' is a flag to tell IP.Board whether to check the incoming link and if not formatted correctly, redirect the correct one
*
* OUT FORMAT REGEX:
* First array element is a regex to run to see if we've a match for the URL
* The second array element is the template to use the results of the parenthesis capture
*
* Special variable #{__title__} is replaced with the $title data passed to output->formatUrl( $url, $title)
*
* IMPORTANT: Remember that when these regex are used, the output has not been fully parsed so you will get:
* showuser={$data['member_id']} NOT showuser=1 so do not try and match numerics only!
*
* IN FORMAT REGEX
*
* This allows the registry to piece back together a URL based on the template regex
* So, for example: "/user/(\d+?)/", 'matches' => array(  array( 'showuser' => '$1' ) )tells IP.Board to populate 'showuser' with the result
* of the parenthesis capture #1
*/
$_SEOTEMPLATES = array(

   'showannouncement'     => array( 'app'           => 'forums',
                                    'allowRedirect' => 1,
                                    'out'           => array( '#showannouncement=(.+?)((?:&|&)f=(.+?))?(&|$)#i', 'forums/forum-$3/announcement-$1-#{__title__}/$4' ),
                                    'in'            => array( 'regex'   => '#/forums/forum-(\d+?)?/announcement-(\d+?)-#i',
                                                              'matches' => array( array( 'showannouncement', '$2' ), array( 'f', '$1' ) ) ) ),

   'showforum'     => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#showforum=(.+?)(&|$)#i', 'forums/forum/$1-#{__title__}/$2' ),
                             'in'            => array( 'regex'   => '#^/forums/forum/(\d+?)-#i',
                                                       'matches' => array( array( 'showforum', '$1' ) ) ) ),

   'showtopicunread'=> array( 'app'              => 'forums',
                              'allowRedirect'    => 1,
                              'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnewpost(&|$)#i', 'forums/topic/$1-#{__title__}/unread/$2' ),
                              'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/unread(/|$)#i',
                                                           'matches' => array( array( 'showtopic', '$1' ),
                                                                               array( 'view', 'getnewpost' ) ) ) ),

   'showtopicnextunread'=> array( 'app'              => 'forums',
                                  'allowRedirect'    => 1,
                                  'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnextunread(&|$)#i', 'forums/topic/$1-#{__title__}/nextunread/$2' ),
                                  'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/nextunread(/|$)#i',
                                                               'matches' => array( array( 'showtopic', '$1' ),
                                                                                   array( 'view', 'getnextunread' ) ) ) ),

   'showtopic'     => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#showtopic=(.+?)(&|$)#i', 'forums/topic/$1-#{__title__}/$2' ),
                             'in'            => array( 'regex'   => '#^/forums/topic/(\d+?)-#i',
                                                       'matches' => array( array( 'showtopic', '$1' ) ) ) ),

   'acteqst'       => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#act=ST(.*?)&t=(.+?)(&|$)#i', 'forums/topic/$2-#{__title__}/$3' ),
                             'in'            => array( 'regex'   => '#^notavalidrequest$#i',
                                                       'matches' => array( array( 'showtopic', '0' ) ) ) ),

   'act=idx'       => array( 'app'           => 'forums',
                             'allowRedirect' => 0,
                             'out'           => array( '#act=idx(&|$)#i', 'forums/$1' ),
                             'in'            => array( 'regex'   => '#^/forums(/|$|\?)#i',
                                                       'matches' => array( array( 'act', 'idx' ) ) ) ),
);

 

Обновляем кеш ЧПУ и все норм.

 

 

Только у меня такая проблема, субдомен :(

ставил все на субдомен форум.сайт.ру

и теперь как-то глупо получается:

форум.сайт.ру/портал

форум.сайт.ру/форумс

как избавиться от него, хочу просто сайт.ру

если кто знает, то пишите в теме http://ipbskins.ru/forum/topic9642.html/page__p__62508#entry62508

Изменено пользователем arest
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
03/26/12 15:20 (изменено)

забыл про показ объявлений

исправил файл furlTemplates.php

 

 

<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.2.3
* Sets up SEO templates
* Last Updated: $Date: 2011-08-02 15:53:39 -0400 (Tue, 02 Aug 2011) $
* </pre>
*
* @author      $Author: bfarber $
* @copyright   © 2001 - 2009 Invision Power Services, Inc.
* @license     http://www.invisionp...rd/license.html
* @package     IP.Board
* @subpackage  Forums
* @link        http://www.invisionpower.com
* @since       20th February 2002
* @version     $Rev: 9351 $
*
*/

if ( ! defined( 'IN_IPB' ) )
{
   print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
   exit();
}

/**
* SEO templates
*
* 'allowRedirect' is a flag to tell IP.Board whether to check the incoming link and if not formatted correctly, redirect the correct one
*
* OUT FORMAT REGEX:
* First array element is a regex to run to see if we've a match for the URL
* The second array element is the template to use the results of the parenthesis capture
*
* Special variable #{__title__} is replaced with the $title data passed to output->formatUrl( $url, $title)
*
* IMPORTANT: Remember that when these regex are used, the output has not been fully parsed so you will get:
* showuser={$data['member_id']} NOT showuser=1 so do not try and match numerics only!
*
* IN FORMAT REGEX
*
* This allows the registry to piece back together a URL based on the template regex
* So, for example: "/user/(\d+?)/", 'matches' => array(  array( 'showuser' => '$1' ) )tells IP.Board to populate 'showuser' with the result
* of the parenthesis capture #1
*/
$_SEOTEMPLATES = array(

   'showannouncement'     => array( 'app'           => 'forums',
                                    'allowRedirect' => 1,
                                    'out'           => array( '#showannouncement=(.+?)((?:&|&)f=(.+?))?(&|$)#i', 'forums/forum-$3/announcement-$1-#{__title__}/$4' ),
                                    'in'            => array( 'regex'   => '#/forums/forum-(\d+?)?/announcement-(\d+?)-#i',
                                                              'matches' => array( array( 'showannouncement', '$2' ), array( 'f', '$1' ) ) ) ),

   'showforum'     => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#showforum=(.+?)(&|$)#i', 'forums/forum/$1-#{__title__}/$2' ),
                             'in'            => array( 'regex'   => '#^/forums/forum/(\d+?)-#i',
                                                       'matches' => array( array( 'showforum', '$1' ) ) ) ),

   'showtopicunread'=> array( 'app'              => 'forums',
                              'allowRedirect'    => 1,
                              'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnewpost(&|$)#i', 'forums/topic/$1-#{__title__}/unread/$2' ),
                              'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/unread(/|$)#i',
                                                           'matches' => array( array( 'showtopic', '$1' ),
                                                                               array( 'view', 'getnewpost' ) ) ) ),

   'showtopicnextunread'=> array( 'app'              => 'forums',
                                  'allowRedirect'    => 1,
                                  'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnextunread(&|$)#i', 'forums/topic/$1-#{__title__}/nextunread/$2' ),
                                  'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/nextunread(/|$)#i',
                                                               'matches' => array( array( 'showtopic', '$1' ),
                                                                                   array( 'view', 'getnextunread' ) ) ) ),

   'showtopic'     => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#showtopic=(.+?)(&|$)#i', 'forums/topic/$1-#{__title__}/$2' ),
                             'in'            => array( 'regex'   => '#^/forums/topic/(\d+?)-#i',
                                                       'matches' => array( array( 'showtopic', '$1' ) ) ) ),

   'acteqst'       => array( 'app'           => 'forums',
                             'allowRedirect' => 1,
                             'out'           => array( '#act=ST(.*?)&t=(.+?)(&|$)#i', 'forums/topic/$2-#{__title__}/$3' ),
                             'in'            => array( 'regex'   => '#^notavalidrequest$#i',
                                                       'matches' => array( array( 'showtopic', '0' ) ) ) ),

   'act=idx'       => array( 'app'           => 'forums',
                             'allowRedirect' => 0,
                             'out'           => array( '#act=idx(&|$)#i', 'forums/$1' ),
                             'in'            => array( 'regex'   => '#^/forums(/|$|\?)#i',
                                                       'matches' => array( array( 'act', 'idx' ) ) ) ),
);

 

Изменено пользователем arest
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Сделал как написано, всё получилось. Спасибо

 

Только в титле теперь написано Статьи. Как поменять? подскажите...

Поделиться сообщением


Ссылка на сообщение
07/17/12 09:09 (изменено)

del

Изменено пользователем xDealer

Поделиться сообщением


Ссылка на сообщение

@Ritsuka, вы в шаблоне ЧПУ забыли & в массивах showannouncement showtopicunread и showtopicnextunread из-за чего ссылки на объявления и на непрочитанные сообщения выходили битыми.

 

В итоге furlTemplates.php

 

 

<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.3.4
* Sets up SEO templates
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
* </pre>
*
* @author 		$Author: bfarber $
* @copyright	(c) 2001 - 2009 Invision Power Services, Inc.
* @license		http://www.invisionpower.com/company/standards.php#license
* @package		IP.Board
* @subpackage	Forums
* @link		http://www.invisionpower.com
* @since		20th February 2002
* @version		$Rev: 10914 $
*
*/

if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}

/**
* SEO templates
*
* 'allowRedirect' is a flag to tell IP.Board whether to check the incoming link and if not formatted correctly, redirect the correct one
*
* OUT FORMAT REGEX:
* First array element is a regex to run to see if we've a match for the URL
* The second array element is the template to use the results of the parenthesis capture
*
* Special variable #{__title__} is replaced with the $title data passed to output->formatUrl( $url, $title)
*
* IMPORTANT: Remember that when these regex are used, the output has not been fully parsed so you will get:
* showuser={$data['member_id']} NOT showuser=1 so do not try and match numerics only!
*
* IN FORMAT REGEX
*
* This allows the registry to piece back together a URL based on the template regex
* So, for example: "/user/(\d+?)/", 'matches' => array(  array( 'showuser' => '$1' ) )tells IP.Board to populate 'showuser' with the result
* of the parenthesis capture #1
*/
$_SEOTEMPLATES = array(

'showannouncement'     => array( 'app'		     => 'forums',
								 'allowRedirect' => 1,
								 'out'           => array( '#showannouncement=(.+?)((?:&|&)f=(.+?))?(&|$)#i', 'forums/forum-$3/announcement-$1-#{__title__}/$4' ),
						  		 'in'            => array( 'regex'   => '#/forums/forum-(\d+?)?/announcement-(\d+?)-#i',
												 		   'matches' => array( array( 'showannouncement', '$2' ), array( 'f', '$1' ) ) ) ),

'showforum'     => array( 'app'		      => 'forums',
						  'allowRedirect' => 1,
						  'out'           => array( '#showforum=(.+?)(&|$)#i', 'forums/forum/$1-#{__title__}/$2' ),
						  'in'            => array( 'regex'   => '#^/forums/forum/(\d+?)-#i',
												    'matches' => array( array( 'showforum', '$1' ) ) ) ),

'showtopicunread'=> array( 'app'		      => 'forums',
						   'allowRedirect'    => 1,
						   'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnewpost(&|$)#i', 'forums/topic/$1-#{__title__}/unread/$2' ),
						   'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/unread(/|$)#i',
											            'matches' => array( array( 'showtopic', '$1' ),
																			array( 'view', 'getnewpost' ) ) ) ),

'showtopicnextunread'=> array( 'app'		      => 'forums',
							   'allowRedirect'    => 1,
							   'out'              => array( '#showtopic=(.+?)(?:&|&)view=getnextunread(&|$)#i', 'forums/topic/$1-#{__title__}/nextunread/$2' ),
							   'in'               => array( 'regex'   => '#^/forums/topic/(\d+?)-([^/]+?)/nextunread(/|$)#i',
												            'matches' => array( array( 'showtopic', '$1' ),
																				array( 'view', 'getnextunread' ) ) ) ),

'showtopic'     => array( 'app'		      => 'forums',
						  'allowRedirect' => 1,
						  'out'           => array( '#showtopic=(.+?)(&|$)#i', 'forums/topic/$1-#{__title__}/$2' ),
						  'in'            => array( 'regex'   => '#^/forums/topic/(\d+?)-#i',
											        'matches' => array( array( 'showtopic', '$1' ) ) ) ),

'acteqst'       => array( 'app'		      => 'forums',
						  'allowRedirect' => 1,
						  'out'           => array( '#act=ST(.*?)&t=(.+?)(&|$)#i', 'forums/topic/$2-#{__title__}/$3' ),
						  'in'            => array( 'regex'   => '#^notavalidrequest$#i',
											        'matches' => array( array( 'showtopic', '0' ) ) ) ),

   'act=idx'       => array( 'app'           => 'forums',
                             'allowRedirect' => 0,
                             'out'           => array( '#act=idx(&|$)#i', 'forums/$1' ),
                             'in'            => array( 'regex'   => '#^/forums(/|$|\?)#i',
                                                       'matches' => array( array( 'act', 'idx' ) ) ) ),
);

 

 

Чтобы было меньше вопросов, убрать index.php можно добавив в .htaccess следующий код:

 

<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} .*\.(jpeg|jpg|gif|png)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /public/404.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

И в ACP > System Settings > System > Search Engine Optimization > Use .htaccess mod_rewrite > Yes

 

+ В новой версии контента есть стандартная функция Navigation Menu, можно настроить ссылки без правки шаблона.

 

И ещё, как подправить шаблон ЧПУ для IP.Content, чтобы из ссылок убрать page/ ?

Поделиться сообщением


Ссылка на сообщение
И ещё, как подправить шаблон ЧПУ для IP.Content, чтобы из ссылок убрать page/ ?

Без правки кода самого контента - никак :)

Поделиться сообщением


Ссылка на сообщение

Всё оказалось проще. :)

 

В ACP > Other Apps > Content > Settings > Basic > Advanced

 

В URL to index.php прописываем свой домен.

 

И включаем Use .htaccess mod_rewrite

 

Есть ещё вариант, но до этого я так же делал, и были проблемы в АЦ, перенаправляло на настройки Контента.

 

Про маркер базы данных.

 

На форуме IPS, в одной из тем, пользователь Marcher Technologies написал, что его не удалить, иначе ссылки на кастомные базы будут битые.

Поделиться сообщением


Ссылка на сообщение

Но его легко заменить на любой свой.

Поделиться сообщением


Ссылка на сообщение

Но его легко заменить на любой свой.

 

Да знаю что в:

if( !defined('DATABASE_FURL_MARKER') )
{
define( 'DATABASE_FURL_MARKER', '_' );
}

Хотелось бы полностью убрать.

Поделиться сообщением


Ссылка на сообщение
08/22/12 19:01 (изменено)

Добрый день. У меня такая же проблема что была выше что не переходит в тему по непрочитанному сообщению.

 

Сразу хочу спросить чтоб потом не выглядеть еще большим идиотом чем сейчас.

"Перестроить FURL Кэш" это и есть обновить кэш чпу?

 

По шаблону файла furlTemplates.php из первого поста у меня пишет "Такая страница не найдена",

если по примеру Lesovsky то никуда не попадаю остаюсь на главной форума и ссылка получается вида mysite.ru/forum/index.php?/forums/topic/29#entry248-%d0%b1%d0%be%d0%bb%d1%8c%d1%88%d0%be%d0%b5-%d1%81%d0%be%d0%b1%d1%80%d0%b0%d0%bd%d0%b8%d0%b5/

 

Подскажите пожалуйста как поправить.

 

 

Вообще жуткий оффтоп сердечно извиняюсь: но подкинте плиз в лс ссылку на руссификатор ipb форум и контента, который был бы проверенный, хороший по крайней мере на ваш вкус или если есть какой "общепризнаный". Я просто с оффа скачал какой-то поставил, но там не все локализовано, а при входе в админку вообще крякозябры какие-то вместо букв(словно с кодировкой какие-то проблемы)

 

 

upd: извиняюсь забыл указать версия форума 3.3.4,лицензия

Изменено пользователем Jekil

Поделиться сообщением


Ссылка на сообщение

"Перестроить FURL Кэш" это и есть обновить кэш чпу?

Да это.

 

У вас по адресу видно что у вас форум установлен в директории forum, хотя нужно чтобы был установлен или перенесён в гл. директорию, хотя если вам так нравится, то другой вопрос.

 

В сообщении #21 выложил как раз для версии 3.3.4.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
10/31/12 18:03 (изменено)

Сделал все как описано в первом посте, все ок работает, но возник вопрос. Находясь на главной странице под "основным" меню видим следующее

Invision Power Board → pages → Articles

Кто то пробовал изменить что бы не было "Invision Power Board → pages"?

Если правильно понял то за это отвечает NAVIGATION BREADCRUMBS?

Изменено пользователем maks245

Поделиться сообщением


Ссылка на сообщение

Актуальна ли инструкция из первого сообщения для ipb 3/4/0?

Поделиться сообщением


Ссылка на сообщение

Актуальна ли инструкция из первого сообщения для ipb 3/4/0?

Начиная с пункта 2. Оригинальный файл из первого пункта изменился.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...