it-swarm.asia

Kenar Çubuğu widget'larındaki Özel Posta Türü Verileri?

(not: bu soru aslında Özel Alanlar'la ilgiliydi, ancak @MikeSchinkel, Özel Mesaj Türlerini içeren daha iyi bir çözüm buldu)

Sitemde aynı verileri kenar çubuğunda göstermek istediğim birkaç sayfa var. Örneğin, böyle bir yapıda:

-Home
-Cars 
 -Volvo 850 overview 
 -Volvo 850 tech spec 
 -Volvo 850 pictures
 -Porsche 911 overview
 -Porsche 911 tech spec
 -Porsche 911 pictures
-Roads 
 -Route 66 overview 
 -Route 66 history 
 -Route 66 pictures
 -Pan-American Highway overview
 -Pan-American Highway history
 -Pan-American Highway pictures

Tüm Volvo 850 sayfalarının kenar çubuğunda aynı verileri göstermesini, tüm Porsche sayfalarının farklı bir veri kümesi göstermesini (örneğin Speed, Maker, vb.) İstiyorum.

Yol sayfalarının her yol için kendi veri kümesi olur. Otomobiller ve Yollar da kendi sayfa şablonlarına sahip olacaktı ve doğru kenar çubuğunu elde edeceğimi düşündüğüm yöntem de sidebar.php içinde böyle bir şey olacak:

if ( is_page_template('car-profile-template.php') ) :
// show car widgets

İşte örnek bir sayfa, Volvo 850 Resimleri sayfası. Aynı (solda) kenar çubuğunun diğer Volvo 850 sayfalarında görünmesi gerekirken, sağdaki kısım yalnızca sayfa içeriğindedir.

|  Home   •Cars   Roads                                |
--------------------------------------------------------
|   Overview     |     Volvo 840 Pictures              |
|   Tech Spec    |    (some pics)                      |
|  •Pictures     |                                     |
------------------                                     |
| -Specs-        |                                     |
| Volvo 850      |                                     |
| Speed:150mph   |                                     |
| Maker:Volvo    |                                     |  
| Download PDF   |                                     |
------------------                                     |
| -Rating-       |                                     |
| Style:3        |                                     |
| Safety:5       |                                     |
| Reliablity:4   |                                     |
------------------                                     |

Bu örnekte, iki kenar çubuğu widget'ı, Özellikler ve Derecelendirme, Özel Posta Türünden bilgilerini almak zorundadır. Son kullanıcının düzenlemesi kolay olacak bir yöntem var mı, yani bu özel verileri yalnızca bir kez girmek zorunda kalacaklar mı? Alanların her birinin ayrı olması gerekli olmayabilir (yani, bir Editör alanına tüm Spesifikasyonlar girilebilir ve Derecelendirmelerin tümü Alıntı alanına girebilir .. belki)

10
cannyboy

Sanırım birileri, ilettiğiniz diğer soruya (ana sayfalar/ara sayfalar hakkında) çoktan cevaplamış olabilir, ancak açıkladığınız şeye dayanarak verilerinizi yapılandırmanın en iyi yolu şudur:

 - Home
 - Volvo 850 (overview)
   - Volvo 850 tech spec
   - Volvo 850 pictures
 - Porsche 911 (overview)
   - Porsche 911 tech spec
   - Porsche 911 pictures

Bu şekilde meta alanlarına yalnızca bir kez girmeniz gerekir - üst sayfada - ve alt sayfalarda bu meta verileri üst öğeden çekebilirsiniz:

<?php echo 'Top speed: '.get_post_meta($post->post_parent,'Top Speed',true); ?>

Elbette, bunu organize etmenin daha iyi bir yolu, tüm otomobil bilgilerini depolayan her otomobil modeli için tek bir özel yazı tipine sahip olmak ve sayfaya iletilen ve kullanılan bir GET isteğine göre çeşitli alt sayfaları görüntülemek olacaktır. hangi şablonun görüntüleneceğini belirleyen bir anahtar olarak sayfa şablonu. Bu şekilde, verileri çoğaltmaktan tamamen kaçınabilir ve daha sonra şablona daha fazla bilgi eklemeyi kolaylaştırabilirsiniz ...

Daha fazla detay ...

Bunu birkaç farklı yolla yaptım. Özel bir gönderi türü olarak aracıları (şirket temsilcileri) olan bir sitede, bu kişiyle ilgili tüm verileri depolamak için mesajlarını kullandım ancak bu sayfayı hiç göstermedim. Bunun yerine, her zaman bir GET değişkeni ile çağrılan ve uygun postadan gelen bilgileri görüntüleyen bir "Ajan Listesi" sayfası, "Ajan Performansı Kaydı" sayfası ve "Bu Aracıyla İletişim Kur" sayfam vardı. Bu nedenle, kalıcı bağlantı site.com/agent-listing/?agent=john-smith gibi bir şeye benzeyecektir.

Başka bir sitede, tüm bilgileri bir sayfada kurdum ve bu sayfa için üç görüntünün hepsini sayfa şablonuna yerleştirdim. Senin durumunda, site.com/cars/volvo-850/?pictures gibi bir şeye benzeyebilir.

Ve sayfa şablonunda, içeriğin üstüne yakın bir değişken için bir kontrol de eklersiniz:

if ($_GET['pictures']) {

 // template for pictures page

} else if ($_GET['tech-spec']) {

 // template for tech specs page 

} else {

 // overview template

}
1
goldenapples

Özel gönderi türleri oluşturmak istemiyorsanız ve her sayfa veya gönderi için yalnızca özel bir kenar çubuğu eklemek istiyorsanız, Zarif Kenar Çubuğu Eklentisini kullanabilirsiniz. Bu, zarif başlık ve zarif içerik olarak adlandırılan ek alanları kullanarak doğrudan yazı veya sayfa düzenleme ekranından özel kenar çubuğu içeriği oluşturmanıza olanak sağlar. Bunlar daha sonra bu yazı veya sayfa blogunuzda görüntülendiğinde, kenar çubuğu alanında bir pencere aracı olarak görüntülenir. Bu eklenti hakkında daha fazla bilgiyi http://www.mlynn.org/graceful-sidebar-plugin adresinde bulabilirsiniz.

0
Michael Lynn