Drupal 7은 문맥 필터 (taxonomy : 요약 표시)를보고 term-id 대신 읽을 수있는 term-name을 표시합니다.


9

내 견해로 는 기본 " 요약 출력 " 과 함께 컨텍스트 필터를 사용하여 분류 용어로 결과를 필터링 합니다.

문제는 요약 결과 가 분류 가능한 term-id (노드 수 포함) 목록으로 그룹화되고 사람이 읽을 수있는 term-id 이름이 아니라는 것입니다.

  • 1 (21)
  • 2 (16)
  • 기타

term-id를 나열하지 않고 term-id-name을 나열하여 요약의보기 출력을 변경 (또는 후크) 할 수 있습니까?

  • 용어 이름 A (21)
  • 용어 이름 B (16)

(실제 요청 URL이 동일하게 유지되면 귀찮게하지 않습니다.)

내 목표는 최종 사용자가 이해할 수있는 분류 용어 요약을보다 읽기 쉬운 출력 형식으로 만드는 것입니다.


답변:


7
  1. 보기를 필드로 설정하고 연관된 분류 용어가 포함 된 필드를 노출하십시오.

  2. 분류 용어를 필터링하도록 컨텍스트 필터를 설정하고 유효성 검증기를 포함하도록 선택하십시오.

  3. 유효성 검증기를 분류 용어로 설정하고 어휘에 대한 상자를 선택하십시오.

  4. 필터 값 유형에 대한 옵션을 '용어 이름을 용어 ID로 변환하십시오.

  5. 필터를 저장하고 미리보기 상자로 이동하십시오. 용어의 텍스트 이름을 입력하면 원하는 내용이 표시됩니다.

URl에서 정보를 전달하는 경우 머신 이름에 대시를 사용하므로 'URL의 대시를 용어 이름 필터 값의 공백으로 변환'확인란을 선택해야 할 수도 있습니다.


내가 잊어 버린 것은 문맥 필터를 선택할 때 분류 용어 (이름)에 대한 것이며 내용이 아닌 용어 자체에 표시하는 노드의 필드와의 관계를 사용해야한다는 것입니다. my_term_field_name
CR47

이 답변은 컨텍스트 필터를 사람이 읽을 수있는 분류 용어와 함께 작동시키는 방법을 알려주지 만 질문에 대답하지는 않습니다. 문제는 사람이 읽을 수있는 분류 용어의 이름을 필터링 된 결과에 표시하는 방법입니다.
BrokenBinary

5

"views_view-summary.tpl.php"파일을 "modules / contrib / views / theme"폴더에 복사하십시오. 파일 이름 접미사를 추가하여 특정 뷰를 보거나 차단할 수 있습니다.

참고 : 이 파일을 관리자보기 표시로 사용하는 경우이 파일을 기본 테마 폴더가 아닌 관리자 테마 폴더 내에 복사하십시오!

디스플레이 설정을 변경할 필요가 없습니다. tpl-override를 다음 행으로 조정하면 Term-ID가 읽을 수있는 Term-name으로 변환됩니다.

<div class="item-list">
  <ul class="views-summary">
    <?php foreach ($rows as $id => $row): ?>
    <li>
      <a href="<?php print $row->url; ?>"<?php print !empty($row_classes[$id]) ? ' class="'. $row_classes[$id] .'"' : ''; ?>>
        <?php
        /* begin replacement */
        $term_object = taxonomy_term_load($row->link);
        print  $term_object->name; 
        /* end replacement*/
        ?>
      </a>
      <?php if (!empty($options['count'])): ?>
      &nbsp;(<?php print $row->count?>)
      <?php endif; ?>
    </li>
    <?php endforeach; ?>
  </ul>
</div>

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.