Yorumlarım Blok ve Sayfası
Bu anlatımda Views 2 (Drupal 6) ile bir uygulama yapacağız. Uygulamanın sonucunda elde etmek istediğimiz özellikler şunlar:
- Üye profil sayfalarında görüntülenmek üzere kullanıcıya özel bir Son Yorumlarım bloğu,
- Üye profil sayfalarında bir sekme halinde sunulmak üzere üyenin tüm yorumlarının listelendiği bir Tüm Yorumlarım sayfası.
Yani oluşuturacağımız tek bir görünümde hem sayfa hem de blok görüntüsü (ing: display) hazırlayacağız. Uygulama seçilen konu sebebiyle görünümlerdeki alan (ing: field), sıralama kriteri (ing: sort criteria), süzgeç (ing: filter), ilişki (ing: relationship) ve değişken (ing: argument) elemanlarının hepsini kullanacak. Bu yüzden kompleks fakat faydalı bir uygulama olacağını umuyorum. Sözü uzatmanda hemen başlayalım:
Not: Anlatımda sadece değerleri öntanımlı olanlardan farklı olan ayarlara değinilmiştir. Bahsi geçmeyen diğer ayarları olduğu gibi bırakabilirsiniz.
- Görünüm ekleme sayfasındaki (admin/build/views/add) alanları şu şekilde dolduruyoruz ve sonra Next'e tıklıyoruz.
- View name: uye_yorumlari (türkçe karakter yok)
- View description: Üye Yorumları (Türkçe karakter serbest)
- View tag: profil (görünümleri kendi içinde sınıflandırmak için; profil sayfasında görüntülenecek başka görünümler de oluşturursanız onlara da "profil" etiketi vererek tüm bu görünümlerin görünüm listesinde altalta listelenmesini sağlarsınız)
- View type: Comment (tr: yorum, Görünüm esas olarak yorumları listeleyeceği için "yorum"u seçtik)
Bu sayfa ile detaylı bilgi için bkz. Views: Temel Ayarlar.
- Basic Settings (Defaults görüntüsü için):
- Title (tr: başlık): Yorumlarım
- Style: HTML list (tr: listele) -> Unordered (ul) veya ordered (ol)
Bu ayarlar ile detaylı bilgi için bkz. Views: Temel Ayarlar.
- Relationships (Defaults görüntüsü için): Yorum tablosunda yer almayan yorum yazarına ait diğer bilgileri alabilmek için yorum tablosu ile kullanıcı tablosu arasında bir ilişki eklememiz gerekiyor. Bunun için Relationships kutusunun sağ üstündeki +'ya tıklıyor ve aşağıda açılan listeden Comment: User (Yorum: Kullanıcı) ilişkisini işaretleyip Add düğmesine tıklıyoruz. Bir sonraki kutuda hiçbirşeyi değiştirmeyip Update (tr: güncelle) düğmesine tıklıyoruz.
İlişkiler hakkında detaylı bilgi için bkz. Views: Relationships. - Arguments (Defaults görüntüsü için): Görünüme hangi kullanıcının sayfasında olduğu bilgisi url'den aktarılıyor. Biz bu görünümü kullanıcı profil sayfasında yayınlacağımız için URL'den hangi kullanıcının sayfasında olduğumuzu belirten kullanıcı id değerini yani Uid değerini almalıyız. Bunun için Arguments kutusunun sağ üstündeki +'ya tıklıyor ve aşağıda açılan listeden User: Uid (Kullanıcı: Uid) değişkenini işaretleyip Add düğmesine tıklıyoruz. Sonraki kutuda şu değerleri girmemiz gerekiyor:
- Action to take if argument is not present: Provide default argument
- Default argument type: User ID from URL
Diğerlerini olduğu gibi bırakıp Update (tr: güncelle) düğmesine tıklıyoruz.
Değişkenler hakkında detaylı bilgi için bkz. Views: Arguments
- Fields (Defaults görüntüsü için): Burada listede göstermek istediğimiz yorum alanları seçiyoruz; örnek için şu alanları ekledik:
- Yorum: Başlık
- Yorum: Post date
- Yorum: Gövde
Burada her alanı eklerken Label değerini boş bırakmanızı tavsiye ederim.
Normalde bu alanlar görünümde alt alta listelenecektir. Örneğin:
# harika! (Yorum: Başlık)
7 hafta 5 gün önce (Yorum: Post date)
Tadını bilemem ama görüntüsü harika! Gerçekten yaratıcı bir tarif olmuş; elinize sağlık. (Yorum: Gövde)Ancak bu alanları ekledikten sonra Basic Settings kutusundaki Row Style: Fields satırının sağında yer alan çark ikonuna tıklayarak yanyana gösterilmesini istediğiniz alanları işaretleyebilirsiniz. Örneğin Yorum: Başlık ve Yorum: Post date alanlarını işaretleyip Seperator olarak " | " girerseniz görünümde şöyle bir sonuç alırsınız:
# harika! | 7 hafta 5 gün önce
Tadını bilemem ama görüntüsü harika! Gerçekten yaratıcı bir tarif olmuş; elinize sağlık.Alanlar hakkında detaylı bilgi için bkz. Views: Fields.
- Sort Criteria (Defaults görüntüsü için): Yorumları en yeniden en eskiye doğru sıralamak için Yorum: Post Date sıralama kriterini ekliyoruz. Sort Order olarak Descending'i seçmeyi unutmayın aksi takdirde yorumlar eskiden yeniye sıralanır.
Sıralama kriterleri ile ilgili detaylı bilgi için bkz. Views: Sort Criteria.
- Filters (Defaults görüntüsü için): Sadece onaylanmış yorumların listelenmesini istiyoruz, dolayısıyla yayınlanmamış yorumların ayıklanması gerekiyor. Bunun için Yorum: In Moderation süzgecini ekliyoruz ve Moderated değerini No (tr: Hayır) olarak seçiyoruz.
Süzgeçler ile ilgili detaylı bilgi için bkz. Views: Filters.
İşimizin önemli bir kısmını bitirdik. Şimdi blok ve sayfa görüntülerini ekleyip gerekli düzeltmeleri yapacağız. Sayfa görüntüsü Defaults görüntüsü ile hemen hemen aynı olacak bu yüzden önce sayfa görüntüsünü ekleyelim.
- Görüntü düzelenleme alanının sol tarafında yer alan açılır menüden Page (tr: sayfa) seçeneğini seçip Add Display düğmesine tıklıyoruz. Bütün değerler Defaults görüntüsünden aynen alınıyor. Sadece Page Settings adında yeni bir kutu ekleniyor ve bundaki değerleri girmemiz gerekiyor. Bu değerleri şöyle giriyoruz:
- Path (tr: yol): user/%/yorum
- Menu: Menu Tab (Başlık: Yorumlar, Ağırlık: 9)
Böylece üye profil sayfalarındaki Yorumlar sekmesini eklemiş olduk. Devam edip şimdi de blok görüntüsünü ekleyelim.
- Bu sefer açılır menüden Blok'u seçip Add Display düğmesine tıklıyoruz. Blok görüntü ayarları ise aşağıdaki gibi olacak. Yalnız şuna dikkat etmelisiniz: Normalde blok ayarlar Defaults görüntüsünden aynen alınmıştır. Bu değerler üzerinde değişiklik yaptıktan sonra kaydetmek için Update Default Display'e tıklarsanız Defaults görüntüsü de değişecektir. Bu yüzden bu düğmeye tıklamak yerine Override seçeneğini kullanarak Update Default Display düğmesinin sadece Update olarak değişmesini sağlayın ve sonra Update (tr: güncelle) düğmesine tıklayın.
- Basic Settings: More Link -> Create More Link -> Override -> Güncelle
- Fields: Yorum: Post date ve Yorum: Gövde alanlarını bu görüntüden çıkarın -> Override -> Güncelle (tercihe bağlı; blok dar olduğundan yorumun kendisini göstermek iyi olmaz).
- İşte hepsi bu kadar. son olarak Save (tr: kaydet) düğmesine tıklayarak oluşturduğunuz görünümü kaydedin.
- Görünümün oluşturduğu bloğu blok yönetim sayfasından etkinleştirip sadece kullanıcı profil sayfalarında görünecek şekilde yayınlamayı unutmayın.
Sonuç
Yukarıdaki anlatımı harfiyen yaptıysanız aşağıdakine benzer bir sonuç alacaksınız:

- Yeni yorum ekle
- 2561 kez okundu

Eline sağlık . Drupali tam verimle kullanmak böyle olsa gerek.
eline sağlık onur mükemmel anlatmışsın.
Çok güzel anlatmışsınız, ben bile yaptım:)
ben bunu yaptım da sağ sütunda ayrıca yorumlarım çıkmadı sadece içerik kısmında yapılan yorumları gösteriyo sebebi ne olabilir teşekkkürler
onur bu yazıyı beğen, bu yazıyı tut, bookmark gibi bi buton koyabilirmisin.. flag eklentisiyle oluyor sanırım yaparsan çok işe yarar biz bu tür hoşumuza giden yazıları kendi profilimizden daha sonra da ziyaret edebiliriz bunu sık kullanımlarıma ekleyip bidaha ziyaret etmemezlik yapmak istemem acilen bu eklentiyi bekliyoruz
merhaba öncelikle bu ders için çok teşekkür ederim öğrendiğim iyi oldu.
ben bu yöntemi uygulayarak içeriğe eklenen resimleri çekmeye çalıştım ve oldu.
Yalnız bir sorunum var. Aşağıda ki sitillerin hepsini denedim. Resimleri 1den fazla sütuna ayarlayamadım, tek sütun halinde aşağı doğru sıralandı. 3-4 sütün nasıl yaparız?
Grid
HTML List
Jump menu
Tablo
Unformatted
grid seçtikten sonraki ayar aşamasında dikey ya da yatay kaç sütun olaağını seçebilkirsiniz.
benim ona ayar vermem gerek bile kalmıyor kendi otomatik olarak 4 sütun veriyor ama yine olmuyor
Stili unformated seçip
css ye aşağı aşağıdakini eklemeyi dene
float: left;
}
performans ayarlarında CSS dosyalarını optimize et etkinse ekledikden sonra cronu çalıştır.
Row style: Fields bu şekildeydi değiştirdim tekrar bu şekile geitrdim istediğim gibi oldu. Bende anlamadım :) İlgi alakanız için teşekkür ederim
resimler kullanıcı profilinde hem tab menü olarak var hem de profilin altında görünüyor. Profilin altındakini nasıl kaldırız