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.