Drupal - Скрыть одну страницу из поискового индекса - PullRequest
2 голосов
/ 02 июня 2010

Я принял существующую установку Drupal, и меня попросили удалить одну страницу из результатов поиска по сайту. Я знаю о руководстве lullabot по этому вопросу: Скрыть узлы Drupal из поиска , но это говорит об исключении класса контента, когда я действительно хочу исключить одну страницу.

Я пытался вручную удалить узел из таблицы search_index, но, похоже, это тоже не сработало.

Есть ли какие-либо рекомендации по исключению одной обычной страницы контента из поискового индекса?

Ответы [ 3 ]

2 голосов
/ 03 июня 2010

Мне только что пришлось придумать что-то похожее (скрытие отдельных полей cck от поискового индекса для каждого узла) - потребовалось некоторое отслеживание, но это оказалось ответом:

<?php
function mymodule_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
  switch ($op) {
    case 'view':
      $nid = ---insert your node id here---;
      if ($node->build_mode == NODE_BUILD_SEARCH_INDEX && $node->nid == $nid) {
        unset($node);
      }      
    break;
  }
}
?> 
0 голосов
/ 02 ноября 2011

Модуль restrict_content - идеальный инструмент для того, что вам нужно

0 голосов
/ 02 июня 2010

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

1) технически не совсем корректно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...