it-swarm-ko.tech

보기, 분류, 블록 및 컨텍스트 ... 내가 뭘 잘못하고 있니?

내가 원하는 것 :
페이지를 탐색 할 때 ... 특정 콘텐츠 유형의 ... 용어 태그가 붙은 ... 뷰를 통해 생성 된 블록이 해당 용어로 페이지 목록을 생성해야합니다.

분류 : 스포츠 및 용어 : 골프, 하키 등을 사용하여 기사를 키 오프하도록 설정을 조정했습니다.

설정
필드가있는 콘텐츠 유형 "기사"가 있습니다 (다른 이름) :

Title
Portal (Term - Singular term allowed)

용어의 컨텍스트가 주어지면 해당 용어 (질문 하단의 코드)가있는 페이지 목록으로 필터링해야하는 뷰 분류 필터 설정이 있습니다.

페이지로 설정하고 "미리보기"섹션에서 작동합니다 (그림 참조). 블록으로 이동하면 작동하지 않습니다. enter image description here

표시되는 내용 :
"스포츠 : 골프"에 주목하지만 스포츠 목록에는 모든 포털 페이지가 표시됩니다 (필터링되지 않음). 기사에 태그가 지정되었지만 목록에 "컨텍스트"가 없습니다. 아래로 스크롤하면 모든 "Sports Pages"가 표시되지만 주어진 컨텍스트 (이 예에서는 골프)에 나열된 페이지 만 원합니다. Demo

편집
"Taxonomy ID By URL"을 사용한다고 언급되었습니다. 작동하지 않습니다. URL에 "분류"가 없습니다. 스톡 노드/# 또는 URL 별칭 myip/portal/safety/home (이름에 NAME이라는 용어가있는 pathauto 별칭 ...하지만 ID는 없습니다. portal/8/home은 별로 "예쁘다"는 느낌이 들지 않으며 시도해도 좋을지 모르겠습니다.)

좋아요 ... pathauto를 통해 자동 별칭을 조정했습니다 ... portal/8/home ([node : term : vocabulary]/[node : tid]/[node : title])이 여전히 작동하지 않도록합니다. Alias가 node/#을 가리키고 URL에 용어가 없기 때문에 여전히 "Term via URL"로 해석되지 않습니다.

관계를 맺으려는 다양한 시도도 실패했습니다.

각 포털에 고유 한 콘텐츠 유형이있는 "용어로서의 콘텐츠 유형"으로 이동하고 싶지 않지만이 시점에서 ... 앞으로 나아가고 싶다면 나도 가질 수 있습니다.

보기 내보내기

$view = new view;
$view->name = 'content';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Content';
$view->core = 7;
$view->api_version = '3.0-alpha1';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Portal List';
$handler->display->display_options['use_ajax'] = TRUE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'table';
$handler->display->display_options['style_options']['columns'] = array(
  'title' => 'title',
);
$handler->display->display_options['style_options']['default'] = '-1';
$handler->display->display_options['style_options']['info'] = array(
  'title' => array(
    'sortable' => 0,
    'default_sort_order' => 'asc',
    'align' => '',
    'separator' => '',
  ),
);
$handler->display->display_options['style_options']['override'] = 1;
$handler->display->display_options['style_options']['sticky'] = 0;
$handler->display->display_options['style_options']['empty_table'] = 0;
$handler->display->display_options['exposed_block'] = TRUE;
/* Field: Taxonomy: Term */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'taxonomy_term_data';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['label'] = '';
$handler->display->display_options['fields']['name']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['name']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['name']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['name']['alter']['external'] = 0;
$handler->display->display_options['fields']['name']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['name']['alter']['trim'] = 0;
$handler->display->display_options['fields']['name']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['name']['alter']['Word_boundary'] = 1;
$handler->display->display_options['fields']['name']['alter']['Ellipsis'] = 1;
$handler->display->display_options['fields']['name']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['name']['alter']['html'] = 0;
$handler->display->display_options['fields']['name']['element_label_colon'] = 0;
$handler->display->display_options['fields']['name']['element_default_classes'] = 1;
$handler->display->display_options['fields']['name']['hide_empty'] = 0;
$handler->display->display_options['fields']['name']['empty_zero'] = 0;
$handler->display->display_options['fields']['name']['link_to_taxonomy'] = 0;
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['Word_boundary'] = 0;
$handler->display->display_options['fields']['title']['alter']['Ellipsis'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Sort criterion: Taxonomy: Term */
$handler->display->display_options['sorts']['name']['id'] = 'name';
$handler->display->display_options['sorts']['name']['table'] = 'taxonomy_term_data';
$handler->display->display_options['sorts']['name']['field'] = 'name';
/* Sort criterion: Content: Title */
$handler->display->display_options['sorts']['title']['id'] = 'title';
$handler->display->display_options['sorts']['title']['table'] = 'node';
$handler->display->display_options['sorts']['title']['field'] = 'title';
/* Contextual filter: Taxonomy: Term */
$handler->display->display_options['arguments']['name']['id'] = 'name';
$handler->display->display_options['arguments']['name']['table'] = 'taxonomy_term_data';
$handler->display->display_options['arguments']['name']['field'] = 'name';
$handler->display->display_options['arguments']['name']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['name']['default_argument_skip_url'] = 0;
$handler->display->display_options['arguments']['name']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['name']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['name']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['name']['glossary'] = 0;
$handler->display->display_options['arguments']['name']['limit'] = '0';
$handler->display->display_options['arguments']['name']['transform_dash'] = 0;
$handler->display->display_options['arguments']['name']['break_phrase'] = 0;
$handler->display->display_options['arguments']['name']['add_table'] = 0;
$handler->display->display_options['arguments']['name']['require_value'] = 0;
/* Filter criterion: Content: Type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'portal' => 'portal',
);

/* Display: Portal List */
$handler = $view->new_display('block', 'Portal List', 'portal_list');
$handler->display->display_options['display_comment'] = 'Displays a list of pages for a given Taxonomy Term Context
';
$handler->display->display_options['block_description'] = 'Portal';
$translatables['content'] = array(
  t('Master'),
  t('Portal List'),
  t('more'),
  t('Apply'),
  t('Reset'),
  t('Sort by'),
  t('Asc'),
  t('Desc'),
  t('All'),
  t('Portal'),
);
2
WernerCD

나는 실제로 이것에서 path-auto 및 menu-block과 짝을 이룰 때 놀라운 일을하는 모듈 "노드 계층"으로 이동했습니다.

그러나 견해의 경우 문제는 올바른 "관계"로 해결되었습니다. 분류 ID, 설명 또는 제목의 관계 ... 노드의 필드에 대한 관계. 나는 내 앞에 그것을 가지고 있지 않지만, 요청하면 어딘가에 내 노트에 여전히 그것을 가지고 있습니다.

1
WernerCD

근본적인 "문제"는 블록 디스플레이가 URL에서 인수를 얻지 못한다는 것입니다. 따라서 블록 디스플레이에 url의 인수를 제공하는 방법을 제공해야합니다. URL에 nid 만 있습니다.

그래서 "기본 인자"라는 멋진 것이 있는데, 어떤 종류의 인자도 가져올 수있는 인자에서 구성 할 수 있습니다. 필요한 것은 "분류 : URL의 용어"이며 그게 전부입니다.

2
Daniel Wehner

위의 모든 작업을 수행하고 views_embed_view 함수 호출에서 세 번째 인수를 제거해야했습니다.

<?php print views_embed_view('recommended_documents', 'three', **$node->id**); ?>

저는 세 번째부터의 인수가 확인되는 컨텍스트 필터 값이된다고 믿습니다.이 값을 URL로 재정의하려고합니다.

0
martinedwards