2017-01-28 9 views
0

Visual Composerに新しいフォントアイコンを追加しようとしていますが、名前がドロップダウンに表示されていますが、実際のフォントアイコンのドロップダウンはロードされていません。下のコードで何が欠けているのか間違っているのか分かりません。Visual Composerに新しいアイコンを追加する

ご協力いただければ幸いです。

add_filter('init....) 

へ:

add_action('vc_after_init',....) 

更新:あなたは正しい、ほとんどのことを行うように見えます

// Add new custom font to Font Family selection in icon box module 
function reach_add_new_icon_set_to_iconbox() { 
    $param = WPBMap::getParam('vc_icon', 'type'); 
    $param['value'][__('Reach Icons', 'reach-rdp')] = 'reach_icons'; 
    vc_update_shortcode_param('vc_icon', $param); 
} 
add_filter('init', 'reach_add_new_icon_set_to_iconbox', 40); 

function reach_add_font_picker() { 
    vc_add_param('vc_icon', array(
     'type'  => 'iconpicker', 
     'heading' => esc_html__('Icon', 'reach-rdp'), 
     'param_name' => 'icons_reach_icons', 
     'settings' => array(
      'emptyIcon' => false, 
      'type'   => 'reach_icons', 
      'iconsPerPage' => 20, 
), 
     'dependency' => array(
     'element' => 'icon_type', 
     'value'  => 'reach_icons', 
), 
    'group' => esc_html__('Icon', 'reach-rdp'), 
) 
); 
} 
add_filter('vc_after_init', 'reach_add_font_picker', 40); 

function reach_vc_iconpicker_type_reach_icons($icons) { 
// Add custom icons to array 
    $icons['Reach Icons'] = array(
    array("icon-arrow-left" => "Arrow Left"), 
); 

// Return icons 
    return $icons; 
} 
add_filter('vc_iconpicker-type-reach_icons', 'reach_vc_iconpicker_type_reach_icons'); 


/** 
* Register Backend and Frontend CSS Styles 
*/ 
add_action('vc_base_register_front_css', 'leadinjection_vc_iconpicker_base_register_css'); 
add_action('vc_base_register_admin_css', 'leadinjection_vc_iconpicker_base_register_css'); 
function leadinjection_vc_iconpicker_base_register_css(){ 
    wp_register_style('reach_icons', get_stylesheet_directory_uri() . '/assets/css/reach-font.css'); 
} 

/** 
* Enqueue Backend and Frontend CSS Styles 
*/ 
add_action('vc_backend_editor_enqueue_js_css', 'leadinjection_vc_iconpicker_editor_jscss'); 
add_action('vc_frontend_editor_enqueue_js_css', 'leadinjection_vc_iconpicker_editor_jscss'); 
function leadinjection_vc_iconpicker_editor_jscss(){ 
    wp_enqueue_style('reach_icons'); 
} 

答えて

0

、あなただけ交換する必要が をまた、あなたはで間違ったのparamの名前を持っています依存。 それは次のようになります。

'element' => 'type', 

そして、私はまた、体重を使用することをお勧めしますより良いソートするために属性:

function reach_add_new_icon_set_to_iconbox() { 
    $param = WPBMap::getParam('vc_icon', 'type'); 
    $param['value'][__('Reach Icons', 'reach-rdp')] = 'reach_icons'; 
    $param['weight'] = 90; 
    vc_update_shortcode_param('vc_icon', $param); 
} 

function reach_add_font_picker() { 
    vc_add_param('vc_icon', array(
      'type'  => 'iconpicker', 
      'heading' => esc_html__('Icon', 'reach-rdp'), 
      'param_name' => 'icons_reach_icons', 
      'settings' => array(
       'emptyIcon' => false, 
       'type'   => 'reach_icons', 
       'iconsPerPage' => 20, 
      ), 
      'weight' => 80, 
      'dependency' => array(
       'element' => 'type', 
       'value'  => 'reach_icons', 
      ), 
     ) 
    ); 
} 
+0

は悲しそうに違いはありませんでした。これは本当に混乱しています! –

+0

@HuwRowlands更新されたコメントを参照してください。 –

+0

悲しいことに、まだ運がありません。 :(これは奇妙です。私がReach Iconsを選択すると、選択するアイコンを表示するドロップダウンが消えますが、デフォルトのインストールされているアイコンでうまく動作します。 –

関連する問題