2015-08-14 86 views
1

我想用默認屬性做短代碼。WordPress的 - 試圖創建短代碼

這裏是我的代碼:

function custom_list_item_shortcode($attributes, $content = null) { 

extract(shortcode_atts(array(
    'icon' => '', 
    'color' => '' 
), $attributes)); 


$html = '<div class="listbox-item">'; 

//--If there is an icon show icon 
if($icon != ''){ 
    $html .= '<div class="listbox-icon"><i class="fa fa-'.$icon.' icon-'.$color.'"></i></div>'; 
} 

$html .= '<div class="listbox-content">'.$content.'</div>'; 
$html .= '</div>'; 
return $html; 
} 
add_shortcode('icon-list', 'custom_list_item_shortcode'); 

我想實現的是,有些事情(例如字體大小等)默認和類不螢火顯示,但是當有人想要改變字體大小,他們只能鍵入

[icon-list icon="globe" size="22"][/icon-list] 

任何想法?

+0

所以,你需要知道如何默認設置的簡?如果是這樣的話:https://codex.wordpress.org/Shortcode_API – Berriel

+0

好的,我已經完成了所有工作,因爲它在文檔中,但仍然無法正常工作。我絕望 – b0z3nka

+0

添加''size'=>'22'並實現'size'屬性。什麼不工作? – Berriel

回答

0

假設你想size擁有的22默認值:

function custom_list_item_shortcode($attributes, $content = null) { 

    extract(shortcode_atts(array(
     'icon' => '', 
     'color' => '', 
     'size' => '22' 
), $attributes));  

    $html = '<div class="listbox-item" style="font-size:'.$size.'px">'; 

    //--If there is an icon show icon 
    if($icon != ''){ 
     $html .= '<div class="listbox-icon"><i class="fa fa-'.$icon.' icon-'.$color.'"></i></div>'; 
    } 

    $html .= '<div class="listbox-content">'.$content.'</div>'; 
    $html .= '</div>'; 
    return $html; 
} 

add_shortcode('icon-list', 'custom_list_item_shortcode'); 

閱讀:https://codex.wordpress.org/Shortcode_API

+0

對不起,即時通訊社區。 您的代碼按預期工作。謝謝你,先生+++ – b0z3nka