Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Kupası
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

WordPress Görsel Düzenleyicisine Özel Stiller Nasıl Eklenir

Editoryal Not: WPBeginner üzerindeki ortak bağlantılardan komisyon kazanıyoruz. Komisyonlar, editörlerimizin görüşlerini veya değerlendirmelerini etkilemez. Editoryal Süreç hakkında daha fazla bilgi edinin.

WordPress görsel düzenleyicisine özel stiller eklemek ister misiniz? Özel stiller eklemek, metin düzenleyiciye geçmeden hızlı bir şekilde biçimlendirme uygulamanıza olanak tanır. Bu makalede, WordPress görsel düzenleyicisine özel stilleri nasıl ekleyeceğinizi göstereceğiz.

Adding custom styles in WordPress visual editor

Not: Bu eğitim CSS hakkında temel çalışma bilgisi gerektirir.

WordPress Görsel Düzenleyicisi için Özel Stillere Neden ve Ne Zaman İhtiyaç Duyarsınız?

WordPress görsel düzenleyicisi varsayılan olarak bazı temel biçimlendirme ve stil seçenekleriyle birlikte gelir. Ancak bazen CSS düğmeleri, içerik blokları, sloganlar vb. eklemek için kendi özel stillerinize ihtiyaç duyabilirsiniz.

Her zaman görsel editörden metin editörüne geçebilir ve özel HTML ve CSS ekleyebilirsiniz. Ancak bazı stilleri düzenli olarak kullanıyorsanız, bunları kolayca yeniden kullanabilmek için görsel düzenleyiciye eklemek en iyisi olacaktır.

Bu, metin ve görsel düzenleyici arasında ileri geri geçiş yapmak için harcadığınız zamandan tasarruf etmenizi sağlayacaktır. Ayrıca web sitenizin tamamında aynı stilleri tutarlı bir şekilde kullanmanıza olanak tanır.

En önemlisi, web sitenizdeki gönderileri düzenlemek zorunda kalmadan stilleri kolayca değiştirebilir veya güncelleyebilirsiniz.

Bunu söyledikten sonra, WordPress görsel düzenleyicisinde özel stillerin nasıl ekleneceğine bir göz atalım.

Yöntem 1: Eklenti Kullanarak Görsel Düzenleyiciye Özel Stiller Ekleme

Yapmanız gereken ilk şey TinyMCE Özel Stiller eklentisini yüklemek ve etkinleştirmektir. Daha fazla ayrıntı için, bir WordPress eklentisinin nasıl kurulacağına ilişkin adım adım kılavuzumuza bakın.

Etkinleştirmenin ardından, eklenti ayarlarını yapılandırmak için Ayarlar ” TinyMCE Özel Stiller sayfasını ziyaret etmeniz gerekir.

TinyMCE Custom Styles settings

Eklenti, stil sayfası dosyalarının konumunu seçmenize olanak tanır. Temanızın veya alt temanızınstil sayfalarını kullanabilir veya kendinize ait özel bir konum seçebilirsiniz.

Bundan sonra, değişikliklerinizi kaydetmek için ‘Tüm Ayarları Kaydet’ düğmesine tıklamanız gerekir.

Şimdi özel stillerinizi ekleyebilirsiniz. Stil bölümünü biraz aşağı kaydırmanız ve Yeni stil ekle düğmesine tıklamanız gerekir.

Öncelikle stil için bir başlık girmeniz gerekir. Bu başlık açılır menüde görüntülenecektir. Ardından, bunun satır içi, blok veya seçici öğe olup olmadığını seçmeniz gerekir.

Bundan sonra bir CSS sınıfı ekleyin ve ardından aşağıdaki ekran görüntüsünde gösterildiği gibi CSS kurallarınızı ekleyin.

Adding a new custom style

Bir CSS stili ekledikten sonra, değişikliklerinizi saklamak için ‘Tüm Ayarları Kaydet’ düğmesine tıklamanız yeterlidir.

Artık mevcut bir yazıyı düzenleyebilir veya yeni bir tane oluşturabilirsiniz. WordPress görsel düzenleyicisinin ikinci satırında bir Biçim açılır menüsü göreceksiniz.

Custom style menu in TinyMCE

Düzenleyicide bir metin seçin ve ardından uygulamak için Biçimler açılır menüsünden özel stilinizi seçin.

Artık özel stillerinizin doğru uygulandığını görmek için gönderinizi önizleyebilirsiniz.

Yöntem 2: WordPress Görsel Düzenleyicisine Özel Stilleri Elle Ekleme

Bu yöntem, WordPress dosyalarınıza manuel olarak kod eklemenizi gerektirir. WordPress’e ilk kez kod ekliyorsanız, lütfen web’den WordPress’e kod parçacıkları ekleme kılavuzumuza bakın.

Adım 1: WordPress Görsel Düzenleyici’de özel stiller açılır menüsü ekleyin

İlk olarak, WordPress görsel düzenleyicisine bir Biçimler açılır menüsü ekleyeceğiz. Bu açılır menü daha sonra özel stillerimizi seçmemize ve uygulamamıza izin verecektir.

Aşağıdaki kodu temanızın functions.php dosyasına veya siteye özel bir eklentiye eklemeniz gerekir.

function wpb_mce_buttons_2($buttons) {
	array_unshift($buttons, 'styleselect');
	return $buttons;
}
add_filter('mce_buttons_2', 'wpb_mce_buttons_2');

Adım 2: Açılır menüye seçme seçenekleri ekleyin

Şimdi seçenekleri yeni oluşturduğunuz açılır menüye eklemeniz gerekecektir. Daha sonra bu seçenekleri Biçimler açılır menüsünden seçip uygulayabileceksiniz.

Bu eğitimin amacı doğrultusunda, içerik bloğu ve düğmeler oluşturmak için üç özel stil ekleyeceğiz.

Aşağıdaki kodu temanızın functions.php dosyasına veya siteye özel bir eklentiye eklemeniz gerekecektir.

/*
* Callback function to filter the MCE settings
*/

function my_mce_before_init_insert_formats( $init_array ) {  

// Define the style_formats array

	$style_formats = array(  
/*
* Each array child is a format with it's own settings
* Notice that each array has title, block, classes, and wrapper arguments
* Title is the label which will be visible in Formats menu
* Block defines whether it is a span, div, selector, or inline style
* Classes allows you to define CSS classes
* Wrapper whether or not to add a new block-level element around any selected elements
*/
		array(  
			'title' => 'Content Block',  
			'block' => 'span',  
			'classes' => 'content-block',
			'wrapper' => true,
			
		),  
		array(  
			'title' => 'Blue Button',  
			'block' => 'span',  
			'classes' => 'blue-button',
			'wrapper' => true,
		),
		array(  
			'title' => 'Red Button',  
			'block' => 'span',  
			'classes' => 'red-button',
			'wrapper' => true,
		),
	);  
	// Insert the array, JSON ENCODED, into 'style_formats'
	$init_array['style_formats'] = json_encode( $style_formats );  
	
	return $init_array;  
  
} 
// Attach callback to 'tiny_mce_before_init' 
add_filter( 'tiny_mce_before_init', 'my_mce_before_init_insert_formats' ); 

Artık WordPress’te yeni bir yazı ekleyebilir ve Görsel düzenleyicideki Biçimler açılır menüsüne tıklayabilirsiniz. Özel stillerinizin artık biçimler altında göründüğünü fark edeceksiniz.

Ancak, bunları seçmek şu anda yazı editöründe herhangi bir fark yaratmıyor.

Adım 3: CSS Stilleri Ekleyin

Şimdi son adım, özel stilleriniz için CSS stil kuralları eklemektir.

Bu CSS’yi temanızın veya alt temanızın style.css ve editor-style.css dosyalarına eklemeniz gerekecektir.

.content-block { 
    border:1px solid #eee; 
    padding:3px;
    background:#ccc;
    max-width:250px;
    float:right; 
    text-align:center;
}
.content-block:after { 
    clear:both;
} 
.blue-button { 
	background-color:#33bdef;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	border:1px solid #057fd0;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	padding:6px 24px;
	text-decoration:none;
}

.red-button {
	background-color:#bc3315;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	border:1px solid #942911;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	padding:6px 24px;
	text-decoration:none;
}

Custom styles in WordPress post editor

Düzenleyici stil sayfası, içeriğinizin görsel düzenleyicideki görünümünü kontrol eder. Bu dosyanın konumunu öğrenmek için temanızın belgelerine bakın.

Temanızda bir editör stil sayfası dosyası yoksa, her zaman bir tane oluşturabilirsiniz. Basitçe yeni bir CSS dosyası oluşturun ve custom-editor-style.css olarak adlandırın.

Bu dosyayı temanızın kök dizinine yüklemeniz ve ardından bu kodu temanızın functions.php dosyasına eklemeniz gerekir.

function my_theme_add_editor_styles() {
    add_editor_style( 'custom-editor-style.css' );
}
add_action( 'init', 'my_theme_add_editor_styles' );

Hepsi bu kadar. Özel stillerinizi WordPress görsel düzenleyicisine başarıyla eklediniz. Kendi öğelerinizi ve stillerinizi ekleyerek kodla oynamaktan çekinmeyin.

Umarız bu makale WordPress görsel düzenleyicisine özel stillerin nasıl ekleneceğini öğrenmenize yardımcı olmuştur. WordPress widget’larına özel stillerin nasıl ekleneceğine ilişkin kılavuzumuzu da görmek isteyebilirsiniz.

Bu makaleyi beğendiyseniz, WordPress video eğitimleri için lütfen YouTube Kanalımıza abone olun. Bizi Twitter ve Facebook‘ta da bulabilirsiniz.

Açıklama: İçeriğimiz okuyucu desteklidir. Bu, bazı bağlantılarımıza tıklarsanız komisyon kazanabileceğimiz anlamına gelir. WPBeginner'ın nasıl finanse edildiğini, neden önemli olduğunu ve nasıl destek olabileceğinizi görün. İşte editoryal sürecimiz.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Ultimate WordPress Araç Kiti

Araç setimize ÜCRETSİZ erişim sağlayın - her profesyonelin sahip olması gereken WordPress ile ilgili ürün ve kaynaklardan oluşan bir koleksiyon!

Reader Interactions

50 yorumBir Cevap Bırakın

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Aslan French says

    This article should be updated with Gutenberg in mind, as this kind of functionality has been added to the Rich Text API recently.

  3. sabbi says

    This adds classes to a p-tag doesnt it?
    Is there a way to even create own tags?
    Or another thing:will a chosen custom Format overwrite a previously chosen h-tag with a p? Would be necessary to prevent a client from getting in trouble when hes clicking around in the default AND custom styles.

  4. Britany says

    Unfortunately this didn’t help me at all. Is there an article that explains what each of the fields you have to fill in mean?

    All I need is a way to apply the same formatting to quotes on my podcast show notes pages. Each quote is the the same font (that I have set-up as a headline style), bolded, and centered.

    I get tired of manually applying each part of the format to every quote and just a way to click one button and be done.

  5. Sandy Connolly says

    THANK YOU FOR THIS!!! OMG!!!! How helpful upon handing a site over to a client who wants to be able to add his/her own content based on our design!

  6. Marcin says

    Hi, I develop WordPresses every day and do everything with WP but this piece of code is one of the most useful I’ve seen for long time… It is exactly what default WYSIWYG is (now I can say: was) missing! It allows to do some stunnig things inside content field. Thank You for sharing!

  7. Foxglove says

    I have been using this plugin for a while now, but it is no longer available from wordpress.org — apparently no longer updated or supported. Is anyone aware of any alternatives other than the manual method you describe?

  8. Shubha Das says

    I want to add p instead of span. But when I change block name span to p, it doesn’t work.

    ‘title’ => ‘Note’,
    ‘block’ => ‘p’,
    ‘classes’ => ‘note’,
    ‘wrapper’ => true,

  9. MacKenzie says

    I found this really helpful and I feel like I almost have it but it isn’t quite working yet. My text gets properly tagged with the span and class tags in the editor when selected – but none of the styles I put in the style sheet are being applied to the published note.

  10. Frank says

    I always become nervous and feel like vomiting if some customer needs wordpress tweaks. Coll, this style pulldown BUT, as someone said before, completely useless if styles cannot be withdrawn afterwards and only add up, add up, add up…

    I’m used to these half baked sulotions in wordpress – normally there’s also a complementary half-baked solutions to half repair the first one. But here?

    Now HOW would you suggest TO REMOVE CUSTOM STYLES added via the styles pulldown. Code view is in no way acceptable for my client?

    I’d be unbelievably lucky if someone has found a way to do that and would share this knowledge (and for putting the catastrophe called wordpress out of my reach for( i hope) a very long time).

    Thanks a lot in advance!

    Frank

  11. Stef says

    I tried out this plugin but realized, that when you change a custom style, It won’t update those you inserted already. You have to go back and reinsert them, because the feature adds the style inline and not via stylesheet

  12. Phil says

    Thanks for the helpful tutorial. Is there any performance penalty in using the plugin rather than hand-coding it? Thanks,

    • Sei says

      Okay, your comments converts HTML. I mean, I’d like to get both ‘h1’ and ‘span’ markups around my text by clicking on only one style.

  13. Lily says

    I’ve managed to do the custom classes and the elements do show with the right classes in the text editor and on the page, but the class isn’t applied in the visual editor which makes it very unclear whether it’s worked or not for the user. Is there any way to fix that?

  14. Bonnie Dasher-Andersen says

    I’ve added two custom styles. When I go to edit a page, I have two Format menus, each one with the same entries (the two styles that I created). When I try to apply these styles, nothing happens. I can see the tag in the Text view, but when I view the page – the style hasn’t been applied.

    Any suggestions? Need to figure this out for a client who will be updated this WP site and is not very savvy.

    • Marcello says

      I had the same problem, where the tags weren’t applied to code. Fixed it by setting ‘wrapper’ to ‘false’. I don’t know the technical reasons, just tested and it worked. Hope it helps!

      • hugotom says

        I had the same problem that the style sheet is not recorded.
        Solution
        If you already have this recording style sheets in the functions.php file should add right there stylesheet custom-editor-style.css

        Example:

        function styles_theme(){
        wp_enqueue_style(‘bootstrap_css’, get_template_directory_uri() . ‘/sources/bootstrap/bootstrap.min.css’);
        wp_enqueue_style(‘main_css’, get_template_directory_uri() . ‘/style.css’);
        wp_enqueue_style(‘theme_css’, get_template_directory_uri() . ‘/custom/css/theme.css’);
        wp_enqueue_style(‘editor_css’, get_template_directory_uri() . ‘/custom-editor-style.css’); // HERE
        };

  15. Raphael Landau says

    I’ve used this and also had the issue where the style/class is implemented to the entire Paragraph. This is because you set the style format as “block”. (‘block’ => ‘span’,).

    Quickly visiting the official WordPress codex, discovers much more options for style formatting.

    http://codex.wordpress.org/TinyMCE_Custom_Styles

    Since span is an inline style be default, you should replace ‘block’ with ‘inline’, and viola! You’re styling should work as expected.

    so in short:

    array(
    ‘title’ => ‘Your Title’,
    ‘inline’ => ‘span’,
    ‘classes’ => ‘your-class’,
    ‘wrapper’ => true,
    ),

  16. nemaha says

    Hi,
    great tutorial, thanks for that! I, too, have the problem, that style (a span) is applied to the whole paragraph. What I intend to do: Write a headline and format it as heading 1, then mark only one specific word within that headline to add a custom style. Any update on how to fix this? Thanks!

  17. bekee says

    i, too, have the problem where it applies the style to the whole paragraph, not just the selected element. any update on this? thanks!

  18. James says

    I find a couple of problems. It does seem to work, but not as expected. Will not do for someone who does not know code.

    1. Highlight a single word in a paragraph to add a but the is added to the entire paragraph, not just the highlighted word.
    2. No way to remove the css without editing code. My client does not do code! Even tried to make a class of .nothing but the new class is only added to any others, does not replace existing class.

  19. Sheikh Zuhaib Siddiqui says

    Hey I have an error in add media. When I try to upload any media, there is only continue loading and not showing up any media and can upload media……………Let me know what the mistake here???

    But this is working fine …………just error in media uploader. please provide me this solution.

  20. Marlice says

    Hi. Thank you for this great tutorial. I have a problem with content that is already in the editor. If I mark a word or a part of text and choose a style (for example “blue button” – from your code) it wraps not only the marked word or part of text. Instead it marks the whole content and put a span with the class .blue button on it. I tried it several times with other pages and posts – always the same: if the content was already there and I marked it, then the whole content get the span class. This does not happen if I wrap a new edited text in the page/post – than everything works fine. Does anybody has this phenomen too?
    Thank you,
    Ute

  21. John-Henry Ross says

    Hi. I tried this method and it works like a charm, exactly what I was looking for, thank you. I just want to find out if there is a way to add styles to a subfolder instead of just adding it under a format button. E.g. add a headings subfolder with all heading stylings, add div submenu with div stylings, etc.

  22. dave says

    Thanks!
    It’s great to show 2 methods, too… my clients cower in fear at handling any code.

    I will sometimes use custom fields to “force” safe additional styles, but the TinyMCE can be handled by some people, so I’ll kee that in mind. :)

    Ciao, Dave

        • Jeff Gaudette says

          Sure. Functions:

          /*
          * Callback function to filter the MCE settings
          */

          function my_mce_before_init_insert_formats( $init_array ) {

          // Define the style_formats array

          $style_formats = array(
          // Each array child is a format with it’s own settings
          array(
          ‘title’ => ‘Alert’,
          ‘block’ => ‘span’,
          ‘classes’ => ‘entry p.alert-blue’,
          ‘wrapper’ => true,

          ),
          array(
          ‘title’ => ‘Alert Blue’,
          ‘block’ => ‘p’,
          ‘classes’ => ‘alert-blue’,
          ‘wrapper’ => true,
          ),
          array(
          ‘title’ => ‘Blue Button’,
          ‘block’ => ‘span’,
          ‘classes’ => ‘alert-blue-button’,
          ‘wrapper’ => true,
          ),
          );
          // Insert the array, JSON ENCODED, into ‘style_formats’
          $init_array[‘style_formats’] = json_encode( $style_formats );

          return $init_array;

          }
          // Attach callback to ‘tiny_mce_before_init’
          add_filter( ‘tiny_mce_before_init’, ‘my_mce_before_init_insert_formats’ );

          CSS

          .alert-blue{
          background: none repeat scroll 0 0 #E7F4FD;
          border: 1px solid #C5D7E3;
          color: #3A5971;
          font-size: 18px;
          line-height: 24px;
          text-align: center;
          margin: 0 0 15px !important;
          padding: 15px 25px;
          width: auto;
          }

  23. Jeff Gaudette says

    I am trying to do this with a block and having no luck. Code is:

    array(
    ‘title’ => ‘Alert Blue’,
    ‘block’ => ‘p’,
    ‘classes’ => ‘.alert-blue’,
    ‘wrapper’ => true,
    ),

    It works when I use span, but this necessitates a span class, which I can’t use.

    When i use the above code, nothing happens in the wp editor. I select the text, click the Alert Blue formatting option and nothing happens: http://screencast.com/t/dijujZ2ZdqBy

    Any advice?

Bir Cevap Bırakın

Yorum bırakmayı seçtiğiniz için teşekkür ederiz. Lütfen tüm yorumların yorum poli̇ti̇kasi uyarınca denetlendiğini ve e-posta adresinizin yayımlanmayacağını unutmayın. Ad alanında anahtar kelime KULLANMAYIN. Kişisel ve anlamlı bir sohbet edelim.