WordPress’te Özel Gönderi Türünü Neden ve Nasıl Kullanılır
İçeriği depolamada harika WordPress sitesi. Dünyaya göstermek istediğiniz birkaç kelime ve resminiz var mı? WordPress, iş için harika bir araçtır. Belki en iyisi. Ancak varsayılan olarak yalnızca iki tür içerik vardır: gönderi ve sayfalar. Bu iyi, birçok insanın başka birçok içeriği vardır: müşteri referansları, proje belgeleri, önceki proje listeleri ve daha fazlası. Bu tür öğeleri barındırmak için gönderme ve sayfalar yapılabilir, ancak daha iyi bir seçenek vardır: WordPress özel yazı türü. Özel yazı türü – genellikle CPT olarak kısaltılır – istediğiniz içerik türü için bir yazı veya sayfa gibi bir arayüz almanın bir yoludur. Yaptığınız CPT dediğiniz veya kullandığınız şey için önemli değil, sınır hayal gücünüzdür. Bu yüzden bugün nasıl yaptığınızın tüm yönlerini tartışacağız!
Başlamadan önce hızlı bir şey. WordPress’in gelişimini öğrenmek istiyorsanız, bunun için en iyi yönergeleri yazdık:
WordPress’in gelişimini öğrenmenin en iyi yolu uyan ve bugün koş!
“Bence WordPress’in gelişimini öğrenmek isteyen herkes bu kursu gerektiriyor. Videoyu izlemek açılan bir grup ışık gibi. ” -Jason, WordPress geliştiricisi
“Denediğim diğer kursların neredeyse her zaman WordPress’in neden belirli bir şekilde bir şey yaptığını veya her şeyin birlikte nasıl çalıştığını açık bir şekilde açıklamamış. Tüm bunları çalıştırıyor ve her şey net ve anlaşılması kolay bir dilde açıklanıyor. ” -Caroline, WordPress -Out ve şimdi çalışan işçiler
Sitenizi oluştururken WordPress’te neden bir tür özel yazı oluşturmanız gerekiyor, genellikle “yazı türü” varsayılan WordPress sınırları ile sınırlısınız. Neden özel yazı türü? Çünkü bir site oluştururken, bazen mecazi veya pratik olarak “Post türü” sınırları ile sınırlı olduğunuzu göreceksiniz – bu “Post” ve “sayfa” anlamına gelir. Bazı durumlarda, bunun nedeni her ikisinden de açıkça farklı bir şey yaratmak istediğinizdir. “Form” yaygın bir örnektir: bu hedefi yerine getirmek için varsayılan yayın türüne zarar verseniz bile, kavram iyi eşleşmez.
“Gönderme” veya yeni içerik türünün kendi başına ortaya çıktığı başka bir yer, istediğiniz permalin türünü elde etmek için varsayılan sayfanızın içeriğinde çok yuvalanan bir hiyerarşi yaptığınız zamandır. Bir ajans sitesi ilk yaptığımızda, sunduğumuz tüm farklı hizmetlerin bir listesini bu şekilde yapıyoruz. Şimdi bu sayfaları yapmanın zaman kaybı olduğunu düşünüyorum, ancak bunu yaptığımızda, “hizmet” sayfası altında yuva yapan 30-şiddetli ürünlerimiz var. Ve bu başarılı oldu, ama birlikte çalışmak eğlenceli değildi. WordPress’teki belirli ana sayfaların altında yuva yapan 10’dan fazla sayfanız varsa, burası yeni bir içerik türü oluşturarak kullanabileceğiniz bir yer. “Çok fazla sayfa” na ek olarak, başka işaretler de var. Özel yazı türleri tarafından sunulan en iyi olanı olabilirsiniz:
Blogunuzdan belirli bir yayın kategorisini düzenli olarak garip bir şekilde kullandığınızı fark ederseniz ve yazılarınızın istediğiniz gibi görünmesi için şablon dosyanızda başınızı mantıkla vurmak için kendinizi bulmanın bir sonucu olarak, yapmak isteyebilirsiniz. farklı bir tane. Bunun için içerik türü
Kalıcı bağlantı yapınızı, yayın kategorisine özel aklı başında URL kategorisinde sunmak için gönderi kategorisine duyarlı olmak için “hacklemek” zorunda kaldıysanız, bir kez daha özel bir yazı türü kullanmanız gereken durum.
WPSHOUT’ta CPT’yi nasıl kullanıyoruz Bu makaleyi 2013’te yayınladık. O zamandan beri, WPSOT’da çeşitli içerik türlerini karşılamak için burada bir dizi farklı özel gönderi yaptık. Kısaca vurgulayacağım, böylece CPT’nin ne olduğunu daha iyi anlayacaksınız. Bizden beklediğiniz her Salı yazılı bir içeriktir.
Kurslar – Burası, diğer ilgili makalelere bağlantı içeren daha uzun bir gönderiye çeşitli makaleleri topladığımız yerdir. Fikir, bir konuyu daha derinlemesine öğrenmenin yerinizdir.
Hızlı Kılavuz – Son yıllarda, kitlenizin özellikle belirli hedeflere nasıl ulaşılacağı konusunda kısa formatlar yayınlamasına ihtiyaç olduğunu anlıyoruz. Hızlı kılavuz bir “yazı” kategorisi olarak başlar, ancak bunun daha iyi olduklarının farkındayız.
Bağlantı – Bu aynı zamanda bir “yazı” olarak başladı, ancak kendi CPT’lerine aktarıldı. Bağlantılar, sitenin dışında kitleniz tarafından görülmek isteyebileceğini düşündüğümüz ve onu duymaktan faydalayacağını düşündüğümüz içeriktir. Daha fazlasını söylemek için CPT’de “Post” u kullandık ve içeriği e -posta bültenimize koyduk.
Bu CPT’ye ek olarak, sitemizde kendi CPT’yi yapan birkaç eklenti var. Kullandığımız hediye eklentisi ve kullandığımız form eklentisi bu.
Neredeyse kesinlikle wpShout gibi siteleri çalıştırmıyorsunuz, ancak umarım açıklama sizin için ne tür içeriklerin mantıklı olabileceğini anlamanıza yardımcı olur. Yani özel bir yazı tipine ihtiyacınız var. Nasıl anlarsın? WordPress sitenizde yeni içerik türlerine olan ihtiyacı belirledikten sonra, bunu yapmanın birçok yolu vardır. Burada her şeyi derinlemesine tartışmak için çok fazla. Ancak, CPT’nizi almak için üç temel yola ayrıldılar, bu yüzden açıklayacağım. Bunu yapan bir eklenti kullanarak (ve umarım daha fazlası) bu, bu makalenin ilk yayınlanmasında ortadan kaldırılır, ancak bence bu insanların fark etmesi için çok önemli ve iyi. Önceki bölümde önerdiğim gibi, eklenti kendi özel yazı türlerini yaptı. Tartışmak için en makul olduğunu düşündüğüm örnek, WooCommerce gibi E-Niaga eklentisidir (bu bloktaki en büyüğü olarak, özellikle tartışacağımız budur).
WooCommerce size “Ürün” adlı yeni bir özel yazı türü yapacak (ve gösterecek). Bu, özel bir yazı türünün çok makul olduğu bir yer için iyi bir örnektir. Bir E-Niaga sitesi oluşturduğunuzu düşünün, ürününüzü kontrol etmek için “sayfa” veya “Post” bölümünü kullanmanız gerekir. Özel tür WooCommerce ürünleri çeşitli özel işlevlere ve beklediğiniz birçok şeye sahiptir. İçerik editörlerini, üstün görüntüleri ve daha fazlasını desteklerler. Ayrıca “ürün kategorileri” ve daha fazlası gibi kendi taksonomileri var. WooCommerce ürün yayınları tarafından kullanılan tüm özellikler, kendi CPT ve arayüzünüzü oluşturduğunuzda geliştirici olarak sizin için kullanılabilir. Bu da, Wooocommerce’ı bu kadar iyi yapmak için harcanan binlerce saatinizin olmadığını da fark etmelisiniz. Bu nedenle, WooCommerce kullanabileceğiniz ve tüm öğeleri ücretsiz olarak alabileceğiniz özel bir “ürün” türü oluşturmamak.
Kullanıcı arabirimi tabanlı eklenti Sistemi CPT -Teming için yalnızca istediğiniz özel yazı türünü destekleyen eklentiler kullanmanın yanı sıra, kendiniz ayarlamanıza izin veren bir eklenti vardır. Büyük katma değer, herhangi bir kod yazmadan CPT yapabilirsiniz. Bu eklenti, sadece formu doldurarak sitenizin yönetici alanında bir CPT oluşturmanıza yardımcı olacaktır. Herhangi bir PHP yazmak istemeyen bir kullanıcı olarak sorunla karşılaşırsanız başlamak istediğiniz yer burasıdır. Bu sistemlerden biri, WordPress kontrol panelinizde sizin için sadece adını yazarak ve bazı küçük seçenekleri tıklayarak bu yeni içerik veya “özel yazı türü” oluşturmanıza olanak tanıyan bir dizi yeni seçenek oluşturacaktır. Birçoğu size yaptığınız yeni içerik türünde birkaç özel alan ve taksonomi hazırlamak için iyi bir arayüz bile verir (ancak konuyu başka bir zaman için öğrenin). Dediğim gibi, bu kategoride birçok eklenti var. WordPress eklentisi deposunda bunu kısa bir özetle yapacak bazı ücretsiz eklentiler:
POD – Sadece özel bir yazı türü ve taksonomi oluşturmakla kalmaz, aynı zamanda varsayılan yazı ve kullanıcı profilinin türüne eklemek için POD’u da kullanabilirsiniz. POD, kar amacı gütmeyen vakıf tarafından desteklenen topluluk tarafından yönlendirilir ve Automattic’in desteğine sahiptir. (Bunu POD ile yapmak için hızlı bir rehberimiz var!) Araç seti türleri – Özel yazı tipinizi ve taksonomi ve daha fazlasını oluşturun. Ayrıca işlevselliğini ve WordPress’i geliştirmek için birkaç premium uzantıya sahiptir.
UI özel yayınlama türleri WebDevstudios’ta iyi kişilerden, onlar için özel yayınların bir türü ve taksonomisi oluşturmanızı sağlayacak basit bir eklenti. Özel yazı tipi yapımcısı-özel yazı türlerine benzer şekilde UI’ye benzer, bu size basit bir arayüz sağlar. Bir tür yazı ve özel taksonomi oluşturun.
İçerik türünüz için özel bir eklenti oluşturun
Evet! Bu öğe! Arayüzlerle uğraşmak yerine PHP yazmayı tercih eden biri olarak, WordPress’te yeni bir özel yazı yapmak istediğimde genellikle tüm çözüm sınıfını kaçırıyorum. Register_post_type () WordPress işlevi, PHP ile yeni bir içerik türü oluşturmanın bir yoludur. WordPress API ve kanca sistemi hakkında bir anlayışınız varsa, bu kullanımı nispeten kolaydır. Eğer sizin için hepsi Yunanistan ise, birinci sınıf seçim ihtiyaçlarınıza iyi hizmet edebilir. Bu işlevi çadırın altında kullanıyorlar, ancak onu karıştırmanıza gerek yok. Bu yöntem için tercihim, tasarlamadığım kullanıcı arayüzündeki düğmeyi tıklamaktan biraz daha haklı. Yukarıdaki tüm özel direk tipi eklentiler, yayın türünüzü hızlı ve kolay bir şekilde ayarlamanıza izin verdiğinden, böyle bir veritabanında yayın türü (ve kullanıyorsanız taksonomi ve özel alanlar) hakkındaki verilerinizi saklarsınız. İki büyük zayıflığı var:
Ayarlarınız artık daha az taşınabilir. Ayarlanmış eklentiler, belirli içerik türleri ve özellikler için ayarlanan tüm eklentiler, veritabanı verilerini aktarmaya gerek kalmadan diğer WordPress sitelerine kolayca getirilebilir. Bir kez daha, ilk çözüm türünü gören çoğu insan için bu gerçek bir sorun değil. Bu, tasarım ve geliştirme sürecinde birkaç aracı sitesi olabilecek projeler üzerinde çalışan geliştiriciler için bir sorundur, ancak yalnızca “gerçek bir siteniz” varsa, bu bir sorun değildir. (Ancak, yalnızca “gerçek bir siteniz” varsa, umarım siteniz için en az bir yedekleme sistemi çalıştırırsınız.) Veritabanında veri depolama eklentisi “benim için yap”, en az bir gereksiz veritabanı çağrısı yaparlar (Ayar seçeneğinizi almak için) Her WordPress sayfası yüklenmeden önce. Yüksek kalite ve yüksek performanslı barındırma ayarları için, bu büyük bir sorun değil, itiraf ediyorum, ancak bu ücretsiz değil. Ben kıyaslama yapmadım, bunu yapmak istemiyorum, ama bu eklentinin maliyeti.
Özel gönderme kodlarına örnek olarak, bu öğreticinin CPT kodu ile çok eksiksiz olmayacağını açıkladı. Okumak istediğinizi sanmıyorum, aynı zamanda satırla satır için örnek kodun ayrıntılarını ve her parametreyi register_post_type işlevine yazmak istemiyorum. Ama bence bu örnek kod hakkında size sunacağım bazı sezgiler var, çok iyi ve çok kapsamlı bir kodeks sayfasından ödünç alındı: add_action (‘init’, ‘codex_book_init’); Codex_book_init () {$ labels = array (‘name’ => _x (‘kitaplar’, ‘post türü genel ad’, ‘plugin-textdomain’), ‘singular_name’ => _x (‘kitap’, ‘Post Tekil adı ‘,’-plugin-textdomain ‘),’ menü_adı ‘=> _x (‘ kitaplar ‘,’ yönetici menüsü ‘,’-plugin-txtdomain ‘),’ name_admin_bar ‘=> _x (‘ kitap ‘, ‘Yönetici çubuğuna yeni ekle’, ‘-plugin-metin-aln’), ‘add_new’ => _x (‘yeni ekle’, ‘kitap’, ‘plugin-txtdomain’), ‘add_new_item’ => __ (‘ Yeni kitap ‘,’-plugin-textdomain ‘),’ new_item ‘=> __ (‘ yeni kitap ‘,’ plugin-textdomain ‘),’ edit_item ‘=> __ (‘ Düzenle ‘,’ Your- Eklenti-metin alanı ‘),’ view_item ‘=> __ (‘ Kitap görüntüle ‘,’ plugin-metin-toinnain ‘),’ all_items ‘=> __ (‘ tüm kitaplar ‘,’-plugin-textdomain ‘),’ search_items ‘=> __ (‘ Arama Kitapları ‘,’ Plugin-Textdomain ‘),’ Parent_item_Colon ‘=> __ (‘ Ebeveyn Kitapları: ‘,’ Plugin-Textdomain ‘),’ ”
not_found ‘=> __ (‘ kitap yok$ args = array (‘labels’ => $ labels, ‘açıklama’ => __ (‘açıklama. ‘=> true,’ show_in_menu ‘=> true,’ query_var ‘=> true,’ yeniden yaz ‘=> dizi (‘ slug ‘=>’ kitap ‘),’ Capity_type ‘=>’ post ‘,’ has_archive ‘=> True, ‘hiyerarşik’ => false, ‘menü_position’ => null, ‘destek’ => dizi (‘başlık’, ‘editör’, ‘yazar,’ küçük resim ‘,’ alıntı ‘,’ yorumlar ‘);Register_post_type (‘kitap’, $ args);
} Bu kodun dikkate alınması gereken ilk kısmı Add_action satırdır.WordPress’i biliyorsanız, bu çok kafa karıştırıcı olabilir.Ayrıca bu konuda kapsamlı bir öğreticimiz var, kancalar, eylemler ve filtreler wordpress: ne yaptıkları ve nasıl çalıştığı.Yönetici özeti, alıntındaki diğer tüm kodları tetikleyen çizgidir.Tartışılması gereken ikinci şey, etiketin ilk büyük dizisidir.Bu, sıkı bir şekilde gerekli değil.Yazmak için can sıkıcı olduklarını hissediyorum, ama efekti seviyorum, bu yüzden genellikle kurtarıyorum.Rolleri, tüm arayüz düğmeleriniz için doğru WordPress metnini vermektir.Örneğin, bir Edit_item dizi öğeniz yoksa, sitenizin ön tarafında yayın türlerinin örneklerini gördüğünüzde, yönetici çubuğu “Düzenle” yerine “yayınları düzenle” diyecektir. . Bu dünyanın sonu değil, ama iyi değil. WordPress’in doğru dili kullanmasını istiyorsanız, dili eklemeniz gerekir. Son olarak, tüm $ args dizisi var. Bu, WordPress’te genel bir modeldir (ve bence iyi). Bu kullanışlıdır, çünkü size yapılandırma için bazı öğeleri belirleme seçeneği sunar, ancak her şeyi yazmanız gerekmez. Bu örnek çok spesifik. Vurgulamak istediğim tek unsur, bu öğeler için sümüklü bulunan URL’yi belirlediğiniz yer olan yeniden yazma. Bu öğedir, URL’de göreceğinizi kontrol eden Register_Post_Type işlevine ilk argümanınız değil. İki İngilizce kelimeden oluşan yayın türleri veya WordPress dahili kod adının URL’nizde kullanma şeklinden kısaltılmasını istediğiniz yerlerde, bu farklı olacaktır. URL notunda, özel bir yazı türünün başka bir küçük “gotcha”, yeniden yazma kurallarınızı veya kalıcı bağlantılarınızı doğru şekilde görüntülenebilmeniz için yenilemeniz gerektiğidir. Bunu yapmak oldukça kolaydır, sadece “Ayarlar> Kalıcı Bağlantılar” ı açın ve farklı değerler iken ayarlayın, ardından tekrar değiştirin. Tasarruf (gerçek değişiklikler değil, sadece batıl inanç inanıyorum) CPT sayfalarınızın çalışmaya başlamasına izin verecek olan şeydir. Özel yayın türleri, sitenize hizmet veren wordPress’e yardımcı olur Daha iyi özel yazı türü, WordPress’i “blog yazılımı” ndan eksiksiz bir içerik yönetim sistemine taşıyan güçlü ve önemli bir özelliktir. “Gönder” adında “Post” kullanımını buldum.