Bir alan etiketini gizle


22

Drupal 7'de özel bir alan oluştururken alan etiketini gizlemenin bir yolu var mı?

Düğüm şablonumda:

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

Bu bana verir:

<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>

Olmak istemezdim <div class="field-label">Image:&nbsp;</div>.

Bundan kurtulmanın CSS dışında veya işaretlemeyi elle oluşturmanın bir yolu var mı?

Denedim unset($content['field_image']['#title'])ama bu bana veriyor <div class="field-label">:&nbsp;</div>.


7
Nevermind Anladım, #label_display'i gizlemeye koydun:<?php $content['field_image']['#label_display'] = 'hidden'; ?>
— Ben

1
Bunu bir cevap olarak ekleyebilir ve kabul edebilirsiniz, böylece sorunun çözüldüğü açıktır.
— Berdir

aynı sorunu yaşadım ama düğümüm için bir alan şablonu yapmak istiyorum. nasıl yapabilirim etiketi kaldırmak yerine

Sorunuz üzerine +1, Ben, ancak kabul ettiğiniz cevabınız @ Marta'nın cevabı olmalı. NO bu sorun için herhangi bir kod yazmaya gerek yok! Git: admin / yapı / tipleri / yönetin / İÇERİK TÜRÜ / ekranlarınızı göstermek için alanınızı görüntüleyin ve Etiket altında, açılır menüden <Hidden> seçeneğini seçin. Kaydet düğmesine tıklayın. Bu cevap, sadece dosyalara değil, alan türlerine, belki de hepsine uygulanmalıdır.
— therobyouknow

Yanıtlar:


24

Şablondaki alan etiketlerinin ayarını kodlamak yerine Manage display, varlığınız için alan eklediğiniz ve kaldırdığınız sekme altındaki ayarı kullanmanız gerekir .


Googletorp, o zaman unvanın etiketini nasıl gizlersiniz?

1
İçerik türünü düzenlerseniz, içindeki değeri değiştirebilirsiniz Title field label. Başlığın hala zorunlu olması biraz can sıkıcı, ama sanırım hayat bu.
— Malks

1
İçerik oluştururken ve genel olarak görüntülerken alan etiketlerini farklı görüntülemek mümkün mü?
— Jay

@Jay mümkün olabilirdi, ancak ya özel ya da bir modül aracılığıyla kod gerektirecekti. Şu anda sizin için bunu yapan herhangi bir modül bilmiyorum.
— googletorp

1
Ben, kabul ettiğiniz cevabınız @ Marta'nın cevabı olmalı. Kod yazmanıza gerek yok! Git: admin / yapı / tipleri / yönetin / İÇERİK TÜRÜ / ekranlarınızı göstermek için alanınızı görüntüleyin ve Etiket altında, açılır menüden <Hidden> seçeneğini seçin. Kaydet düğmesine tıklayın. Bu cevap, sadece dosyalara değil, alan türlerine, belki de hepsine uygulanmalıdır.
— therobyouknow

11

Alanın adını değil, yalnızca indirilebilir dosyaların bir listesini göstermek için özel bir alanın adını (bu durumda "dosya" adı olan dosya alanı) gizlemek için:

  • Dosya alanını içeren İçerik Türünü seçin ("Dosya Listesi" adlı yeni bir tür oluşturdum)
  • "Alanları Yönet" sekmesine gidin
  • Etiket altında "Gizli" ve Biçim için "Genel Dosya" yı seçin
  • Kaydet ve bu içerik türünün yeni bir düğümünü oluştur ve "dosya" adı artık gösterilmemeli

2
+1 @ Marta'nın yukarıdaki cevabı kabul edilen cevap olmalıdır - alanların listesini göstermek için admin / yapı / tipleri / yönetmek / İÇERİK TÜRÜ / ekranı / Etiketi altında, açılır menüden <Hidden> seçeneğini seçin. Kaydet düğmesine tıklayın. Bu cevap, sadece dosyalara değil, alan türlerine, belki de hepsine uygulanmalıdır.
— therobyouknow

Katılıyorum!
— Drupal


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

Kullanım davam için en iyi cevap.
— Kiee

4

Şablonu kullanarak field.tpl.phpalanınızın etiketini ( $labelşablonda) kaldırabilir veya özelleştirebilirsiniz . kullanmak için şablon alanını field.tpl.phptemanıza eklemelisiniz :

<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>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.