Neler yeni

Hoşgeldin Ziyaretçi

Kayıt olarak forumumuzdan dosya indirebilir,bilgi sahibi olabilir,daha iyi bir şekilde yararlanabilirsin.

Şimdi kayıt ol

Belirli WordPress Menülerine Özel Öğeler Nasıl Eklenir

wordpresstr

Administrator
Yönetici
89
13 Kas 2020
Menülerin görsel arayüzünde sınırlı olan bir şey, yalnızca bağlantılar (sayfalar, kategori veya özel bağlantılar) ekleyebilmenizdir. WordPress menülerinize özel bir öğe eklemek isterseniz ne olur? Belki bir arama çubuğu eklemek veya giriş / çıkış bağlantısı, bugünün tarihi veya bir WordPress menüsünde başka bir şey eklemek istersiniz. Görsel arayüz olmadığı için bunun mümkün olmadığı anlamına gelmez. Bu makalede, tüm veya belirli WordPress menülerine özel öğeler eklemek için wp_nav_menu_items kancasını nasıl kullanabileceğinizi göstereceğiz .
Not: Bu eğitim, WordPress tema geliştiricileri için hazırlanmıştır, bu nedenle temel html / css'yi bilmeniz ve WordPress temalarının nasıl çalıştığını iyi anlamanız beklenir.
Açıkçası, daha fazla ilerlemeden önce temalarınızda özel menüyü etkinleştirmeniz gerekir.
Temel bilgilerle başlayalım. Wp_nav_menu_items kancasına kendi filtremizi eklememiz gerekiyor . Bir örnek şuna benzer:

1
2
3
4
5
6
7
add_filter( 'wp_nav_menu_items', 'your_custom_menu_item', 10, 2 );
function your_custom_menu_item ( $items, $args ) {
if (is_single() && $args->theme_location == 'primary') {
$items .= '<li>Show whatever</li>';
}
return $items;
}

Şimdi gördüğünüz gibi, koşullu ifadeleri theme_location argümanıyla birlikte kullanabilirsiniz. Bu, istediğiniz herhangi bir koşula sahip belirli bir menü konumunu hedeflemenize olanak tanır. Koşullu ifadeyi istemiyorsanız, onu kullanmak zorunda değilsiniz. Sadece belirli bir menü konumuna ekleyin veya tam tersini yapın.

Belirli bir WordPress Menüsüne Giriş / Çıkış Bağlantıları Ekleme
Kullanıcılarınıza oturum açma / kapatma yeteneği vermek istiyorsanız, bağlantıları ekleyebileceğiniz bir yer özel menünüzdedir. Aşağıdaki kod parçası, kullanıcılarınızın oturum açma / kapatma bağlantılarını menü konumunda uygun şekilde gösterecektir: birincil. İsterseniz menü konumunu değiştirebilirsiniz.

1
2
3
4
5
6
7
8
9
10
add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
if (is_user_logged_in() && $args->theme_location == 'primary') {
$items .= '<li><a href="'. wp_logout_url() .'">Log Out</a></li>';
}
elseif (!is_user_logged_in() && $args->theme_location == 'primary') {
$items .= '<li><a href="'. site_url('wp-login.php') .'">Log In</a></li>';
}
return $items;
}
Belirli Bir Menüye Arama Çubuğu Ekleme

Belirli bir menüye bir arama çubuğu eklemek mi istiyorsunuz? Başka yere bakmanıza gerek yok. Aşağıdaki pasajı yapıştırarak bunu yapabilirsiniz:

1
2
3
4
5
6
7
add_filter('wp_nav_menu_items','add_search_box_to_menu', 10, 2);
function add_search_box_to_menu( $items, $args ) {
if( $args->theme_location == 'primary' )
return $items."<li class='menu-header-search'><form action='http://example.com/' id='searchform' method='get'><input type='text' name='s' id='s' placeholder='Search'></form></li>";

return $items;
}

Bugünün Tarihini Belirli Bir WordPress Menüsüne Eklemek
Aşağıdaki snippet, bugünün tarihini WordPress menünüze ekleyecektir.

1
2
3
4
5
6
7
8
9
10
add_filter('wp_nav_menu_items','add_todaysdate_in_menu', 10, 2);
function add_todaysdate_in_menu( $items, $args ) {
if( $args->theme_location == 'primary') {

$todaysdate = date('l jS F Y');
$items .= '<li>' . $todaysdate . '</li>';

}
return $items;
}
 
Üst