Skip to Content

CCk alanlarının gösterimi

preper, Cmt, 19/12/2009 - 14:10 tarihinde.

uzun uğraşlardan sonra $content alanını parçalamayı başardım. ancak şöyle bir sorunla karşılaştım şimdide;

Bu düzenlemeye çalıştığım içerik türünde en üstte 4-5 adet cck alanı var. bu alanların doldurulması zorunlu değil. yani cck alanının içine birşey girilmezse o alan gözükmüyor. ancak contemplate eklentisi ile bulup node.icerik_turu.tpl.php dosyasında tum cck alanlarını bu dosyaya girdiğimden artık içeriği boş olsa da başlıkları gözüküyor. ayrıca cck alanlarının tasarımları da bozuldu. ve de sağ taraftaki blocklar sitenin altına kaydı düzeltemedim.

Yapmak istediğim; eğer cck alanı boşsa başlığının da gözükmemesi. bunu nasıl sağlarım?

ikincisi cck alanını bu tpl dosyasında tek tek değilde bir bütün olarak gösterebilirmiyim?

üçüncüsü bu içerik türü için yeni bir cck alanı oluşturduğumda bunu da mı tpl dosyasına girmek zorundayım? ya da bir cck alanının ismini değiştirmem gerekiyorsa siteden değiştirmem yeterli olmayacak mı? çünkü tpl dosyasında içerik türlerinin labelları yazıyor direk olarak. bunları değişken olarak nasıl belirleriz tpl dosyasında?

ordinaryus42, Cmt, 19/12/2009 - 18:23 tarihinde.

tpl dosyasını kendin hazırladığın için yeni bir alan eklediğinde veya sildiğinde tpl dosyasından da silmen ya da eklemen gerekli. Görüntünün kaymaması için gerekli css kodlarınıda yazman gerekir.

$node->content['field_alanadı']['field']['#title']

bu kod labeli ekrana yazdırır bu kodu tpl ye koyarsan admin panelinde ne yazarsan onu gorursun. Benim fikrimi sorarsan tpl den kendin eklemen...

preper, Cmt, 19/12/2009 - 19:36 tarihinde.

teşekkürler label'ı gösterebildim. peki alanların içeriğini yani items'ları nasıl gösterebilirim?

birde bunların aynı satırda (inline) olmasını istiyorum ancak css'den bunu başaramadım $content bir bütün iken istediğim şekilde idi ancak suan tasarımlar bozuldu ve label ile itemslar alt alta. {display:inline} kodunu kullanıyorum ancak olmadı.

bunları nasıl yapabilirim?

birde cck alanlarını bir bütün olarak gösteremez miyim? tüm fieldları ayrı ayrı mı göstermem gerekiyor?

ordinaryus42, Cmt, 19/12/2009 - 21:46 tarihinde.


Contemplate de son içerikle ilişkili sana alanların bilgisini verir. tarayıcının bulma fonksiyonu ile istediğin alanın konunu bulabilirsin...

anında döstermek işi css kodlarıyla olur ama govde alanını ekrana yazdırırken metnin basına ve sonuna taglarını koyuyor onun için govde alanını içerik türünü düzenleme sayfasından iptal edip yeni cok satırlı alan oluşturman gerekir.

diğer bir alternatif ise php kodlarıyla gövde alanındaki metni tutan değişkenin ilk 3 ve son dört karakterini keserek ekrana yazdırabilirsin...

preper, Cmt, 19/12/2009 - 23:48 tarihinde.

olayı çözdüm sayende ordinaryus çok teşekkürler.

peki cck fieldları tek tek değilde toplu şekilde gösterebilirmiyiz?

birde div tagları olmadığında firebug bunları ayrı olarak görmüyor ve css'den düzenlemeyi yapamıyorum burada bir hata mı yapıyorum?

preper, Pzr, 20/12/2009 - 00:30 tarihinde.

birde mesela contemplate ile tesbit ettiğim kısımları tpl dosyasına yazdım. cck alanlarının görüntülerini aldım ancak label ve cck alan içerikleri alt alta. benim yapmak istediğim

Film oyuncuları: Yasemin
Ahmet
Mehmet

Film süresi: 40dk

şeklinde.

Ancak şuan:

Film Oyuncuları:

Yasemin
Ahmet
Mehmet

Film Süresi:

40dk.

şeklinde alt alta oldu ve düzeltemiyorum. tpl dosyasındaki alanın kodları şu şekilde:

  <div class="field field-type-text field-field-etkenmadde">
  <h5 class="field-label">Etken Madde</h5>
  <div class="field-items">
    <?php foreach ((array)$node->field_etkenmadde as $item) { ?>
      <div class="field-item"><?php print $item['view']?></div>
    <?php } ?>
  <div class="field field-type-text field-field-marka">
  <h5 class="field-label">Marka İsmi</h5> <div class="field-items">
      <div class="field-item"><?php print $node->field_marka[0]['view'] ?></div>
  <div class="field field-type-text field-field-extra">
  <h5 class="field-label">Bilgi</h5>
  <div class="field-items">
      <div class="field-item"><?php print $node->field_extra[0]['view'] ?></div>

eski şekline nasıl getirebilirim css ile?

onur serkan, Cmt, 26/12/2009 - 19:19 tarihinde.

label'lar için h5 etiketi kullandığından başlık olarak gösteriliyorlar ve devamında gelen yazılar alta atılıyor. css ile bunlar için sabit bir genişlik (witdh: 100px mesela) verip sonra da sola yaslamayı (float: left) deneyebilirsin.

preper, Çrş, 30/12/2009 - 01:04 tarihinde.

ben $content alanını böldüğüm için sanırım css ile class'ları istediğim şekilde yönlendiremiyorum. örneğin .field-field-marka .field-label {float:right;} şeklinde bir komut giriyorum ancak çalışmıyor.

ama $contenti bölmediğim zaman çalışıyor. zaten devel modülüde tüm node alanını tek olarak gösteriyor. bunu nasıl çözebilirim?