Files
socialiconeco/lib/widget.php

93 lines
2.8 KiB
PHP
Raw Permalink Normal View History

<?php
global $sie_social_accounts;
extract($args);
$sie_title = empty($instance['title']) ? 'Follow Us' : apply_filters('widget_title', $instance['title']);
$sie_icons = $instance['icons'];
$sie_labels = $instance['labels'];
$sie_show_title = $instance['show_title'];
echo $before_widget;
if($sie_show_title == '') {
echo $before_title;
echo $sie_title;
echo $after_title;
}
if($sie_labels == 'show') { $ul_class = 'show-labels '; }
else { $ul_class = ''; }
$ul_class .= 'icons-'.$sie_icons;
?>
<?php echo apply_filters('socialiconeco_opening_tag', '<ul class="'.$ul_class.'">'); ?>
<?php foreach($sie_social_accounts as $sie_title => $id) : ?>
<?php if($instance[$id] != '' && $instance[$id] != 'http://') :
global $sie_data;
global $sie_icon_output;
$imgsize = '';
$sie_data['id'] = $id;
$sie_data['url'] = $instance[$id];
$sie_custom_sizes = array('custom_small','custom_medium','custom_large');
if (in_array($sie_icons, $sie_custom_sizes)) {
$size = str_replace("custom_","",$sie_icons);
$sie_icon_path = get_stylesheet_directory() .'/social_icons/'.$size.'/'.$id.'.{gif,jpg,jpeg,png}';
}
else {
$sie_abs_path = str_replace('lib/', '', plugin_dir_path( __FILE__ ));
/* Fix for Windows/XAMPP where the slash goes the wrong way.
Thanks to VictoriousK */
$sie_abs_path = str_replace('\\', '/', $sie_abs_path);
$sie_icon_path = $sie_abs_path . 'icons/'.$sie_icons.'/'.$id.'.{gif,jpg,jpeg,png}';
if($sie_icons == 'large') { $imgsize = 'height="64" width="64"'; }
elseif($sie_icons == 'medium') { $imgsize = 'height="32" width="32"'; }
elseif($sie_icons == 'small') { $imgsize = 'height="16" width="16"'; }
}
$result = glob( $sie_icon_path, GLOB_BRACE );
if($result) {
if (in_array($sie_icons, $sie_custom_sizes)) {
$sie_path = explode('themes', $result[0]);
$sie_icon = site_url().'/wp-content/themes'.$sie_path[1];
}
else {
$sie_path = explode('plugins', $result[0]);
$sie_icon = plugins_url().''.$sie_path[1];
}
}
elseif( $sie_labels != 'show' && $sie_icons != 'small' ) {
$sie_icon = SIEC_URL.'icons/'.$sie_icons.'/_unknown.jpg';
}
else {
$sie_icon = '';
}
if ( $sie_icon ) { $sie_data['image'] = '<img class="site-icon" src="'.$sie_icon.'" alt="'.$sie_title.'" title="'.$sie_title.'" '.$imgsize.' />'; }
else { $sie_data['image'] = ''; }
if($sie_labels != 'show') { $sie_data['title'] = ''; }
else { $sie_data['title'] = '<span class="site-label">'.$sie_title.'</span>'; }
$format = '<li class="%1$s"><a href="%2$s" target="_blank">%3$s%4$s</a></li>';
$sie_icon_output = apply_filters('socialiconeco_output', $format);
echo vsprintf($sie_icon_output, $sie_data);
?>
<?php endif; ?>
<?php endforeach; ?>
<?php echo apply_filters('socialiconeco_closing_tag', '</ul>'); ?>
<?php
echo $after_widget;
?>