Özel gönderi kısa kodu eklemek için özel medya yükleme içeriği


12

Herhangi bir sayfa veya yazı eklemek için kısa kod ile birlikte özel yazı tipi "portföy" oluşturan bir eklenti üzerinde çalışıyorum.

Kısa kod: [portfolio option1=“1” option2=“0” option3=“1” ]

Ve iyi çalışıyor, özel aracılığıyla tüm özel yayınları gösterir WP_query. Ama daha ileri gitmek istiyorum.

upload mediaKullanıcının hangi seçenekleri dahil edeceğini ve tüm seçenekleri tanımlayacağını seçebileceği bir portföy kısa kod çıktısı oluşturmak için yanında özel bir düğme oluşturun . Böylece çıktı:[portfolio option1=“1” option2=“0” option3=“1” ids=“12,311,432,443,” ]

Bu wp media.php içinde buldum bir düğme kodu:

add_action( 'media_buttons', array( $this, 'media_buttons' ) );

public function media_buttons($editor_id = 'content') {
    $post = get_post();
    if ( ! $post && ! empty( $GLOBALS['post_ID'] ) )
        $post = $GLOBALS['post_ID'];

    wp_enqueue_media( array(
        'post' => $post
        ) );
    $img = '<span class="wp-media-buttons-icon"></span> ';

    echo '<a href="#" id="insert-media-button" class="button insert-media add_media" data-editor="' . esc_attr( $editor_id ) . '" title="' . esc_attr__( 'Add Portfolio' ) . '">' . $img . __( 'Add Portfolio' ) . '</a>';
}

Ve ne yaparsa onu yapar. Ancak, şimdi, oluşturulan pencerenin içeriğini değiştirmenin en iyi yolu nedir? İşte nasıl gördüğümün bir resmi, herhangi bir açıklama daha iyi:

resim açıklamasını buraya girin Bunun başarılması ne kadar karmaşık ve zor olabilir? Hangi yöne bakmam gerektiğini bilmiyorum, bu mümkün mü? Lütfen çözüm için nereden kazmaya başlamam gerektiğini önerilerinizi bildirin.

PS: Ya da belki de ilk etapta yanılıyorum ve ThickBox kullanmayı düşünmeliyim? Ancak medya yükleme pop-up'ının yerel görünümünü korumak istiyorum.

Şerefe!

DÜZENLE:

Belki de çok daha iyi bir çözüm yerel galeri kısa kod modelini kullanmak olabilir. Ortam yükleme penceresine, örneğin burada açıklandığı gibi yeni bir menü öğesi eklemek zor değildir .

Yani son vizyon şöyle bir şey:

resim açıklamasını buraya girin resim açıklamasını buraya girin

Bu Backbone.js ile yapılmalıdır inanıyorum? Ama asıl soru, resimler yerine özel yayınları değiştirebilir mi?


1
Özel yayınları yönetmek için medya düzenleyiciyi kullanmanın iyi bir fikir olmadığını düşünüyorum. "Portföy" adlı yeni bir eklenti mim türü ve mevcut kısa kod ve medya düzenleyici yönetimiyle portföy galerileri oluşturamaz mısınız?
Fabien Quatravaux

Teşekkürler @FabienQuatravaux, bunun nasıl çalışması gerektiğini anladığımdan emin değilim, ama şimdi bu yönde araştırma yapacağım, biraz okuma önerebilir misiniz?
Nikita

Özel yazı türü tam olarak ne için kullanılır? Özel yazı türünü yalnızca yönetici alanına uygun menüyü eklediği için mi kullanıyorsunuz? Resmi bir portföy yayınına nasıl bağlarsınız (ekran görüntünüzde gösterildiği gibi)?
Fabien Quatravaux

Twikin eklentimde özel ek mim türü kullandım , ancak kullanım durumunuzla tamamen alakalı olduğundan emin değilim.
Fabien Quatravaux

Yanıtlar:


1

resim açıklamasını buraya girin

Buradaki rehberime bir göz atın - http://www.wpexplorer.com/wordpress-tinymce-tweaks/ - böylece seçeneklerinizi belirleyebileceğiniz bir kısa kod eklemek yerine bir açılır pencere nasıl oluşturabileceğinizi görebilirsiniz. Ücretsiz Symple Shortcodes eklentimi indirirseniz canlı bir uygulama da görebilirsiniz.

Kullanıcının eklenecek yayınları seçmesini sağlamak yerine, portföyünüze bir Kategoriler sınıflandırması ekleyin, böylece kullanıcı öğeleri kategoriler halinde düzenleyebilir. Ardından, kullanıcının yayınları hangi kategoriden alacağını seçmesi için açılır pencerede basit bir açılır listeye sahip olabilirsiniz.

Bu, son kullanıcının ileride yönetmesi çok daha kolaydır, çünkü yayınlarını kategoriye eklemek zorundadırlar ve kısa kod, yeni yayınları dahil etmek için kısa kodu manuel olarak güncellemek zorunda kalmadan otomatik olarak görüntüler.

  • AJ
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.