Перейти к публикации
View in the app

A better way to browse. Learn more.

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

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Исключение категории/форума из индексации

Опубликовано:

Здравствуйте.

 

Может быть кто-то встречал хук или компонент, добавляющий возможность исключения определённой категории/форума из индексации для поисковых систем? Он должен добавлять необходимые атрибуты к ссылкам и содержимому страниц и исключать из Sitemap ссылки на категории/форум и темы из этого форума.

 

А то есть у меня на форуме один болтальный раздел и не хочу, чтобы он индексировался.

 

Спасибо!

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

Опубликовано:
  • Автор

Смотрю исходники одного простого хука, там добавление настройки с выбором форумов сделано так

<setting>
     <conf_id>424</conf_id>
     <conf_title>Leave button in forums...</conf_title>
     <conf_description>Select in which forums the quote buttons must remain visible even if the hook is enabled.</conf_description>
     <conf_group>53</conf_group>
     <conf_type>multi</conf_type>
     <conf_key>tb_hqbp_allow</conf_key>
     <conf_value/>
     <conf_default/>
     <conf_extra>#show_forums#</conf_extra>
     <conf_evalphp><![CDATA[if ( $save == 1)
{
if ( is_array($_POST[ $key ]) )
{
	$_POST[ $key ] = IPSText::cleanPermString( implode(',', $_POST[ $key ]) );
}
else
{
	$_POST[ $key ] = '';
}
}
if ( $show == 1 )
{
$key = $key.'[]';
}]]></conf_evalphp>

 

Сама настройка tb_hqbp_allow в коде потом используется так:

 

class tbHqbpSkinTopic extends skin_topic(~id~)
{
public function post( $post, $displayData, $topic, $forum=array() )
{
	if ( !in_array( $topic['forum_id'], explode(',', $this->settings['tb_hqbp_allow']) ) )
	{
		$post['post']['_canReply'] = 0;
	}

	$template = parent::post( $post, $displayData, $topic, $forum );

	return $template;
}
}

 

И не могу понять, а где она хранится? Очень похоже, что не в таблице форумов совсем, а в массиве настроек. А в коде просто проверяется - входит ли ID форум в этот массив, сотоящий из ID форумов.

 

Думаю, и мне так проще будет сделать, чем таблицу расширять.

Опубликовано:
И не могу понять, а где она хранится? Очень похоже, что не в таблице форумов совсем, а в массиве настроек.
Настройки хранятся в таблицах настроек:

- core_sys_conf_settings;

- core_sys_settings_titles.

Опубликовано:
  • Автор

@newbie, я просто не думал о таком подходе, поскольку не знал о такой возможности. Зачем добавлять поле к таблице форумов, если есть таблица настроек, где можно создать свою настройку и туда добавить ID нужных форумов? Всё уже продумано и сделано разработчиками. <conf_extra>#show_forums#</conf_extra> и вуаля!

Опубликовано:
  • Автор

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

Опубликовано:

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

По этому вопросу как раз dmitry писал на второй странице.

Можно создать новую вкладку в настройках форумов, но не знаю можно ли это хуком или нужен модуль.

ТС если вам действительно нужен результат, то настройка в сис настройках самый оптимальный вариант. И даже не нужен список форумов, просто перечислить через запятую id форумов.

  • 4 недели спустя...
Опубликовано:
  • Автор

Временно решил вопрос без модификации форума. Использовал встроенный инструмент АЦ > Внешний вид > Управление Мета-тэгами

 

Посмотрим, что получится.

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

Сейчас на странице 0

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.