Shortcode personalizado no Wordpress Nav Bar

9

Eu só quero adicionar um botão de código de acesso à minha barra de menus do tema wordpress para lidar com a função bootstrap modal view .

Eu tentei o plugin ' Shortcodes in Menus ', mas não funciona. Não encontrei o plug-in alternativo para códigos de acesso no menu, por isso, instalei o plug-in ' Bootstrap 3 Shortcodes ', criei o botão e o conteúdo de exibição restrita conforme desejado. Mas eu não pude adicionar shortcode à minha barra de menu.

Eu tentei encontrar alguma resposta sobre o meu problema. Mas infelizmente não conseguiu.

Isso é o meu shortcode modal gerado pelo plugin Bootstrap 3 Shortcodes ;

[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]

Eu só quero usar [modal text="Download Now" title="Veteriner Hekimlere Ulaşmanın En Kolay Yolu" xclass="btn btn-primary btn-lg"] na Barra de navegação do WP.

Como posso fazer isso? Eu posso escrever uma função em functions.php para isso, ou tentar alguma outra abordagem?

Obrigado ...

    
por emresancaktar 21.09.2016 в 11:26
fonte

4 respostas

2

Se você compartilhar seu código de acesso, gerará uma marcação ou a marcação que deseja incluir no seu código de acesso, o que seria melhor para os outros entenderem claramente.

de qualquer forma, tente isto funcionará sem problemas (testado)

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;
}

Sinta-se à vontade para alterar a localização do tema do menu.

Espero que faça sentido.

    
por mlbd 07.10.2016 / 10:24
fonte
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);
    
por Aschab 02.10.2016 / 03:50
fonte
0

Não sei ao certo qual é o resultado que fornece este shortcode. Na minha ideia, você pode ver um botão quando clica em seguida, mostra a janela do modelo e deseja implementar o botão no menu de navegação. Eu não testei esse código, mas você pode tentar se isso for útil para você.

Primeiro, crie um novo arquivo php e coloque todo o conteúdo shortcode nele. Ex. 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]

No seu tema function.php, crie uma nova função e inclua este arquivo.

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

Adicione saída de shortcode no conteúdo de navegação. Não tenho certeza se acho que o shortcode dá apenas o botão e a outra parte é oculta e visível quando você clica no botão.

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);
    
por user5200704 06.10.2016 / 16:13
fonte
0

Seu código é muito confuso, não posso dar a você um roteiro de trabalho, pois está em outro idioma que não entendo e não quero estragar algo.

De qualquer forma, tente isso. Esta é uma lógica simples para obter o que você deseja, através de códigos de acesso. Eu uso meu site.

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' );
    
por Ferrius 07.10.2016 / 15:22
fonte