LINK with class, fontawesome icon
Use like this:
[kib_icon_link url=”http://www.go.somewhere” icon=”credit-card” size=”big”]Your content[another_shortcode_if_you_want] [/kib_icon_link]
// Add Shortcode
function kib_icon_linkshortcode( $atts , $content = null ) {
// Code
// Attributes
extract( shortcode_atts(
array(
'size' => 'medium',
'icon' => 'none',
'url' => '',
'class' => '',
), $atts )
);
$valid_sizes = array('small', 'medium', 'big');
$url = esc_url( $atts['url'] );
$class = sanitize_html_class( $atts['class'], '' );
$icon = sanitize_html_class( $atts['icon'], 'none' );
$size = $the_icon = '';
if( in_array( $attrs['size'], $valid_sizes) ) $size = ' ' . $attrs['size'];
if( $icon != 'none' ) $the_icon = '<i class="fa fa-'.$icon.'"></i>';
if($class != '') $class = ' ' . $class; // adds a space before the extra classes
if( $atts['url'] == '' ) {
return '<span class="kib-icon-link' . $size . $class . '">'. $the_icon . ' ' . do_shortcode( $content ) . '</span>' ;
}
return '<a href="' . $url . '" class="kib-icon-link ' . $class . '">' . $the_icon . ' ' . do_shortcode( $content ) . '</a>' ;
}
add_shortcode( 'kib_icon_link', 'kib_icon_linkshortcode' );