필드 레이블 숨기기


22

Drupal 7에서 사용자 정의 필드를 렌더링 할 때 필드 레이블을 숨기는 방법이 있습니까?

내 노드 템플릿에는 다음이 있습니다.

<?php print render($content['field_image']); ?>

나에게주는 :

<div class="field field-name-field-image field-type-image field-label-above">
  <div class="field-label">Image:&nbsp;</div>
  <div class="field-items">
    <div class="field-item even">
      <img typeof="foaf:Image" src="http://site.com/sites/default/files/image.jpg" alt="">
    </div>
  </div>
</div>

을 갖고 싶지 않습니다 <div class="field-label">Image:&nbsp;</div>.

CSS 또는 수동으로 마크 업을 만드는 것 이외의 방법으로 이것을 제거하는 방법이 있습니까?

나는 노력 unset($content['field_image']['#title'])했지만 그것이 나에게 준다 <div class="field-label">:&nbsp;</div>.


7
내가 알아 차렸다. #label_display를 숨김으로 설정했다. <?php $content['field_image']['#label_display'] = 'hidden'; ?>
Ben

1
답변으로 추가하고 수락하면 답변이 명확 해집니다.
Berdir

나는 같은 문제가 있었지만 노드에 대한 필드 템플릿을 만들고 싶습니다. 내가 어떻게 할 수있는 ? 레이블을 제거하는 대신

귀하의 질문에 벤 +1하지만 허용되는 답변은 아래 @Marta의 답변이어야합니다. 이 문제에 대한 코드를 작성할 필요가 없습니다! 필드 목록을 표시하려면 admin / structure / types / manage / YOUR CONTENT TYPE / display로 이동하고 레이블 아래의 드롭 다운 메뉴에서 <숨김>을 선택하십시오. 저장 버튼을 클릭하십시오. 이 답변은 파일뿐만 아니라 필드 유형에 모두 적용되어야합니다.
therobyouknow

답변:


24

템플릿에서 필드 레이블 설정을 하드 코딩하는 대신 Manage display엔티티 필드를 추가 및 제거하는 탭 아래의 설정을 사용해야합니다 .


Googletorp, 그러면 제목 라벨을 어떻게 숨기나요?

1
컨텐츠 유형을 편집하면에서 값을 변경할 수 있습니다 Title field label. 제목이 여전히 필수라는 것은 약간 성가 시지만, 그것은 내가 생각하는 삶입니다.
Malks

1
컨텐츠를 작성할 때와 공개적으로 표시 할 때 필드 레이블을 다르게 표시 할 수 있습니까?
Jay

@Jay 가능하지만 사용자 정의 또는 모듈을 통한 코드가 필요합니다. 나는 지금 당신을 위해 이것을하는 모듈을 모른다.
googletorp

1
벤, 당신의 대답은 아래 @Marta의 대답이어야합니다. 코드를 작성할 필요가 없습니다! 필드 목록을 표시하려면 admin / structure / types / manage / YOUR CONTENT TYPE / display로 이동하고 레이블 아래의 드롭 다운 메뉴에서 <숨김>을 선택하십시오. 저장 버튼을 클릭하십시오. 이 답변은 파일뿐만 아니라 필드 유형에 모두 적용되어야합니다.
therobyouknow

11

필드 이름이 아닌 다운로드 가능한 파일 목록 만 표시하기 위해 사용자 정의 필드 이름 (이 경우 파일 이름이 "file"인 파일 필드)을 숨기려면 다음을 수행하십시오.

  • 파일 필드를 포함하는 컨텐츠 유형을 선택하십시오 ( "파일 목록"이라는 새 유형을 작성했습니다)
  • "필드 관리"탭으로 이동
  • 레이블에서 "숨김"을 선택하고 "일반 파일"형식으로
  • 이 컨텐츠 유형의 새 노드를 저장하고 작성하면 "file"이라는 이름이 더 이상 표시되지 않습니다

2
+1 @Marta의 답변은 허용되는 답변이어야합니다. admin / structure / types / manage / YOUR CONTENT TYPE / display는 필드 목록을 표시하고 레이블 아래의 드롭 다운 메뉴에서 <숨겨진>을 선택하십시오. 저장 버튼을 클릭하십시오. 이 답변은 파일뿐만 아니라 필드 유형에 모두 적용되어야합니다.
therobyouknow

동의한다! 적은 당신은 드루팔 더 나은 :) 코딩 또는 CSS로 할
jasonflaherty


7
$content['field_image']['#label_display']='hidden';

내 유스 케이스에 가장 적합한 답변.
Kiee

4

템플릿 field.tpl.php을 사용 $label하여 필드 의 라벨을 제거하거나 템플릿에서 맞춤 설정할 수 있습니다 . 사용하려면 field.tpl.php테마에 템플릿 필드 를 추가해야합니다 .

<div class="<?php print $classes; ?>"<?php print $attributes; ?>>
  <?php if (!$label_hidden): ?>
    <div class="field-label"<?php print $title_attributes; ?>><?php print $label ?>:&nbsp;</div>
  <?php endif; ?>
  <div class="field-items"<?php print $content_attributes; ?>>
    <?php foreach ($items as $delta => $item): ?>
      <div class="field-item <?php print $delta % 2 ? 'odd' : 'even'; ?>"<?php print $item_attributes[$delta]; ?>><?php print render($item); ?></div>
    <?php endforeach; ?>
  </div>
</div>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.