WordPress “Piwik Analytics” eklentisi için “Dashboard widget” yaması

Piwik Analytics eklentisi WordPress ile Piwik kurulumları arasındaki iletişimi kolaylaştırıyor.

Şimdilik bu eklenti sadece Piwik’in ihtiyaç duyduğu kodu WordPress sayfalarına yerleştirmeyi sağlıyor.

Piwik’in Widgetize eklentisinin sağladığı widgetları WordPress yönetim panelinden görebilmenin yararlı olacağını düşündüm. Bu düşünceyle aşağıdaki yamayı hazırladım.

Index: piwikanalytics.php
===================================================================
--- piwikanalytics.php	(revision 112809)
+++ piwikanalytics.php	(working copy)
@@ -267,6 +267,31 @@
 	} // class PA_Filter
 } // endif
 
+/** Dashboard Stuff: WP >= 2.5 */
+
+function piwikanalytics_register_dashboard_widget() {
+	if (!current_user_can('manage_options'))
+		return;
+	wp_register_sidebar_widget('dashboard_piwikanalytics', __('Stats'), 'piwikanalytics_dashboard_widget_content', array(
+		'width' => 'full'
+	));
+}
+
+function piwikanalytics_add_dashboard_widget($widgets) {
+	global $wp_registered_widgets;
+	if (!isset($wp_registered_widgets['dashboard_piwikanalytics']) || !current_user_can('manage_options'))
+		return $widgets;
+
+	array_splice($widgets, 2, 0, 'dashboard_piwikanalytics');
+	return $widgets;
+}
+
+function piwikanalytics_dashboard_widget_content() { ?>
+<!-- Put embedded iframe code here. -->
+< ?php
+	exit;
+}
+
 if (function_exists("get_option")) {
 	if ($wp_siteid_takes_precedence) {
 		$options  = get_option('PiwikAnalyticsPP');
@@ -276,7 +301,7 @@
 
 $gaf = new PA_Filter();
 
-$options  = get_option('PiwikAnalyticsPP',"");
+$options = get_option('PiwikAnalyticsPP', "");
 
 if ($options == "") {
 	$options&#91;'phpurl'&#93; = '/piwik/piwik.php';
@@ -284,14 +309,16 @@
 	$options&#91;'dltracking'&#93; = true;
 	$options&#91;'dlextensions'&#93; = '7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip';
 	//$options&#91;'position'&#93; = 'footer';
-	update_option('PiwikAnalyticsPP',$options);
+	update_option('PiwikAnalyticsPP', $options);
 }
 
 // adds the menu item to the admin interface
 add_action('admin_menu', array('PA_Admin','add_config_page'));
 
-
 // adds the footer so the javascript is loaded
 add_action('wp_footer', array('PA_Filter','spool_analytics'));	
 
-?>
+add_action('wp_dashboard_setup', 'piwikanalytics_register_dashboard_widget');
+add_filter('wp_dashboard_widgets', 'piwikanalytics_add_dashboard_widget');
+
+?>
\ No newline at end of file
Reklam

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s