Popüler sitelerde tek bir tıklamayla popüler, son ve öne çıkan gönderileri görmenizi sağlayan bir sekme alanı gördünüz mü? Buna jQuery tabber widget’ı denir ve farklı widget’ları tek bir widget’ta birleştirerek kullanıcı ekranında yer kazanmanızı sağlar. Bu makalede, WordPress’te bir jQuery Tabber Widget’ının nasıl ekleneceğini göstereceğiz.
Neden bir jQuery Tabber Widget’ı Eklemelisiniz?
Bir WordPress web sitesi çalıştırırken, sürükle ve bırak widget’larını kullanarak kenar çubuklarınıza kolayca öğe ekleyebilirsiniz. Siteniz büyüdükçe, kenar çubuğunda tüm yararlı içeriği göstermek için yeterli alanınız olmadığını hissedebilirsiniz. İşte tam da bu noktada bir sekme çubuğu kullanışlı hale gelir. Farklı öğeleri aynı alanda göstermenizi sağlar. Kullanıcılar her bir sekmeye tıklayabilir ve en çok ilgilendikleri içeriği görebilirler. Birçok büyük site bugünün, bu haftanın ve bu ayın popüler makalelerini göstermek için bunu kullanıyor. Bu eğitimde size bir tabber widget’ının nasıl oluşturulacağını göstereceğiz. Ancak sekmelerinize ne ekleyeceğinizi göstermeyeceğiz. Temelde istediğiniz her şeyi ekleyebilirsiniz.
Not: Bu eğitim orta seviye kullanıcılar içindir ve HTML ve CSS bilgisi gerektirecektir. Başlangıç seviyesindeki kullanıcılar için lütfen bu makaleye bakın.
WordPress’te jQuery Tabber Widget’ı Oluşturma
Hadi başlayalım. Yapmanız gereken ilk şey masaüstünüzde bir klasör oluşturmak ve adını wpbeginner-tabber-widget
koymak. Bundan sonra, Not Defteri gibi bir düz metin düzenleyici kullanarak bu klasörün içinde üç dosya oluşturmanız gerekir.
Oluşturacağımız ilk dosya wpb-tabber-widget.php
‘dir. Sekmeler ve özel bir WordPress widget’ı oluşturmak için HTML ve PHP kodu içerecektir. Oluşturacağımız ikinci dosya wpb-tabber-style.css
‘dir ve sekmeler kabı için CSS stilini içerecektir. Oluşturacağımız üçüncü ve son dosya ise wpb-tabber.js
olup sekmeleri değiştirmek ve animasyon eklemek için jQuery betiğini içerecektir.
wpb-tabber-widget.php
dosyası ile başlayalım. Bu dosyanın amacı bir widget kaydeden bir eklenti oluşturmaktır. İlk kez bir WordPress widget’ı oluşturuyorsanız, özel bir WordPress widget’ı nasıl oluşturulur kılavuzumuza göz atmanızı veya bu kodu kopyalayıp wpb-tabber-widget.php
dosyasına yapıştırmanızı öneririz:
<?php /* Plugin Name: WPBeginner jQuery Tabber Widget Plugin URI: https://www.wpbeginner.com Description: A simple jquery tabber widget. Version: 1.0 Author: WPBeginner Author URI: https://www.wpbeginner.com License: GPL2 */ // creating a widget class WPBTabberWidget extends WP_Widget { function WPBTabberWidget() { $widget_ops = array( 'classname' => 'WPBTabberWidget', 'description' => 'Simple jQuery Tabber Widget' ); $this->WP_Widget( 'WPBTabberWidget', 'WPBeginner Tabber Widget', $widget_ops ); } function widget($args, $instance) { // widget sidebar output function wpb_tabber() { // Now we enqueue our stylesheet and jQuery script wp_register_style('wpb-tabber-style', plugins_url('wpb-tabber-style.css', __FILE__)); wp_register_script('wpb-tabber-widget-js', plugins_url('wpb-tabber.js', __FILE__), array('jquery')); wp_enqueue_style('wpb-tabber-style'); wp_enqueue_script('wpb-tabber-widget-js'); // Creating tabs you will be adding you own code inside each tab ?> <ul class="tabs"> <li class="active"><a href="#tab1">Tab 1</a></li> <li><a href="#tab2">Tab 2</a></li> <li><a href="#tab3">Tab 3</a></li> </ul> <div class="tab_container"> <div id="tab1" class="tab_content"> <?php // Enter code for tab 1 here. ?> </div> <div id="tab2" class="tab_content" style="display:none;"> <?php // Enter code for tab 2 here. ?> </div> <div id="tab3" class="tab_content" style="display:none;"> <?php // Enter code for tab 3 here. ?> </div> </div> <div class="tab-clear"></div> <?php } extract($args, EXTR_SKIP); // pre-widget code from theme echo $before_widget; $tabs = wpb_tabber(); // output tabs HTML echo $tabs; // post-widget code from theme echo $after_widget; } } // registering and loading widget add_action( 'widgets_init', create_function('','return register_widget("WPBTabberWidget");') ); ?>
Yukarıdaki kodda, önce bir eklenti oluşturduk ve daha sonra bu eklentinin içinde bir widget oluşturduk. Widget çıktısı bölümüne komut dosyaları ve stil sayfası ekledik ve ardından sekmelerimiz için HTML çıktısı oluşturduk. Son olarak widget’ı kaydettik. Unutmayın, her sekmede görüntülemek istediğiniz içeriği eklemeniz gerekir.
Sekmelerimiz için gerekli PHP ve HTML kodunu içeren widget’ı oluşturduğumuza göre, bir sonraki adım bunları sekme kabında sekmeler olarak görüntülemek için jQuery eklemektir. Bunu yapmak için bu kodu kopyalayıp wp-tabber.js
dosyasına yapıştırmanız gerekir.
(function($) { $(".tab_content").hide(); $("ul.tabs li:first").addClass("active").show(); $(".tab_content:first").show(); $("ul.tabs li").click(function() { $("ul.tabs li").removeClass("active"); $(this).addClass("active"); $(".tab_content").hide(); var activeTab = $(this).find("a").attr("href"); //$(activeTab).fadeIn(); if ($.browser.msie) {$(activeTab).show();} else {$(activeTab).fadeIn();} return false; }); })(jQuery);
Artık widget’ımız jQuery ile hazır, son adım sekmelere stil eklemek. Kopyalayıp wpb-tabber-style.css
dosyasına yapıştırabileceğiniz örnek bir stil sayfası oluşturduk:
ul.tabs { position: relative; z-index: 1000; float: left; border-left: 1px solid #C3D4EA; } ul.tabs li { position: relative; overflow: hidden; height: 26px; float: left; margin: 0; padding: 0; line-height: 26px; background-color: #99B2B7; border: 1px solid #C3D4EA; border-left: none; } ul.tabs li a{ display: block; padding: 0 10px; outline: none; text-decoration: none; } html ul.tabs li.active, html ul.tabs li.active a:hover { background-color: #D5DED9; border-bottom: 1px solid #D5DED9; } .widget-area .widget .tabs a { color: #FFFFFF; } .tab_container { position: relative; top: -1px; z-index: 999; width: 100%; float: left; font-size: 11px; background-color: #D5DED9; border: 1px solid #C3D4EA; } .tab_content { padding: 7px 11px 11px 11px; line-height: 1.5; } .tab_content ul { margin: 0; padding: 0; list-style: none; } .tab_content li { margin: 3px 0; } .tab-clear { clear:both; }
Hepsi bu kadar. Şimdi wpbeginner-tabber-widget
klasörünü WordPress sitenizin
/wp-content/plugins/
dizinine FTP aracılığıyla yükleyin. Alternatif olarak, klasörü bir zip arşivine de ekleyebilir ve WordPress yönetici alanınızda Eklentiler ” Yeni Ekle bölümüne gidebilirsiniz. Eklentiyi yüklemek için yükleme sekmesine tıklayın. Eklenti etkinleştirildikten sonra, Görünüm ” Widget’lar bölümüne gidin, WPBeginner Tabber Widget’ını kenar çubuğunuza sürükleyip bırakın ve hepsi bu kadar.
Umarız bu eğitim WordPress siteniz için bir jQuery tabber oluşturmanıza yardımcı olmuştur. Sorularınız ve geri bildirimleriniz için aşağıya yorum bırakabilir veya Twitter ya da Google+ üzerinden bize katılabilirsiniz.
Nitish Chauhan
Hi,
My plugin is activated but in the widget section it show “There are no options for this widget.” message.please tell me how to activate all the function and i want to create plugin like
“jQuery(document).ready(function() {
var wrapper = jQuery(“.input_fields_wrap”); //Fields wrapper
var add_button = jQuery(“.add_field_button”); //Add button ID
//initlal text box count
jQuery(add_button).click(function(e){ //on add input button click
e.preventDefault();
//max input box allowed
//text box increment
jQuery(wrapper).prepend(‘×’); //add input box
jQuery(‘.input_fields_wrap’).sortable();
jQuery(‘.input_fields_wrap’).disableSelection();
});
jQuery(wrapper).on(“click”,”.remove_field”, function(e){ //user click on remove text
e.preventDefault(); jQuery(this).parent(‘div’).remove();
});
});”
my code of java script .please suggest if you have any solution.
Thanks
Nabam Rikam
I have inserted the plugins in the sidebar, but when i try to click it says there is no option for this plugin. And after we browse it in website, we see three blank tbs. Guide me here a little bro.
goutham
Iam not gettng tabs r widgets in my site.i have copied on pasted same code.It is not working.
Kunle
i want to place the plugin just created in a place in my page, and not in the side bars or footer.
how do i do that, to place it anywhere in my web page
Zadius
This is the second tutorial I have tried and for some reason the plugin file does not show up under the plugin directory on my site. I upload the file directly using FTP but when I log into my wordpress admin area nothing appears under the plugin’s tab. Please advise. Thank you.
Update: I zipped the file and uploaded it via the wordpress plugin interface. The file does not appear in my plugin’s folder on my FTP interface so I have zero clue where it show’s up. But I got it installed so thanks!
John
Thank you for the tutorial. However, I noticed that the title is missing when I add the widget to the widget area. How can I add the title space to input a title?
Drazen
Hey
Thanks for this. I was just wondering, how to add option, so that when I am viewing widget, I can simply paste links in it, in each tab?
For example:
Tab 1 (option to rename it in widget options)
– Text box below it in widget options(so that I can add text, links etc.)
Tab 2 (option to rename it in widget options)
– Text box below it in widget options(so that I can add text, links etc.)
Tab 3 (option to rename it in widget options)
– Text box below it in widget options(so that I can add text, links etc.)
Thanks
Gavin Wilshen
Brilliant tutorial. Thanks guys!
Grant
It keeps giving me this error:
Plugin could not be activated because it triggered a fatal error.
Parse error: syntax error, unexpected T_NS_SEPARATOR, expecting T_STRING in /home/content/11/10826211/html/wp-content/plugins/wpbeginner-tabber-widget/wpb-tabber-widget.php on line 16
WPBeginner Support
Grant, we just checked the code again. The plugin activated just fine on our end.
Yönetici
Rahul
Thanks man you’re a genius. I was just going to buy a premium plugin from codecanyon and then found this guide.
Jonathan
Why is it that when I install this plugin it is saying it needs to be updated, and the update is from a another developer & is over 3 years old?
WPBeginner Support
It should not do that. If you have changed the plugin name and it matches another plugin then WordPress would confuse it with the other plugin.
Yönetici
Jonathan
I didn’t change anything; I only did just what you showed above.
Jonathan
This is the plugin that WordPress thinks it is & is trying to update it to. http://wordpress.org/plugins/tabber-widget/
I just updated the plugin to version 2.0 & that (for whatever reason) got it to stop asking to update it to the other plugin. I’d try renaming & changing the other plugin info, but that was the only thing that seemed to work.
WPBeginner Support
The only reason we can think of is that you probably named the plugin file or folder to tabber-widget.php instead of wpb-tabber-widget.php which caused WordPress to confuse the plugin with this other one. The version trick is ok too until this other plugin releases 2.0+ so its bed to clear the confusion.
WPBeginner Support
We were unable to reproduce this. Do you have access to another WordPress site where you can try this, just to test that there is nothing wrong on your end?
Doris
This kind of defeats the purpose of WordPress being dynamic, doesn’t it? Hard coding text into a widget? Is there a way to pull dynamic content from the database? Us noobs don’t have much coding experience ya know…One would think there is a plugin that would do this…
WPBeginner Support
This tutorial is aimed at intermediate level users and the goal here is to show them how to create a tabber widget. For beginner level users, there are several built in template tags that can dynamically generate content inside each tab. For example:
Display a list of your WordPress pages:
1-click Use in WordPress
Show Random Posts:
1-click Use in WordPress
Show recent comments:
1-click Use in WordPress
And many more.
Yönetici
manoj sakhwar
Nice article. thanks…
Grant
What I don’t understand is where to paste the code. What type of document do I put the code in? (I have mac).
WPBeginner Support
Use TextEdit to create these files.
Yönetici
Keith Davis
Love this one guys.
Always looking for ways to make better use of limited real estate.
Jim Davis
Installed the files and activated the widget. It displays as expected, however, clicking the Tab 2 and Tab 3 tabs does not change the content. The content remains as the content under Tab 1. Have I missed something? See my test site at http://jimdavis.org/blog/
Jim
WPBeginner Support
Jim you have not missed any thing. This is an example widget and you can edit it. Enter your own code and content inside each tab by editing the plugin file wpb-tabber-widget.php
Yönetici