WP_PLUGIN_DIR . '/' . str_replace( basename( __FILE__ ), "", plugin_basename( __FILE__ ) ), 'url' => WP_PLUGIN_URL . '/' . str_replace( basename( __FILE__ ), "", plugin_basename( __FILE__ ) ), ); // always needed for footer link // TODO which footer link? we don't need this in admin, or do we? require_once( 'inc/page.php' ); if ( is_admin() ) { require_once( 'inc/admin.php' ); add_action( 'admin_menu', 'nktagcloud_add_pages' ); wp_register_widget_control('your_widget_2', __('Better Tag Cloud', 'nktagcloud' ), 'nktagcloud_control' ); wp_register_sidebar_widget('your_widget_2', __('Better Tag Cloud', 'nktagcloud'), 'widget_nktagcloud' ); } else { add_shortcode( 'nktagcloud', 'nktagcloud_shortcode' ); add_shortcode( 'nktagcloud_single', 'nktagcloud_single_shortcode' ); wp_register_sidebar_widget('your_widget_1', __('Better Tag Cloud', 'nktagcloud'), 'widget_nktagcloud' ); } } add_action( 'init', 'nktagcloud_init' ); // load the new widget class if available if ( class_exists( 'WP_Widget' ) ) require_once( 'inc/multiwidget.php' );