Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Как называетсья мод который закрывает все исходящие ссылки

Подскажие пожадуйста м помощью какого мода можно спрятать отображение всех исходящих ссылок на форуме от незарегеных?

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

чуток попозже напишу. МОжете сами поискать решение в темах про ноиндекс. Просто при парсинге постов надо сделать замену ссылок на текст...

Вопрос: как сделать ссылки не видимыми для гостей? (все ссылки автоматом скрываются для гостей)

 

Ответ(годится и для 2.2.x-2.3.x):

 

./sources/action_public/topic.php

Найти:

		//-----------------------------------------
	// Highlight...
	//-----------------------------------------

Добавить перед:

		if (!$this->ipsclass->member['id'])
	{
		//-----------------------------------------
		// Clear links for guests
		//-----------------------------------------

		$row['post'] = preg_replace( "#<a href=[\"'].+?[\"'].+?>.+?</a>#", "<i>ссылка</i>", $row['post'] );
	}

./sources/classes/class_post.php

Найти:

						$extra = "";

					if ( $tmp_post )
					{
						$raw_post .= "[quote name='".$this->parser->make_quote_safe($tp['author_name'])."' date='".$this->parser->make_quote_safe($this->ipsclass->get_date( $tp['post_date'], 'LONG', 1 ))."' post='".$tp['pid']."']\n$tmp_post\n".$extra.'[/quote]'."\n\n\n";
					}

Добавить перед:

		if (!$this->ipsclass->member['id'])
	{
		//-----------------------------------------
		// Clear links for guests
		//-----------------------------------------

		$tmp_post = preg_replace( "#\[url\](\S+?)\[/url\]#i", "[i]ссылка[/i]", $tmp_post );
		$tmp_post = preg_replace( "#\[url\s*=\s*\& quot\;\s*(\S+?)\s*\& quot\;\s*\](.*?)\[\/url\]#i" , "\\2", $tmp_post );
		$tmp_post = preg_replace( "#\[url\s*=\s*(\S+?)\s*\](.*?)\[\/url\]#i", "\\2", $tmp_post );
	}

 

& quot - писать слитно

 

http://www.ibresource.ru/forums/index.php?...st&p=285173

супер, Олег ты чудо)

  • 3 недели спустя...
  • Автор

Всё бы хорошо, но вставить туда сылку на меню регистрации вместо текста, на подобие

[ur]="http://saut.ru"]Регитсрация[/url]

не выходит, вылетает ошибка при загрузке такой страницы

Parse error: syntax error, unexpected T_STRING in Z:\home\forum\www\sources\classes\post\class_post.php on line 2448

Ну и со второй аналогично

Как быть?

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

Мне казалось, что при таком количестве сообщений и частоте попадания ко мне на глаза люди уже умеют переводить это сообщение об ошибке и знают, что нужно выкладывать эту и соседние строчки.

  • Автор

Так эта та ссылка в строчке кода этого мода в которой указан текст на который мод заменяет ссылку, я могу написать в ней например "Чтоб увидеть сылку, зарегистрируйтесь". Но когда я леплю в этот текст ссылку на меню регистрации - форум начинает выдавать вот такие вот ошибки

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

Ну так если вы её изменили, тем более нужно написать, иначе как можно узнать что за ошибка, если вы ни стоки ни текста ошибки не написали?

 

 

Наверняка вы кавычки внутри строки не проэкранировали.

  • 4 недели спустя...
  • Автор
Ну так если вы её изменили, тем более нужно написать, иначе как можно узнать что за ошибка, если вы ни стоки ни текста ошибки не написали?

 

 

Наверняка вы кавычки внутри строки не проэкранировали.

 

 

Пороекрачего? :)

 

Вот строчка

$row['post'] = preg_replace( "#<a href=[\"'].+?[\"'].+?>.+?</a>#", "<i>ссылка</i>", $row['post'] );

вместо ссылка пишу url адрес регистрации например

[quote]$row['post'] = preg_replace( "#<a href=[\"'].+?[\"'].+?>.+?</a>#", "<i>Чтоб увидеть ссылку - [url="http://sait.ru"]Регистрируйся[/url]</i>", $row['post'] );[/quote]

Ну а дальше вы уже знаете,

как быть? :)

То что в кавычках -- строка. Если в строке вы хотите использовать кавычки, то их надо экранировать, добавляя перед ними \. Либо используйте не кавычки, а апострофы. Тем более, что ББ-код там уже не сработает, нужно заменять на HTML сразу.

  • Автор

ТАк что-ли?

\"<i>Чтоб увидеть ссылку - [url="http://sait.ru"]Регистрируйся[/url]</i>"

и

'<i>Чтоб увидеть ссылку - [url="http://sait.ru"]Регистрируйся[/url]</i>'

\ нужно добавлять не к внешним кавычкам, а к кавычкам внутри строки:

$a = "строка с "кавычками" -- плохо";
$a = "а так -- \"кавычка\" -- хорошо";

 

http://www.php.net/manual/ru/language.type...g.syntax.double

  • Автор

Дико извеняюсь

Но не получается чо-то,

можете пожалуйста написать пример с адресом как это должно выглядеть чтоб работало :(

 

Я так понял что вот так

"Чтоб увидеть ссылку - [url=\"http://sait.ru\"]Регистрируйся[/url]"

но выдаёться только текст вместо ссылки

Тем более, что ББ-код там уже не сработает, нужно заменять на HTML сразу.
  • Автор

Если написать так

"<b>Чтоб увидеть ссылку - <a href=\"http://sait.ru>\"Регистрируйся</a></b>"

То на странице выводится только надпись "Чтоб увидет ссылку -" без ссылки, что я сделал не так?

Извеняюсь за свои скромные познания в html

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

В <a href=""> у вас вторая кавычка не там :( И проще не париться с экранировкой, раз не в теме, а использовать апострофы :)

"<b>Чтоб увидеть ссылку - <a href='http://example.com'>Регистрируйся</a></b>"

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

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.