Собссно проблема первый раз... Прошу пинать сильно, но все же по делу.
Создал вьюху, вывод в блок. Автоматический предпросмотр во вьюхе выдает удовлетворяющий меня результат. Задействованы контекстные фильтры и отношения.
Тест №1: изменяя аргументы в автоматическом предпросмотре вьюхи получаю то, что надо. Никаких претензий. Блок на страницах за пределами вьюхи не появляется.
Тест №2: Изменяю настройки контекстных фильтров во вьюхе так, что вьюха ничего не показывает в автоматическом предпросмотре. Тем не менее удается получить отображение вывода блока на нужных страницах сайта (уточнение: выдает всю информацию, нужную и ненужную, т.к. контекстные фильтры не работают). Отображение блока так же есть, если контекстные фильтры просто удалить.
Вопрос: почему блок в штатных ситуациях и с нужными настройками не отображается на страницах? Видимость блока не играет роли - тут все в порядке. Сайт в тестовом режиме. Работаю под админом.
Комментарии
Другие вьюхи на странице есть?
Нет, других вьюх на нужных мне страницах не выводится, только целевая, с которой проблема.
Кэш ессно чистил, до кучи сервер перезагружал. Другие представления в принципе на сайте есть, отрабатывают корректно.
Решено. Методом научного тыка после попытки анализа поведения фильтров. Нормальных описаний работы фильтров не нашел, поэтому данность такова:
В контекстных фильтрах есть настройка (далее названия в русском переводе с английского языка)
Когда значение фильтра НЕ доступно
Как правило, очень хочется выставить переключатель в Скрыть представление.
Тем не менее, удалось получить нужное поведение блока только в положении переключателя
Задать значение по умолчанию, где установил Тип получаемого аргумента как ID материала из URL.
Получается, что при отсутствии проверок в контекстных фильтрах вьюха получает данные (все значения, т.к. фильтра нет), соответственно, вывод блока работает по умолчанию в штатном режиме. В случае, если я разрешаю проверку, вьюха-блок не в состоянии забрать адрес страницы, поэтому: агрументы вьюха не получила, данных нет, вьюха пустая, вывод на страницу не производится. Принудительная проверка (настройка ее описана выше) все же позволяет забрать адресную строку для получения аргументов. Тогда все начинает работать как положено.
Очень помогло ваше решение, огромное спасибо!
В дополнение к работе контекстных фильтров:
Т.к. требуется проверка второго аргумента (например, адрес node/2), необходимо в контекстных фильтрах указывать два критерия проверки:
1. Глобальный: Ноль. Настройки его полностью аналогичны тем, что в комментарии выше. Этот фильтр проверяет первый аргумент. Но суть "глобального ноля" в том, что полученное значение аргумента игнорируется: в контексте моей задачи этого достаточно.
2. Содержимое: Nid. Этот фильтр идет вторым и проверяет следующий, второй аргумент, получая номер ноды. Имея номер ноды, начинают корректно работать отношения, подтягивая (в моем случае) таксономию, из терминов которой я забираю нужные мне данные.
Ну вроде так и должно все работать аргумет нид добавляешь и блок показывается с нужным выводом для конкретной ноды. как же еще можно цеплятся к нодам то?
Дык пока на своих шишках не научишься, чужие мануалы трудно осознавать. И написано вроде англицким языком, и все равно осознание только с практикой приходит. Еще понимание ключевых моментов здесь критично. Зачастую некоторые из таких моментов вскользь описаны - как само собой разумеющееся. Конечно, думать я обязан, поскольку за меня это никто делать не должен.