__('Primary Sidebar', 'pilotfish'),
'id' => 'sidebar-primary',
'before_widget' => '',
'before_title' => '
',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Footer One', 'pilotfish'),
'id' => 'sidebar-footer-1',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Footer Two', 'pilotfish'),
'id' => 'sidebar-footer-2',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Footer Three', 'pilotfish'),
'id' => 'sidebar-footer-3',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Featured One', 'pilotfish'),
'id' => 'sidebar-home-1',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Featured Two', 'pilotfish'),
'id' => 'sidebar-home-2',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
register_sidebar(array(
'name' => __('Featured Three', 'pilotfish'),
'id' => 'sidebar-home-3',
'before_widget' => '',
'before_title' => '',
'after_title' => '
',
));
// Register widgets
register_widget('pilotfish_Vcard_Widget');
}
add_action('widgets_init', 'pilotfish_widgets_init');
// Example vCard widget
class pilotfish_Vcard_Widget extends WP_Widget {
function pilotfish_Vcard_Widget() {
$widget_ops = array('classname' => 'widget_pilotfish_vcard', 'description' => __('Use this widget to add a vCard', 'pilotfish'));
$this->WP_Widget('widget_pilotfish_vcard', __('pilotfish: vCard', 'pilotfish'), $widget_ops);
$this->alt_option_name = 'widget_pilotfish_vcard';
add_action('save_post', array(&$this, 'flush_widget_cache'));
add_action('deleted_post', array(&$this, 'flush_widget_cache'));
add_action('switch_theme', array(&$this, 'flush_widget_cache'));
}
function widget($args, $instance) {
$cache = wp_cache_get('widget_pilotfish_vcard', 'widget');
if (!is_array($cache)) {
$cache = array();
}
if (!isset($args['widget_id'])) {
$args['widget_id'] = null;
}
if (isset($cache[$args['widget_id']])) {
echo $cache[$args['widget_id']];
return;
}
ob_start();
extract($args, EXTR_SKIP);
$title = apply_filters('widget_title', empty($instance['title']) ? __('vCard', 'pilotfish') : $instance['title'], $instance, $this->id_base);
if (!isset($instance['street_address'])) { $instance['street_address'] = ''; }
if (!isset($instance['locality'])) { $instance['locality'] = ''; }
if (!isset($instance['region'])) { $instance['region'] = ''; }
if (!isset($instance['postal_code'])) { $instance['postal_code'] = ''; }
if (!isset($instance['tel'])) { $instance['tel'] = ''; }
if (!isset($instance['email'])) { $instance['email'] = ''; }
echo $before_widget;
if ($title) {
echo $before_title;
echo $title;
echo $after_title;
}
?>
,
flush_widget_cache();
$alloptions = wp_cache_get('alloptions', 'options');
if (isset($alloptions['widget_pilotfish_vcard'])) {
delete_option('widget_pilotfish_vcard');
}
return $instance;
}
function flush_widget_cache() {
wp_cache_delete('widget_pilotfish_vcard', 'widget');
}
function form($instance) {
$title = isset($instance['title']) ? esc_attr($instance['title']) : '';
$street_address = isset($instance['street_address']) ? esc_attr($instance['street_address']) : '';
$locality = isset($instance['locality']) ? esc_attr($instance['locality']) : '';
$region = isset($instance['region']) ? esc_attr($instance['region']) : '';
$postal_code = isset($instance['postal_code']) ? esc_attr($instance['postal_code']) : '';
$tel = isset($instance['tel']) ? esc_attr($instance['tel']) : '';
$email = isset($instance['email']) ? esc_attr($instance['email']) : '';
?>