如何在param视觉作曲家中使用fontawesome?

时间:2017-09-27 02:35:30

标签: font-awesome visual-composer

I code element with visual composer. I want to use fontawesome in element. 
Code here show list font-awesome in param visual composer
<code>
array(
   'type' => 'iconpicker',
   'heading'    => esc_html__('Fontawesome', 'interior'),
   'param_name' => 'fontawesome_icon',
   'settings'   => array(
      'type' => 'fontawesome'
    ),
    'description' => esc_html__( 'Fontawesome list. Pickup your choice.', 'interior'
   ),
   'dependency'  => array(
   'element' => 'icon_type',
   'value'   => array( 'fontawesome-icon' )
)
</code>

我在元素中显示了列表图标,但我选择了它没有保存,我不知道获取值font-awsome显示html。  帮帮我!!!

1 个答案:

答案 0 :(得分:0)

  

我只为Font Awesome Icon制作了一个代码......你可以试试这个   下面的代码。它经过测试,绝对有效。我在这里用过   标题中的“Facebook”...如果您发现任何问题,请通过评论告诉我   在代码中或有任何麻烦。

<?php

if ( ! defined( 'ABSPATH' ) ) exit;

if( !class_exists( 'RN_FA_Icon_list' ) ) {

    class RN_FA_Icon_list {

        private $shortcode;

        function __construct() {

            /* shortcode base */
            $this->shortcode = 'rn_fa_icon_list';

            add_action( 'init', array( $this, 'rn_map_shortcode' ) );
            add_shortcode( $this->shortcode, array( $this, 'rn_create_shortcode' ) );   

        }

        function rn_map_shortcode( $atts, $content = NULL ) {

            if( function_exists( 'vc_map' ) ) {

                vc_map(
                    array(
                        'name'            => esc_html__( 'Font Awesome Icon', 'rn_shortcodes' ),
                        //'icon'            => RN_SHORTCODES_URL . '/admin/img/vc_icons/fancy-list.png',
                        'base'            => $this->shortcode,
                        'category'        => 'Structual',
                        'class'           => 'rn-vc-icon-module rn-structual-module',
                        'content_element' => true,
                        'params'          => array(

                            array(
                                'type'              => 'textfield',
                                'heading'           => esc_html__( 'Description', 'rn_shortcodes' ),
                                'description'       => esc_html__( 'Only for internal use. This adds a label to Visual Composer for an easier element identification.', 'rn_shortcodes' ),
                                'param_name'        => 'list_description',
                                'admin_label'       => true,
                                'group'             => 'General'
                            ),
                            array(
                                'type' => 'iconpicker',
                                'heading' => __( 'Icon', 'js_composer' ),
                                'param_name' => 'icon_fontawesome',
                                'value' => 'fa fa-adjust',
                                'group' => 'General',
                                'settings' => array(
                                    'emptyIcon' => false,
                                    'type' => 'fontawesome',
                                    'iconsPerPage' => 4000,
                                ),
                                'dependency' => array(
                                    'element' => 'type',
                                    'value' => 'fontawesome',
                                ),
                                'description' => __( 'Select icon from library.', 'js_composer' ),
                            ),
                            array(
                                'type'          => 'css_editor',
                                'param_name'    => 'css',
                                'group'         => esc_html__( 'Design Options', 'rn_shortcodes' ),
                            ),



                        )                        

                    )

                ); /* end mapping */

            } 

        }

        function rn_create_shortcode( $atts, $content = NULL ) {

            extract( shortcode_atts( array (
                'icon_fontawesome'  => '',
                'css'              => ''
            ), $atts ) ); 


            /* extract list items */
            if( function_exists('vc_param_group_parse_atts') && !empty( $values ) ) {

                $values = vc_param_group_parse_atts( $values );    

            }

            /* unique listz ID */
            $id = uniqid("rn_fa_");

            $output = '';

                $output .= '<div id="' . esc_attr( $id ) . '">';

                                $output .= '<a href="#"><i class="' . $icon_fontawesome . '"></i> Facebook</a>';                               
                $output .= '</div>';


            return '<div class="wpb_content_element ' . apply_filters( VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, vc_shortcode_custom_css_class( $css, ' ' ), $this->shortcode, $atts ) . '">' . $output . '</div>'; 

        }

    }

}

new RN_FA_Icon_list;        
?>