Changeset 370172
- Timestamp:
- 04/07/2011 02:32:58 PM (15 years ago)
- Location:
- dashbar
- Files:
-
- 11 deleted
- 4 edited
-
branches/3.0 (deleted)
-
trunk (modified) (1 prop)
-
trunk/DashBar-be_BY.mo (deleted)
-
trunk/DashBar-be_BY.po (deleted)
-
trunk/DashBar-fr_FR.mo (deleted)
-
trunk/DashBar-fr_FR.po (deleted)
-
trunk/DashBar-ja.mo (deleted)
-
trunk/DashBar-ja.po (deleted)
-
trunk/DashBar.css (deleted)
-
trunk/DashBar.js (deleted)
-
trunk/DashBar.php (modified) (5 diffs)
-
trunk/DashBar.pot (deleted)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/screenshot-1.png (modified) (previous)
-
trunk/screenshot-2.png (deleted)
Legend:
- Unmodified
- Added
- Removed
-
dashbar/trunk
- Property svn:mergeinfo changed
/dashbar/branches/3.0 (added) merged: 369949,369956,369992,370162,370166
- Property svn:mergeinfo changed
-
dashbar/trunk/DashBar.php
r369992 r370172 2 2 /* 3 3 Plugin Name: DashBar 4 Plugin URI: http://z720.net/ produits/wordpress/dashbar5 Description: Display a Enhanced WordPress.com-like navigation bar for logged users: direct acces to Dashboard, Write, Edit, Awaiting Moderation, Profile...6 Version: 2.7.24 Plugin URI: http://z720.net/blog/categories/web/wordpress/dashbar 5 Description: Enhance admin bar to add features present in previous versions of DashBar: mainly edit posts display on current page 6 Version: 3.0 7 7 Author: Sebastien Erard 8 8 Author URI: http://z720.net/ … … 14 14 } else { 15 15 16 /* Currently §Dashbar only support PHP5 */16 /* Currently Dashbar only support PHP5 */ 17 17 if (version_compare(PHP_VERSION, '5.0.0', '<')) { 18 18 class DashBar { … … 32 32 } else { 33 33 34 35 /**36 * Class DashBarLink37 * Manage a link in the DashBar38 */39 class DashBarLink {40 var $label = '';41 var $url = '';42 var $credential = '';43 var $children = array();44 static $popup = false;45 46 function DashBarLink($label, $url, $credential = '', $children = array()) {47 $this->setLabel($label);48 $this->setURL($url);49 $this->setCredential($credential);50 $this->setChildren($children);51 }52 53 /* Label Management the text of the link */54 function setLabel($label) { $this->label = $label; }55 function getLabel() { return $this->label; }56 57 /* Url Management the relative url of the page to display within the wordpress install */58 function setUrl($url) { $this->url = get_option('siteurl').$url; }59 function setExtUrl($url) { $this->url = $url; }60 function getUrl() { return $this->url; }61 62 /* Credential Management : credential needed to display the link */63 function setCredential($cred) { $this->credential = $cred; }64 function getCredential() { return $this->credential; }65 66 /* Sub Links management */67 function setChildren($children) {68 $c = array();69 foreach($children as $child) {70 if($child instanceof DashBarLink) {71 $c[] = $child;72 }73 }74 $this->children = $c;75 }76 function getChildren() { return $this->children; }77 function hasChildren() { return (empty($this->children) == true); }78 79 /* popup flag */80 public static function setPopup($popup) {81 DashBarLink::$popup = (boolean) $popup;82 }83 public static function getPopup() {84 return DashBarLink::$popup;85 }86 87 /* Building the Menu (list of links) */88 function build($elts = array()) {89 $o = '';90 if(empty($elts)) { return ''; }91 foreach($elts as $elt) {92 if($elt instanceof DashBarLink) {93 $user_can = true;94 if($elt->getCredential() != '') {95 $user_can = current_user_can($elt->getCredential());96 }97 if($user_can) {98 if(DashBarLink::getPopup()) {99 $str = '<li><a href="'.$elt->getUrl().'" target="_new">'.$elt->getLabel().'</a>';100 } else {101 $str = '<li><a href="'.$elt->getUrl().'">'.$elt->getLabel().'</a>';102 }103 $str .= DashBarLink::build($elt->getChildren());104 $str .= '</li>';105 $o .= $str;106 }107 }108 }109 if($o != '') {110 $o = '<ul>'.$o.'</ul>';111 }112 return $o;113 }114 }115 116 34 /* Class DashBar the plugin itself */ 117 35 class DashBar { … … 119 37 var $prefixe = 'DashBar'; 120 38 var $domain = 'DashBar'; 121 var $version = '2.7.2'; 122 123 var $default = array( 'bgcolor' => '#464646' 124 ,'height' => '14px' 125 ,'color' => '#eee' 126 ,'fgcolor' => '#777' 127 ,'acolor' => '#eee' 128 ,'popup' => false 129 ); 130 var $values = array(); 131 var $user_menu = array(); 132 133 var $erreur = false; 134 135 function getInstallDir() { 136 return basename(dirname(__FILE__)); 137 } 138 139 function DashBar() { 140 // i18n : load texts 141 load_plugin_textdomain($this->domain,false,basename(dirname(__FILE__))); 142 // Load options to overwrite defaults 143 $c = get_option($this->prefixe); 144 foreach($this->default as $k => $v) { 145 if(($c === false) or (!isset($c[$k]))) { 146 $this->values[$k] = $this->default[$k]; 147 } else { 148 $this->values[$k] = $c[$k]; 149 } 150 } 151 // save options to database or create default for first time 152 update_option($this->prefixe, $this->values); 153 // WP init 154 add_action('init', array(&$this, 'init')); 155 // WP admin hooks 156 add_action('admin_head', array(&$this, 'admin_page_header')); 157 add_action('admin_menu', array(&$this, 'admin_pages')); 158 159 } 160 161 function __($str) { 162 return __($str, $this->domain); 163 } 164 165 function init() { 166 global $user_ID; 167 get_currentuserinfo(); 168 if($user_ID != '') { 169 add_filter('wp_footer', array(&$this, 'display_bar')); 170 add_filter('wp_head', array(&$this, 'display_style')); 171 add_filter('wp_head', array(&$this, 'display_script')); 172 } 173 } 39 var $version = '3.0'; 174 40 175 function admin_pages() { 176 add_options_page($this->__('DashBar'), $this->__('DashBar'), 'manage_options', basename(__FILE__), array(&$this, 'admin_page')); 177 } 178 179 function display_bar() { 180 DashBarLink::setPopup($this->values['popup']); 181 get_currentuserinfo(); 182 global $current_user; 183 /* Links construction */ 184 $links = array(); 185 /* Dashboard Links, Profile and Logout */ 186 $links[] = new DashBarLink($this->__('Dashboard') 187 , '/wp-admin/index.php' 188 , 'read' 189 , array(new DashBarLink($this->__('My Account'), '/wp-admin/profile.php') 190 ,new DashBarLink($this->__('Logout'), '/wp-login.php?action=logout') 191 ) 192 ); 193 /* Post related Menu : context related edit (posts in the loop)*/ 194 global $id, $authordata; 195 rewind_posts(); 196 $edit_ar = array(); 197 if(is_single()||is_page()) { 198 the_post(); 199 $links[] = new DashBarLink($this->__('Edit'), '/wp-admin/post.php?action=edit&post='.$id, ($current_user->ID != $authordata->ID) ? 'edit_others_posts' : 'edit_posts'); 200 } elseif(!is_404()) { 201 while(have_posts()) { 202 the_post(); 203 $edit_ar[] = new DashBarLink(get_the_title(), '/wp-admin/post.php?action=edit&post='.$id, ($current_user->ID != $authordata->ID) ? 'edit_others_posts' : 'edit_posts'); 204 } 205 if(!empty($edit_ar)) { 206 $links[] = new DashBarLink($this->__('Edit'), '/wp-admin/edit.php', 'edit_posts', $edit_ar); 207 } 208 } 209 /* Comments moderation */ 210 $awaiting_mod = wp_count_comments(); 211 $awaiting_mod = $awaiting_mod->moderated; 212 if($awaiting_mod) { 213 $links[] = new DashBarLink(sprintf($this->__("Awaiting Moderation (%s)"), $awaiting_mod), '/wp-admin/edit-comments.php?comment_status=moderated', 'moderate_comments'); 214 } else { 215 $links[] = new DashBarLink($this->__('Comments'), '/wp-admin/edit-comments.php', 'moderation_comments'); 216 } 217 /* Content creation: posts, pages, links, upload media */ 218 $links[] = new DashBarLink($this->__('New Post') 219 , '/wp-admin/post-new.php' 220 , 'edit_post' 221 , array(new DashBarLink($this->__('New Page'), '/wp-admin/page-new.php', 'edit_pages') 222 , new DashBarLink($this->__('New Link'), '/wp-admin/link-add.php', 'manage_links') 223 , new DashBarLink($this->__('Upload'), '/wp-admin/media-new.php', 'upload_files') 224 ) 225 ); 226 /* Management shortcuts : posts, pages, links, media, themes */ 227 $links[] = new DashBarLink($this->__('Manage') 228 , '/wp-admin/edit.php' 229 , 'edit_posts' 230 , array( new DashBarLink($this->__('Pages'), '/wp-admin/edit-pages.php', 'edit_page') 231 ,new DashBarLink($this->__('Links'), '/wp-admin/link-manager.php', 'manage_links') 232 ,new DashBarLink($this->__('Media Library'), '/wp-admin/upload.php', 'upload_files') 233 ,new DashBarLink($this->__('Design'), '/wp-admin/themes.php', 'switch_themes') 234 ,new DashBarLink($this->__('Plugins'), '/wp-admin/plugins.php', 'activate_plugins') 235 ) 236 ); 237 /* Plugin management 238 * Every plugins should be as extensible as WordPress is... 239 /* */ 240 $output = apply_filters('DashBar_pre_links', $links); 241 include_once(ABSPATH . 'wp-admin/includes/template.php'); 242 /* Output the bar to HTML */ 243 echo '<div id="DashBar">'; 244 //favorite_actions(); 245 echo DashBarLink::build($links); 246 echo '</div>'; 247 } 248 /* Plugin dir getter */ 249 function getPluginURL() { 250 $url = ''; 251 if(!defined('WP_PLUGIN_URL')) { 252 $url = get_option('siteurl').'/'.PLUGINDIR; 253 } else { 254 $url = WP_PLUGIN_URL; 255 } 256 $rep = $this->getInstallDir(); 257 return $url.'/'.$rep; 258 } 41 /** 42 * Constructor 43 */ 44 function DashBar() { 45 // WP init 46 add_action('init', array(&$this, 'init')); 47 } 259 48 260 /* Display inline style with customizing and link to DashBar structure CSS*/ 261 function display_style() { 262 ?><!-- [Begin:DashBar Style] --> 263 <link rel="stylesheet" href="<?php echo $this->getPluginURL() ?>/DashBar.css" type="text/css" /> 264 <style type="text/css"> 265 #DashBar { background-color: <?php echo $this->values['bgcolor']; ?>; background-image: url(<?php echo get_option('siteurl') ?>/wp-admin/images/logo-ghost.png); color:<?php echo $this->values['acolor']; ?>;font-size: <?php echo $this->values['height']; ?>!important;} 266 #DashBar a { color: <?php echo $this->values['color']; ?>; } 267 #DashBar li:hover, #DashBar li.over, #DashBar a:hover {background: <?php echo $this->values['fgcolor']; ?>; color: <?php echo $this->values['acolor']; ?>;} 268 #DashBar ul ul li a {width:140px;background: <?php echo $this->values['bgcolor']; ?>;} 269 </style> 270 <!--[if lt IE 7]><style type="text/css">#DashBar {position:absolute;}</style><![endif]--> 271 <!-- [End:DashBar Style] --> 272 <?php 273 } 274 /* Load necessary JS Script */ 275 function display_script() { ?> 276 <!-- [Begin:DashBar Script] --> 277 <script type="text/javascript">var DashBarInner = '<'+'a href="<?php echo get_option('siteurl').'/wp-admin/theme-editor.php'; ?>"'+'>'+'<?php echo addslashes($this->__('Your theme is not ready for the DashBar Plugin. To use this Plugin you should add <?php wp_footer(); ?> in the footer of your theme.'))?>'+'<'+'/'+'a'+'>';</script> 278 <script type="text/javascript" src="<?php echo $this->getPluginURL() ?>/DashBar.js"></script> 279 <!-- [End:DashBar Script] --> 280 <?php 281 } 282 283 // Administration part : form handling 284 function admin_page_header() { 285 if((isset($_REQUEST['page'])) and ($_REQUEST['page'] == basename(__FILE__))) { 286 switch($_REQUEST['DashBarAction']) { 287 case $this->__('Change Style'): 288 if(isset($_REQUEST['DashBarStyle']['bgcolor']) and preg_match('/^#[0-9a-f]{3,6}$/i',$_REQUEST['DashBarStyle']['bgcolor'])) { 289 $this->values['bgcolor'] = $_REQUEST['DashBarStyle']['bgcolor']; 290 } else { 291 $this->erreur[] = $this->__("Incorrect color, it should be in hexadecimal form with 3 or 6 characters"); 292 } 293 if(isset($_REQUEST['DashBarStyle']['fgcolor']) and preg_match('/^#[0-9a-f]{3,6}$/i',$_REQUEST['DashBarStyle']['fgcolor'])) { 294 $this->values['fgcolor'] = $_REQUEST['DashBarStyle']['fgcolor']; 295 } else { 296 $this->erreur[] = $this->__("Incorrect color, it should be in hexadecimal form with 3 or 6 characters"); 297 } 298 if(isset($_REQUEST['DashBarStyle']['color']) and preg_match('/^#[0-9a-f]{3,6}$/i',$_REQUEST['DashBarStyle']['color'])) { 299 $this->values['color'] = $_REQUEST['DashBarStyle']['color']; 300 } else { 301 $this->erreur[] = $this->__("Incorrect color, it should be in hexadecimal form with 3 or 6 characters"); 302 } 303 if(isset($_REQUEST['DashBarStyle']['acolor']) and preg_match('/^#[0-9a-f]{3,6}$/i',$_REQUEST['DashBarStyle']['acolor'])) { 304 $this->values['acolor'] = $_REQUEST['DashBarStyle']['acolor']; 305 } else { 306 $this->erreur[] = $this->__("Incorrect color, it should be in hexadecimal form with 3 or 6 characters"); 307 } 308 if(isset($_REQUEST['DashBarStyle']['height']) and preg_match('/^[0-9]+(|px|em|ex|%)$/i',$_REQUEST['DashBarStyle']['height'])) { 309 $this->values['height'] = $_REQUEST['DashBarStyle']['height']; 310 } else { 311 $this->erreur[] = $this->__("Incorrect text size format"); 312 } 313 $this->values['popup'] = (isset($_REQUEST['DashBarStyle']['popup']) && ($_REQUEST['DashBarStyle']['popup'] == '1')) ? true : false; 314 if(!$this->erreur) { 315 update_option($this->prefixe, $this->values); 316 $this->msg = $this->__('New settings successfully saved'); 317 } 318 break; 319 case $this->__('Restore Default'): 320 update_option($this->prefixe, $this->default); 321 $this->values = $this->default; 322 $this->msg = $this->__('Default settings successfully restored'); 323 break; 324 default: 325 } ?> 326 <script type="text/javascript" src="../wp-includes/js/colorpicker.js"></script> 327 <script type="text/javascript"> 328 var cp = new ColorPicker(); 329 function initColorPicker() { 330 var elts = document.getElementsByTagName('INPUT'); 331 for(i=0;i<elts.length;i++) { 332 if(elts[i].id.substr(elts[i].id.length-7,elts[i].id.length) == '_sample') { 333 elts[i].onclick = color_picker; 334 elts[i].style.backgroundColor = document.getElementById(elts[i].id.replace('_sample','')).value; 335 } 336 } 337 } 338 addLoadEvent(initColorPicker); 339 function color_picker() { 340 var input_id = this.id.replace('_sample',''); 341 var color_field = document.getElementById(input_id); 342 if ( cp.p == input_id && document.getElementById(cp.divName).style.visibility != "hidden" ) 343 cp.hidePopup('prettyplease'); 344 else { 345 cp.p = input_id; 346 cp.select(color_field,input_id); 347 } 348 } 349 function pickColor(color) { 350 ColorPicker_targetInput.value = color; 351 document.getElementById(ColorPicker_targetInput.id+'_sample').style.backgroundColor = color; 352 } 353 </script> 354 <?php 355 } 356 } 49 /** 50 * Plugin init: mainly hook action to methods on WordPress init 51 */ 52 function init() { 53 add_action( 'admin_bar_menu', array(&$this, 'update_bar'), 31 ); 54 add_action( 'wp_before_admin_bar_render', array(&$this, 'add_network')); 55 } 357 56 358 // Administration part : form display 359 function admin_page() { 360 if(isset($this->erreur) and is_array($this->erreur)) { 361 echo '<div id="message" class="error"><ul>'; 362 foreach($this->erreur as $msg) { 363 echo '<li>'.$msg.'</li>'; 364 } 365 echo '</ul></div>'; 366 } elseif(isset($this->msg)) { 367 echo '<div id="message" class="updated fade"><p>'.$this->msg.'</p></div>'; 368 } 369 $popupSelected = ($this->value['popup']) ? ' checked="checked"' : ''; 370 ?> 371 <div class="wrap"> 372 <form action="" method="post"> 373 <h2><?php _e('Style Customizing', $this->domain); ?></h2> 374 <div id="colorPickerDiv" style="z-index: 100;background:#eee;border:1px solid #ccc;position:absolute;visibility:hidden;"> </div> 375 <table class="optiontable"> 376 <tbody> 377 <tr> 378 <th><?php _e('DashBar color', $this->domain);?></th> 379 <td><input type="text" id="DashBar_bgcolor" name="DashBarStyle[bgcolor]" value="<?php echo $this->values['bgcolor'];?>" /> <input type="button" id="DashBar_bgcolor_sample" value="<?php _e('Color Picker',$this->domain);?>" /></td> 380 </tr> 381 <tr> 382 <th><?php _e('Text Color', $this->domain);?></th> 383 <td><input type="text" id="DashBar_color" name="DashBarStyle[color]" value="<?php echo $this->values['color'];?>" /> <input type="button" id="DashBar_color_sample" value="<?php _e('Color Picker',$this->domain);?>" /></td> 384 </tr> 385 <tr> 386 <th><?php _e('Highlighted element color', $this->domain);?></th> 387 <td><input type="text" id="DashBar_fgcolor" name="DashBarStyle[fgcolor]" value="<?php echo $this->values['fgcolor'];?>" /> <input type="button" id="DashBar_fgcolor_sample" value="<?php _e('Color Picker',$this->domain);?>" /> </td> 388 </tr> 389 <tr> 390 <th><?php _e('Highlighted text color', $this->domain);?></th> 391 <td><input type="text" id="DashBar_acolor" name="DashBarStyle[acolor]" value="<?php echo $this->values['acolor'];?>" /> <input type="button" id="DashBar_acolor_sample" value="<?php _e('Color Picker',$this->domain);?>" /></td> 392 </tr> 393 <tr> 394 <th><?php _e('Text size', $this->domain);?></th> 395 <td><input type="text" id="DashBar_height" name="DashBarStyle[height]" value="<?php echo $this->values['height'];?>" /></td> 396 </tr> 397 </tbody> 398 </table> 399 <h2><?php echo $this->__('Link Behaviour'); ?></h2> 400 <table class="optiontable"> 401 <tbody> 402 <tr> 403 <th><?php echo $this->__('Open links in a new windows') ?></th> 404 <td><input type="checkbox" id="DashBar_popup" name="DashBarStyle[popup]" value="1" <?php echo ($this->values['popup'] === true)? 'checked="checked" ' : '' ?> /></td> 405 </tr> 406 </tbody> 407 </table> 408 <p class="submit"><input type="submit" name="DashBarAction" value="<?php _e('Change Style',$this->domain); ?>" /> <input type="submit" name="DashBarAction" value="<?php _e('Restore Default',$this->domain); ?>" /></p> 409 </form> 410 </div> 411 <?php 412 } 57 /** 58 * Add posts edit to an edit menu with the list of posts the user can edit 59 */ 60 function update_bar() { 61 global $wp_admin_bar; 62 global $wp_query; 63 // We're on a page with a list of posts 64 if(!empty($wp_query->posts)) { 65 // display menu if user has edit permission 66 if(current_user_can('edit_posts')) { 67 $id = 'dashbar_edit'; // Edit menu 68 $wp_admin_bar->add_menu(array('id' => $id, 'title' => __('Edit'), 'href'=> admin_url('post.php'))); 69 rewind_posts(); 70 global $post; 71 // loop for posts on current page 72 while(have_posts()) { 73 the_post(); 74 $current_object = $post; 75 // link to edit post from wp-includes/admin-bar.php @ 173 (v3.1.1) 76 //if ( ! empty( $current_object->post_type ) && ( $post_type_object = get_post_type_object( $current_object->post_type ) ) && current_user_can( $post_type_object->cap->edit_post, $current_object->ID ) && $post_type_object->show_ui ) { 77 $wp_admin_bar->add_menu( array('id'=>$id.'-'.$current_object->ID, 'parent' => $id, 'title' => $current_object->post_title, 'href' => get_edit_post_link( $current_object->ID ) ) ); 78 //} 79 } 80 } 81 } 82 83 } 84 85 /** 86 * Add a link to network admin in the first menu (my account). 87 * The link should only be visible to Network admins in a multisite context outside of the network admin pages 88 */ 89 function add_network() { 90 if(is_multisite() && current_user_can('manage_network') && !is_network_admin()) { 91 global $wp_admin_bar; 92 /* Add the 'My Account' menu */ 93 $avatar = get_avatar( get_current_user_id(), 16 ); 94 $id = ( ! empty( $avatar ) ) ? 'my-account-with-avatar' : 'my-account'; 95 $wp_admin_bar->add_menu(array('id'=>'network_admin', 'parent'=> $id, 'href'=>network_admin_url(), 'title' => __('Network Admin'))); 96 } 97 } 413 98 } 414 99 } … … 418 103 $the_dashbar = new DashBar(); 419 104 420 421 105 ?> -
dashbar/trunk/readme.txt
r369945 r370172 2 2 Contributors: z720 3 3 Tags: admin 4 Requires at least: 2.5 5 Tested up to: 3.0 4 Donate link: http://z720.net/about/donate 5 Requires at least: 3.1 6 Tested up to: 3.1.1 6 7 Stable tag: 2.7.2 7 8 8 Display an Enhanced WordPress.com-like navigation bar for logged users: direct acces to Dashboard, Write, Edit, Awaiting Moderation, Profile... 9 Enhance Wordpress Admin bar to add features present in previous versions of DashBar: mainly edit posts displayed on current page 9 10 10 11 == Description == 11 12 12 This plugin allows logged in user to see an administration bar like the one displayed at [WordPress.com](http://wordpress.com).13 This plugin tries to enable previous feature present in DashBar in the new Wordpress Admin Bar. 13 14 14 The bar is displayed on every page of the frontend, with links to:15 No more options, only contextual links missing in the admin bar: 15 16 16 * DashBoard 17 * Profile 18 * Logout 19 * Manage (Posts, Pages, Links, Files) 20 * Write Post 17 * Choose from the list of posts displayed to edit one 21 18 22 and with contextual links : 19 Network admin is also accessible from the first menu 23 20 24 * Edit this post if single 25 * Choose from the list of posts displayed to edit one 26 * Comment moderation if moderation queue has comments to moderate 21 No more localization required as this plugin uses core WordPress text. 27 22 28 The look and feel of the bar is easy to customize via **Options**>**DashBar**.23 WARNING: This plugin requires PHP 5. 29 24 30 Use the pot file included to localize the bar to your language. Languages currently available :31 32 * English (Native as WordPress)33 * French34 * Japanese (thanks to Yoshitaka Fukunaga http://www.rhein-strasse.de/ )35 * Belorussian (thanks to http://www.fatcow.com/ )36 37 Feel free to send me your PO/MO files, I'll put them in the next release38 39 == Changelog ==40 41 Version 2.7.2: Added Belorussian and Japanese translation42 25 43 26 == Installation == … … 48 31 2. Activate the plugin through the 'Plugins' menu in WordPress 49 32 50 == Screenshots ==51 33 52 1. Standard DashBar view from the frontend 53 2. Custom DashBar look and feel editor 34 == Screenshots == 35 36 1. New 'Edit' Menu with an list of direct edit link to posts from current page. 37 38 == Changelog == 39 40 = 3.0 = 41 Integrate DashBar features in WordPress Admin Bar 42 43 = 2.7.2 = 44 Added Belorussian and Japanese translation 45 46 47 == Upgrade Notice == 48 49 = 3.0 = 50 This version doesn't need any previous customizing options, but your options won't be lost: maybe we will use them in a further version. 51 Hence you can remove them manually (if you want) from the database any DashBar* option can be safely removed. 52 54 53 55 54 == Frequently Asked Questions == … … 59 58 Don't hesitate to let me know that you have localized the plugin in an other language. [Drop me a mail](http://z720.net/about/contact "Contact me") 60 59 60 You can even [contribute to the project on github](https://github.com/z720/dashbar "DashBar on GitHub"). 61 61 62 = What the hell, it doesn't work. What can I do ? = 62 63 63 64 [Drop me a mail](http://z720.net/about/contact "Contact me") with any relevant data: WordPress version, theme, active plugins... I'll do my best to fix the issue. 64 65 65 = My plugin is a really cool feature and I want to add a link in the DashBar = 66 67 DashBar declares a DashBarLink object you can use in combination with the DashBar hook. 68 1. Create e new DashBarLink instance: $mylink = new DashBarLink($label, $url, $credential (optional)) 69 2. Add it to the List : add_filter('DashBar_pre_link', function($list) { $list[] = $mylink; return $list; }); 70 71 This example might not work. But if you made a plugin. You got it... 66 If you know PHP and WordPress, You can even [fix or fork this project on github](https://github.com/z720/dashbar "DashBar on GitHub").
Note: See TracChangeset
for help on using the changeset viewer.