2016-09-21 28 views
9

Tôi chỉ muốn thêm một nút shortcode vào thanh menu chủ đề wordpress để xử lý chức năng bootstrap modal view.Mã vạch tùy chỉnh trong Thanh điều hướng Wordpress

Tôi đã thử plugin 'Shortcodes in Menus' nhưng plugin không hoạt động. Tôi không thể tìm thấy plugin thay thế cho shortcodes trong menu vì vậy tôi đã cài đặt plugin 'Bootstrap 3 Shortcodes', nó tạo nút và chế độ xem nội dung như tôi muốn. Nhưng tôi không thể thêm shortcode vào thanh thực đơn của mình.

Tôi đã cố gắng tìm một số câu trả lời về vấn đề của mình. Nhưng tiếc là không thể.

Thats shortcode phương thức của tôi được tạo bởi Bootstrap 3 Shortcodes plugin;

[modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"] 
<p style="text-align: center;"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/08/vetmapp-logo-withtext.png" alt="Logo" width="200" height="300" /></p> 

<h4 style="text-align: center;">VetMapp'i cihazınıza göre aşağıdaki platformlardan cep telefonunuza ücretsiz olarak indirebilir ve hemen kullanmaya başlayabilirsiniz.</h4> 
<p style="text-align: center;"> 
    <a href="https://itunes.apple.com/tr/app/vetmapp-acil-veteriner-klinikleri/id969463902?mt=8" target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xapple-store.png.pagespeed.ic.z0I7tHw8h6.png" alt="App Store'dan indir!" width="135" height="40" /></a> 
    <a href="https://play.google.com/store/apps/details?id=com.esmobileinc.vetmapp&amp;hl=tr" 
    target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xgoogle_play.png.pagespeed.ic.31v8JAmtbI.png" alt="Google Play'den indir!" width="135" height="40" /></a> 
    <a href="https://www.microsoft.com/tr-tr/store/p/vetmapp/9nblggh4s3qm" 
    target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xwindows_phone.png.pagespeed.ic.xvoiaCiuDP.png" alt="Windows Store'dan indir!" width="135" height="40" /></a> 
</p> 
[modal-footer] [button type="primary" style="border: solid 1px #18bda3; background-color: #fff; color: #18bda3;" link="#" data="dismiss,modal"]Kapat[/button] [/modal-footer] [/modal] 

Tôi chỉ muốn sử dụng [modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"] vào WP Navigation Bar.

Tôi làm cách nào để thực hiện việc này? Tôi có thể viết một hàm trong functions.php cho điều này, hoặc thử một cách tiếp cận khác?

Cảm ơn bạn ...

+0

Bạn muốn kiểu từ nút shortcode đến các mục menu? –

+0

Tôi không quan tâm đến phong cách ngay bây giờ. Tôi chỉ muốn kích hoạt chế độ xem bootstrap thông qua mục trình đơn thanh. – emresancaktar

+0

Bạn có muốn chia sẻ cũng đánh dấu của bạn mà bạn gói với shortcode của bạn '[modal text =" Download Now "title =" Veteriner Hekimlere Ulaşmanın En Kolay Yolu "xclass =" btn btn-primary btn-lg "]'? – mlbd

Trả lời

0
function my_function_name($item_output) { 
    if(YOUR LOGIC FOR WHEN YOU WANT IT) 
     $item_output .= do_shortcode('[modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"]'); 

    return $item_output; 
} 
add_filter('wp_nav_menu', 'my_function_name', 10, 1); 
+0

hi, nó không hoạt động. Cảnh báo: Thiếu đối số 2 cho my_function_name(), được gọi trong /opt/bitnami/apps/wordpress/htdocs/wp-includes/plugin.php trên dòng 235 và được định nghĩa trong/opt/bitnami/apps/wordpress/htdocs/wp-content /themes/frexy/functions.php trên dòng 89 – emresancaktar

+0

Tôi đã chỉnh sửa câu trả lời, hãy thử phiên bản mã đó. – Spartacus

+0

vẫn là lỗi tương tự – emresancaktar

0

Tôi không chắc chắn những gì là kết quả cung cấp shortcode này. Trong ý tưởng của tôi, bạn có thể thấy một nút khi bạn nhấp vào sau đó hiển thị cửa sổ mô hình và bạn muốn thực hiện nút trên menu nav. Tôi đã không kiểm tra các mã này nhưng bạn có thể thử nếu điều này hữu ích cho bạn.

Trước tiên hãy tạo tệp php mới và đặt tất cả nội dung shortcode vào đó. Ví dụ: my-modal.php

//my-modal.php 
[modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"] 
<p style="text-align: center;"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/08/vetmapp-logo-withtext.png" alt="Logo" width="200" height="300" /></p> 

<h4 style="text-align: center;">VetMapp'i cihazınıza göre aşağıdaki platformlardan cep telefonunuza ücretsiz olarak indirebilir ve hemen kullanmaya başlayabilirsiniz.</h4> 
<p style="text-align: center;"> 
    <a href="https://itunes.apple.com/tr/app/vetmapp-acil-veteriner-klinikleri/id969463902?mt=8" target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xapple-store.png.pagespeed.ic.z0I7tHw8h6.png" alt="App Store'dan indir!" width="135" height="40" /></a> 
    <a href="https://play.google.com/store/apps/details?id=com.esmobileinc.vetmapp&amp;hl=tr" 
    target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xgoogle_play.png.pagespeed.ic.31v8JAmtbI.png" alt="Google Play'den indir!" width="135" height="40" /></a> 
    <a href="https://www.microsoft.com/tr-tr/store/p/vetmapp/9nblggh4s3qm" 
    target="_blank"><img src="http://web-test.vetmapp.com/wp-content/uploads/sites/2/2016/09/180x40xwindows_phone.png.pagespeed.ic.xvoiaCiuDP.png" alt="Windows Store'dan indir!" width="135" height="40" /></a> 
</p> 
[modal-footer] [button type="primary" style="border: solid 1px #18bda3; background-color: #fff; color: #18bda3;" link="#" data="dismiss,modal"]Kapat[/button] [/modal-footer] [/modal] 

Trong chủ đề của bạn function.php tạo một chức năng mới và bao gồm tệp này.

function modal_shortcode_content(){ 
    ob_start(); 
    include "my-modal.php"; 
    $shortcode_content = ob_get_content(); 
    ob_clean(); 
    return do_shortcode($shortcode_content); 
} 

Thêm đầu ra shortcode trong nội dung điều hướng. Tôi không chắc chắn tôi nghĩ rằng shortcode cho nút chỉ và phần khác là ẩn và có thể nhìn thấy khi bạn bấm vào nút.

function navigation_add_button_menu($item_output) { 
// apply any logic here... 
     $item_output .= modal_shortcode_content(); 

    return $item_output; 
} 

add_filter('wp_nav_menu', 'navigation_add_button_menu', 10, 1); 
2

Nếu bạn chia sẻ shortcode của bạn tạo đánh dấu hoặc đánh dấu bạn muốn bọc bằng shortcode của bạn, điều tốt nhất là người khác hiểu rõ.

nào thử loại này nó sẽ làm việc trơn tru (Tested)

add_filter('wp_nav_menu_items', 'wpse3967385_custom_menu_link', 10, 2); 

function wpse3967385_custom_menu_link($items, $args) { 
    if ($args->theme_location == 'primary_nav') { 
     $items .= '<li class="your-custom-item">' . do_shortcode('[modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"]') . '</li>'; 
    } 
    return $items; 
} 

Hãy để thay đổi vị trí menu chủ đề của bạn.

Hy vọng điều đó có ý nghĩa.

0

Mã của bạn khá lộn xộn, tôi không thể cung cấp cho bạn tập lệnh làm việc vì ngôn ngữ khác mà tôi không hiểu và tôi không muốn làm điều gì đó lộn xộn.

Dù sao, hãy thử điều này. Đây là một logic đơn giản để có được những gì bạn muốn, thông qua shortcodes. Tôi sử dụng nó trang web của tôi.

function html_code() { 
    if(//Trigger Event Goes Here) { 
     // Use echo's to output the HTML of the window 
    } 
} 

function modal_window() { 
    html_code(); 

    return ob_get_clean(); 
} 

add_shortcode('modal_window'); 
Các vấn đề liên quan