WordPress Yönetici Tablolarını Özelleştirme: Gelişmiş Değişiklikler

Yayınlanan: 2021-01-26

WordPress Yönetici Tablolarını özelleştirmeye ilişkin serimizdeki ilk makalemizde, özel bir sütun ekleme ve sıralanabilir hale getirme dahil olmak üzere yazı tipi yönetici ekranlarımıza bazı temel yapılandırmaların nasıl uygulanacağına baktık.

Bugün bir adım daha ileri gideceğiz ve Gönderi listesi yönetici tablosuna uygulanabilecek bazı ek değişikliklere bakacağız. Haydi gidelim!

WordPress Yönetici Gönderileri Tablosunu Geliştirme

Arka uç kullanıcılarınız için yönetici tablosu ekranınızda ek bilgiler sağlamak, iş akışı deneyimlerini kesinlikle geliştirecektir. Bu eğitimde, bilgi ekleyerek, mevcut içeriği değiştirerek, sütunları yeniden düzenleyerek ve hatta gereksiz tablo sütunlarını kaldırarak Yönetici Sonrası Tablomuzda görüntülenen verileri iyileştirmeyi hedefleyeceğiz.

Öne Çıkan Görselleri Görüntüle

Yönetici tablonuzun gönderi listesine öne çıkan bir küçük resim eklemek gerçekten yararlı olacaktır. Bu, her bir gönderiyi açmak zorunda kalmadan bir gönderinin yanlış resme sahip olup olmadığını (veya belki de hiç resminin olmadığını) görme yeteneğini gerçekten hızlandırır.

Bunu başarmak için, düzenleme yazımızın sayfası için öne çıkan bir resim sütunu oluşturacağız ve onu bir resim küçük resmiyle dolduracağız. Bir önceki yazımızda da görüldüğü gibi manage_posts_columns . Bu makaleyi henüz okumadıysanız, lütfen okuyun çünkü bu eğitim için gerekli olan bazı kodları içerir.

Makaleyi okuduysanız ve takip ettiyseniz, aktif temanızın functions.php dosyasında aşağıdaki kodun olması gerekir. Değilse, lütfen ekleyin!

 add_filter('manage_posts_columns','add_custom_columns'); function add_custom_columns( $columns ) { $columns['last_modified'] = 'Last modified'; return $columns; } add_action( 'manage_posts_custom_column','custom_columns_content', 10, 2 ); function custom_columns_content ( $column_id, $post_id ) { switch( $column_id ) { case 'last_modified': echo get_post_field('post_modified', $post_id); break; } }

Öne çıkan resmi Yönetici Tablomuzda göstermek için bu kodu aşağıdaki gibi düzenlememiz gerekiyor:

 add_filter('manage_posts_columns','add_custom_columns'); function add_custom_columns( $columns ) { $columns['last_modified'] = 'Last modified'; $columns['my_post_thumbs'] = 'Thumbs'; return $columns; } add_action( 'manage_posts_custom_column','custom_columns_content', 10, 2 ); function custom_columns_content ( $column_id, $post_id ) { switch( $column_id ) { case 'last_modified': echo get_post_field('post_modified', $post_id); break; case 'my_post_thumbs': echo the_post_thumbnail( 'thumbnail' ); break; } }

Üçüncü ve dördüncü bağımsız değişkenlerdeki 10 ve 2 sayıları, bu eylemle ilişkili işlevlerin işleneceği önceliği belirler. Bu bağımsız değişkenler, custom_columns_content .

Öncelik için varsayılan değer 10'dur. 2 sayısı, işlevin argümanlarının miktarını gösterir. Dolayısıyla bizim durumumuzda, $column_id ve $post_id olmak üzere 2 argümanımız olduğu için bu sayıları dahil etmek önemlidir.

Şimdi bu kodu kaydettikten sonra admin yazıları ekranımıza bakalım.

WordPress yönetici tablosu öne çıkan görseller

Gördüğünüz gibi artık bir 'Son Değiştirilme' sütunumuz ve yeni 'Başparmaklar' sütunumuz var.

Sütun Etiketlerini Değiştir

Herhangi bir nedenle bir sütunun etiketini değiştirmek istediğimizi varsayalım, örneğin, 'Yazar' sütununu 'Yazar' olarak yeniden adlandırın. Bunu yapmak için yeni etiketi, özel sütunumuzu eklediğimiz şekilde tanımlayabiliriz. Bir kez daha, kodumuzu daha ayırt edici kılmak için, yeniden adlandırma kod parçacıklarını farklı bir işlev kullanarak ayıracağız.

 add_filter('manage_posts_columns','rename_columns'); function rename_columns( $columns ) { $columns['author'] = 'Writer'; return $columns; }

Elbette aynı kod parçacığındaki birden çok sütunun etiketini sadece $columns['COLUMN_ID'] = 'NEW_LABEL'; return $columns;

WordPress Yönetici Sayfaları Tablosunu Geliştirin

Bunun farkında olmayabilirsiniz, ancak WordPress Sayfaları hiyerarşik bir gönderi türüdür, bu da her Sayfanın bir üst Sayfası olabileceği anlamına gelir.

Herhangi bir alt sayfanın ana sayfasının hangi sayfa olduğunu bir bakışta görmek gerçekten yardımcı olabilir. Bunun nasıl yapılacağına bir göz atalım.

Ana Gönderiyi Görüntüleyen Özel Bir Sütun Ekleyin

İlk olarak, ilişkili bazı öne çıkan resimlerle bazı üst ve alt sayfalar oluşturdu.

WordPress yönetici tablosu üst ve alt gönderileri

Ardından, functions.php dosyamıza bazı kodlar koyacağız. 'Ata' sütunu diyeceğimiz şeyi eklemek için, Gönderi türü ile yaptığımız işlemin aynısını izleyeceğiz.

 add_filter('manage_pages_columns','add_ancestor_column'); function add_ancestor_column( $columns ) { $columns['ancestor'] = 'Ancestor'; return $columns; }

Aynısı, sütunu tabloda istenen konuma yerleştirmek için de geçerlidir. Tablonun sütunlarını, 'Ata' sütunu Yazar sütunundan önce gelecek şekilde yeniden sıralayacağız.

 add_filter('manage_pages_columns', 'change_ancestor_column_position'); function change_ancestor_column_position($columns) { $n_columns = array(); foreach($columns as $key => $value) { if ($key=='author'){ $n_columns['ancestor'] = 'ancestor'; } $n_columns[$key] = $value; } return $n_columns; }

Bu noktada, Sayfalar yönetici ekranınızda şöyle bir şey görmelisiniz:

Yapmamız gereken son şey, 'Atalar' sütununu doğru içerikle doldurmak. Bu sefer hiyerarşik bir yazı tipiyle çalıştığımız için, sütun içeriğini almak için farklı bir kanca kullanacağız. Bu kod parçasını deneyin ve ekleyin ve sonucu kontrol edin.

 add_action( 'manage_pages_custom_column','ancestor_column_content', 10, 2 ); function ancestor_column_content ( $column_id, $post_id ) { switch( $column_id ) { case 'ancestor': $ancestors = get_ancestors($post_id, 'subject', 'post_type'); $post_ancestor = end($ancestors); if ($post_ancestor != 0) { echo '<a href="' . get_edit_post_link($post_ancestor) . '">' . get_the_title($post_ancestor) . '</a>'; } else { echo '-'; } break; } }

Şimdi, 'Ata' sütununda listelenen alt sayfaların yanında ilişkili Ana sayfayı görmelisiniz.

Bu, özellikle Yönetici Tablosundaki sayfalarınızın sırası bozulduğunda (örneğin, yayınlanma tarihlerine göre sıralandıkları için vb.) ve bu nedenle alt sayfalar artık kendi üst sayfalarının altında düzgün bir şekilde görünmüyorsa yararlıdır.

Varsayılan Sütunları Değiştirme

Varsayılan Yönetici tablosu sütunlarını iyileştirmek için yapılabilecek birkaç şey vardır. Bunlardan bazılarına bir göz atalım.

Sütunları Yeniden Sıralama

Yönetici Tablolarını özelleştirmeyle ilgili önceki makalemizde, gönderinin en son değiştirildiği tarihi gösteren yeni bir sütun ekledik. Peki ya sütun sırasına göre konumunu değiştirmek istersek?

Neyse ki bu oldukça kolaydır ve manage_posts_columns kancası kullanılarak uygulanabilir.

Tanımlanması gereken, taşınması gereken sütun ve sütunumuzu yerleştirmek istediğimiz yerden hemen önceki sütundur. Bu nedenle, örneğin, özellik görüntüsünü ilk tablo sütunu olarak istiyorsak, onu başlık sütunundan önce taşımamız gerekecek. İlgili parça kodu şöyle olmalıdır:

 add_filter('manage_posts_columns', 'change_column_order'); function change_column_order($columns) { $n_columns = array(); $move = 'author'; // what to move $before = 'title'; // move before this foreach($columns as $key => $value) { if ($key==$before){ $n_columns[$move] = $move; } $n_columns[$key] = $value; } return $n_columns; }

Ve işte!

WordPress yönetici tablolarınıza öne çıkan görseller ekleyin

Sütun Kaldırma

Bazen gönderiler listesi tablosunun bazı sütunları aslında özellikle yararlı değildir ve biraz yer açmak için kaldırılmaları daha iyi olur. Bunun için ortak bir aday, yorumlar sütunudur.

Neyse ki tablomuzdan bir sütunu kaldırmak çok kolay. Sadece unset($columns['comments']); eklememiz gerekiyor. manage_posts_columns kancasının işlevinde. Bu, mevcut kodumuza eklenebilirken, farklı bir amacı olduğundan ve kancaya yeni bir işlev getirdiğinden, bunu kendi kod parçacığına ayırabilirsek daha temiz olur.

 add_filter('manage_posts_columns' , 'remove_columns'); function remove_columns($columns) { unset($columns['comments']); return $columns; }

Ve bu kadar. Yönetici ekranınızı yenileyin ve Yorumlar sütununun kaybolduğunu görmelisiniz.

Not: Bir sütunun kimliğinin ne olduğundan emin değilseniz, tarayıcınızın denetçi konsolunu kullanarak bunu tespit edebilirsiniz.

Yönetici Sütunları Eklentisi

WordPress Yönetici Tablolarınızda değişiklikleri kodlamak istemiyorsanız, korkmayın… Bu WordPress olduğundan, bir kod satırına dokunmanıza gerek kalmadan bir dizi güncelleme yapmanıza izin verecek bir eklenti var. Yönetici Sütunları denir.

Not: Eklentiyi yüklemeye/etkinleştirmeye devam etmeden önce, gönderi listesi tablosundaki tüm özelleştirmeleri (eğer yaptıysanız) geri almanız ve eklentiyi ilk durumunda yönetici gönderi tablosuyla kullanmaya başlamanız daha iyidir.

Eklentiyi indirip yükledikten sonra Ayarlar > Yönetici Sütunları menü öğesine gidin. Buradan, açılır listeden gönderi listesi tablosunu (veya yönetici tablosunu düzenlemek istediğiniz herhangi bir gönderi türünü) seçebilirsiniz. Daha sonra mevcut tablo yapısı gösterilecektir.

Artık bir sürükle ve bırak arayüzü kullanarak sütunları kolayca yeniden sıralayabilirsiniz. Yapılandırmalarını görüntülemek için ok simgesini kullanarak da tip etiketini ve genişliği düzenleyebilirsiniz.

Ve evet, sağ alttaki 'Sütun Ekle' düğmesini kullanarak kendi sütunlarınızı bile ekleyebilirsiniz!

Eklentinin burada gerçekte yaptığı şey, Gönderi türüyle ilgili veritabanı tablolarında bulunan tüm seçenekleri toplamak ve bunlara Tür açılır menüsünü sağlamaktır. Örneğin, daha önce yaptığımız gibi bir 'Son Değiştirilme' sütunu eklemek istiyorsanız, onu Tip listesinde bulup seçin ve ardından ona etiket ve istenen genişliği verin.

Daha sonra karşınıza çıkacak olan Tarih Formatı seçeneklerini dilerseniz değiştirebilirsiniz.

Çözüm

WordPress Yönetici Tablolarınız hakkında doğru bilgilere sahip olmak, iş akışınızı gerçekten hızlandırabilir ve web sitenizdeki hataları önlemeye yardımcı olabilir. Örneğin, Gönderi Yöneticisi tablosunda tüm gönderilerinizi ve bunlarla ilişkili öne çıkan görselleri bir bakışta görebildiğinizde, bir gönderiyi bilerek öne çıkan görsel olmadan yayınlamanız çok daha az olasıdır. Bir oyun oynayın ve Yönetici Tablolarınızı size ve iş akışınıza uygun hale getirin.