WYSIWYG'yi belirli bir Özel Yazı Türü için kaldırmak mümkün müdür?


18

WYSIWYG'yi Özel Mesaj Türümün en üstünde kullanmak istemiyorum. Özel alanlar listemin altına yerleştirebileceğim özel bir alan textarea kullanmak istiyorum.

Mümkün mü?

Yanıtlar:


20
add_action('init', 'init_remove_support',100);
function init_remove_support(){
    $post_type = 'your post type';
    remove_post_type_support( $post_type, 'editor');
}

temalarınıza yerleştirin. php


1
Not: Uygun yürütme sırasını sağlamak için aradığınız remove_post_type_support()aynı geri aramanın içinden arama yapmanızı öneririm register_post_type().
Chip Bennett

Function.php içinde register_post_type () işlevini göremiyorum. Özel Türler UI AdvancedCustomFields ile açılan kullanıyorum.
scottgemmell

Özel Gönderi Türleri UI Eklentisini kullandığınız, sorunuz için oldukça önemli bir ayrıntıdır. :) Eklenti supportsparametreyi kullanıcı arayüzünde gösterir. Bu ekran görüntülerine bakın .
Chip Bennett

14

Aslında sadece html kaynak düzenleyicisini bırakarak WYSIWYG düzenleyicisini devre dışı bırakabilirsiniz. Aşağıdan bir işlev seçin:

// disable wyswyg for custom post type, using the global $post
add_filter('user_can_richedit', function( $default ){
  global $post;
  if( $post->post_type === 'product')  return false;
  return $default;
});

// disable wyswyg for custom post type, using get_post_type() function
add_filter('user_can_richedit', function( $default ){
  if( get_post_type() === 'product')  return false;
  return $default;
});

sadece WYSIWYG alıntıdan kaldırmak için bir yolu var mı? Temam açıldı ve kodlarından bazıları hakkında şüpheliyim, kaldırabileceğimden emin değilim. Bunu burada yeni bir soru olarak sordum: wordpress.stackexchange.com/questions/300877/…
Jason

Merhaba, dürüst olmak gerekirse, bilmiyorum, WP bilgim biraz paslı, üzgünüm. Önerebileceğim tek şey, WP kaynak kodunu kazmak, ilgili bir şey bulmak, sonra dokümantasyon / örnekler için duckduckgo / google.
user188421

9

Alternatif olarak, post-editor desteğini dizideki parametre register_post_type()aracılığıyla doğrudan çağrınızda yönetebilirsiniz .'supports'$args

Varsayılan değer: 'supports' => array( 'title', 'editor' ).

İhtiyacınız olan şeye değiştirebilirsiniz; örneğin: 'supports' => array( 'title' ).


6

Re: bu yorum:

Özel Türler UI AdvancedCustomFields ile açılan kullanıyorum.

Özel Mesaj Türleri UI Eklentisi tüm açığaregister_post_type() $args kendi arayüzünde dizi parametreleri.

Bu durumda, Destekler bölümünü bulmanız ve Editör'ü devre dışı bırakmanız / işaretini kaldırmanız yeterlidir :

Özel Yazı Türleri UI Eklentisi - Kayıt Türü'nü Kaydetme seçenekleri


Seçilen cevap olarak başka bir cevap ayarlanmış olsa da, bu doğru cevaptır. CPT'nin başlayacağını bildirirken hariç tutabileceğiniz bir şeyi kaldırmak için filtre çalıştırmanıza gerek yoktur.
butlerblog

-1

Yalnızca html kaynak düzenleyicisini bırakarak WYSIWYG düzenleyicisini devre dışı bırakmanın bir başka, daha tutarlı yolu, özel yazı türünüz için "wp_editor_settings" filtresini kullanarak tinymce'ye izin vermemektir.

function my_post_type_editor_settings( $settings ) {

    global $post_type;

    if ( $post_type == 'my_post_type' ) {

        $settings[ 'tinymce' ] = false;
    }

    return $settings;
}

add_filter( 'wp_editor_settings', 'my_post_type_editor_settings' );

Lütfen yanıtınızı düzenleyin ve bir açıklama ekleyin: bu sorunu neden çözebilir?
fuxia
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.