2012-01-11 2 views
0

Я хочу создать несколько коротких кодов, которые вам понравятся.Wordpress Shortcode

[tabs] 

[tab title="1"] 
//content goes here 
[/tab] 

[tab title="2"] 
//content2 goes here 
[/tab] 

[tab title="3"] 
//content4 goes here 
[/tab] 

[/tabs] 

ожидается выход:

<ul> 
    <li id="tab1">[tab title="1" goes here]</li> 
    <li id="tab2">[tab title="2" goes here]</li> 
    <li id="tab3">[tab title="3" goes here]</li> 
</ul> 

<ul id="tab1"> 
    <li>Content1</li> 
</ul> 

<ul id="tab2"> 
    <li>Content2</li> 
</ul> 

<ul id="tab3"> 
    <li>Content3</li> 
</ul> 

Как сделать это в WordPress?

+1

нет ничего лучше, чем чтение [официальная документация] (http: //codex.wordpress. org/Shortcode_API) – balexandre

+0

[вы понимаете, что атрибут ID должен быть уникальным] (http://www.w3.org/TR/html4/struct/global.html#h-7.5.2) также есть [WordPress] (http://wordpress.stackexchange.com/) сайт обмена стеками .. это, вероятно, должно быть опубликовано там, поскольку вы не ищете конкретной помощи для проблемы, а ищете руководство по разработке плагина wordpress. – rlemon

ответ

0
add_shortcode('external', 'externalFunction'); 
function externalFunction($atts,$content = null){ 
    echo do_shortcode('[internal]'.$content.'[/internal]'); 
} 

add_shortcode('internal','internalFunction'); 
function internalFunction($atts, $content=null) 
{ 
    extract(shortcode_atts(
     array(
      "title" => '' 
     ), $atts)); 
     /* do your stuffs here */ 
} 
0

сначала создать "закладки" Сокращенный

function tabs_shortcode($atts, $content) { 
    $atts = shortcode_atts(array(  
      'id' => ''   
      ), $atts); 

extract ($atts); // gives you the ability to use array keys as variables 

    return '<ul id="'. $id.'">'. do_shortcode($content) .'</ul>'; 

} 
add_shortcode('tabs', 'tabs_shortcode'); 

Теперь создаем "Вкладка" шорткод

function tab_shortcode($atts, $content) { 
    $atts = shortcode_atts(array(  
      'id' => ''   
      ), $atts); 

extract ($atts); // gives you the ability to use array keys as variables 

    return '<li id="'. $id.'">'. do_shortcode($content) .'</li>'; 

} 
add_shortcode('tab', 'tab_shortcode'); 

использовать его как это

[tabs id="tab"] 
    [tab id="tab1"] lorem ipsum dolor [/tab] 
    [tab id="tab2"] lorem ipsum dolor [/tab] 
    [tab id="tab3"] lorem ipsum dolor [/tab] 
[/tab]