Advertisement
Guest User

hnla - Ammended bp-wp-navbar 1.1 - user config added

a guest
Aug 11th, 2010
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.68 KB | None | 0 0
  1. <?php
  2.  
  3. /*
  4. Plugin Name: Add All Nav Links to BP Adminbar (bp-wp-navbar)
  5. Requires at least: WordPress 2.9.2 / BuddyPress 1.2.3
  6. Tested up to: WordPress 3.0 / BuddyPress 1.2.5.2 (Should work anyway. Be sure to read the readme file for more on this.)
  7. Plugin URI: http://URI_Of_Page_Describing_Plugin_and_Updates
  8. Description: This plugin aggregates all Buddypress directory and Wordpress page links into the BP Adminbar. All BP pages are collected in a Community dropdown, and all WP pages appear in dropdowns that respect whatever page order you have set in your WP backend.
  9. Version: 1.1 (Initial release)
  10. Author: Patrick Cohen (pcwriter)
  11. Author URI: http://nowrecovery.com/members/admin/
  12.  
  13. Thanks and props to hnla for invaluable collaboration and tutoring on this plugin; to David Lewis, Chau kar, Jens Wedin, and r-a-y for some great contributions; and to all for helping me learn basic stuff and iron out the kinks in this code (whether they know it or not).
  14.  
  15. License : GPL2
  16. Copyright 2010 Patrick Cohen (email : info@nowrecovery.com)
  17.  
  18. This program is free software; you can redistribute it and/or modify
  19. it under the terms of the GNU General Public License, version 2, as
  20. published by the Free Software Foundation.
  21.  
  22. This program is distributed in the hope that it will be useful,
  23. but WITHOUT ANY WARRANTY; without even the implied warranty of
  24. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  25. GNU General Public License for more details.
  26.  
  27. You should have received a copy of the GNU General Public License
  28. along with this program; if not, write to the Free Software
  29. Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  30. */
  31.  
  32. /*-------------------------- USER CONFIG OPTIONS --------------------------*/
  33.  
  34. // Configure wp_list_pages nav as horizontal(false) or vertical dropdown(true)
  35. $pageLinkDropdown = true; // set true for dropdown
  36.  
  37. // Configure top level Nav bar label (wp_list_pages as vertical dropdown)
  38. $wpListPagesLabel = 'Pages';
  39.  
  40. // Configure label for 'Community' links default = 'Community'
  41. $bpCommunityLinks = 'Community';
  42.  
  43. // Configure labels for wp_nav_menu dropdowns
  44. $adminbarPages1 = 'Pages';
  45. $adminbarPages2 = 'pages 2';
  46.  
  47. // hide the main site navigation - default = false(show) set to true to hide
  48. $hideMainNav = false; // set true to hide main site links
  49.  
  50. /*-------------------------- END USER CONFIG -----------------------------*/
  51.  
  52. // Register WP 3.0 nav menus regions
  53. // Create regions for each user menu type
  54. if ( function_exists( 'register_nav_menus' ) ) {
  55. register_nav_menus( array(
  56. 'bp_adminbar_pages1' => __( 'Adminbar pages 1'),
  57. 'bp_adminbar_pages2' => __( 'Adminbar pages 2 ')
  58. ) );
  59. }
  60.  
  61.  
  62. // Begin 'pages' function
  63.  
  64. function pages(){
  65. global $current_blog, $pageLinkDropdown, $wpListPagesLabel, $bpCommunityLinks, $adminbarPages1,
  66. $adminbarPages2 ;
  67.  
  68. ?>
  69.  
  70. <?php if($current_blog->blog_id == '1') : ?>
  71.  
  72.  
  73. <!-- Community Drop Down -->
  74. <li
  75. <?php if (bp_is_page( BP_ACTIVITY_SLUG ) ||
  76. bp_is_page( BP_MEMBERS_SLUG ) || bp_is_member() ||
  77. bp_is_page( BP_GROUPS_SLUG ) || bp_is_group() ||
  78. bp_is_page( BP_FORUMS_SLUG ) ||
  79. bp_is_page( BP_BLOGS_SLUG ) ) : ?> class="selected"<?php endif; ?>>
  80.  
  81. <a href="<?php echo site_url() ?>/<?php echo BP_ACTIVITY_SLUG ?>/" title="<?php _e( '', 'buddypress' ) ?>"><?php _e( $bpCommunityLinks, 'buddypress' ) ?></a>
  82.  
  83. <ul>
  84.  
  85. <?php if ( bp_is_active( 'activity' ) ) : ?>
  86. <li<?php if ( bp_is_page( BP_ACTIVITY_SLUG ) ) : ?> class="selected"<?php endif; ?>>
  87. <a href="<?php echo site_url() ?>/<?php echo BP_ACTIVITY_SLUG ?>/" title="<?php _e( 'Activity', 'buddypress' ) ?>"><?php _e( 'Activity', 'buddypress' ) ?></a>
  88. </li>
  89. <?php endif; ?>
  90.  
  91. <li<?php if ( bp_is_page( BP_MEMBERS_SLUG ) || bp_is_member() ) : ?> class="selected"<?php endif; ?>>
  92. <a href="<?php echo site_url() ?>/<?php echo BP_MEMBERS_SLUG ?>/" title="<?php _e( 'Members', 'buddypress' ) ?>"><?php _e( 'Members', 'buddypress' ) ?></a>
  93. </li>
  94.  
  95. <?php if ( bp_is_active( 'blogs' ) && bp_core_is_multisite() ) : ?>
  96. <li<?php if ( bp_is_page( BP_BLOGS_SLUG ) ) : ?> class="selected"<?php endif; ?>>
  97. <a href="<?php echo site_url() ?>/<?php echo BP_BLOGS_SLUG ?>/" title="<?php _e( 'Member Blogs', 'buddypress' ) ?>"><?php _e( 'Member Blogs', 'buddypress' ) ?></a>
  98. </li>
  99. <?php endif; ?>
  100.  
  101. <?php if ( bp_is_active( 'groups' ) ) : ?>
  102. <li<?php if ( bp_is_page( BP_GROUPS_SLUG ) || bp_is_group() ) : ?> class="selected"<?php endif; ?>>
  103. <a href="<?php echo site_url() ?>/<?php echo BP_GROUPS_SLUG ?>/" title="<?php _e( 'Groups', 'buddypress' ) ?>"><?php _e( 'Groups', 'buddypress' ) ?></a>
  104. </li>
  105.  
  106. <?php if ( bp_is_active( 'forums' ) && bp_is_active( 'groups' ) && ( function_exists( 'bp_forums_is_installed_correctly' ) && !(int) get_site_option( 'bp-disable-forum-directory' ) ) && bp_forums_is_installed_correctly() ) : ?>
  107. <li<?php if ( bp_is_page( BP_FORUMS_SLUG ) ) : ?> class="selected"<?php endif; ?>>
  108. <a href="<?php echo site_url() ?>/<?php echo BP_FORUMS_SLUG ?>/" title="<?php _e( 'Group Forums', 'buddypress' ) ?>"><?php _e( 'Group Forums', 'buddypress' ) ?></a>
  109. </li>
  110. <?php endif; ?>
  111. <?php endif; ?>
  112.  
  113. <?php do_action( 'bp_nav_items' ); ?>
  114.  
  115. </ul>
  116.  
  117. </li>
  118. <?php if(!function_exists( 'wp_nav_menu' ) ): ?>
  119. <?php ### Don't show wp_list_pages if WP 3.0 use New wp_nav_menus instead ### ?>
  120. <?php if($pageLinkDropdown) : ?>
  121. <li><a href="/"><?php echo $wpListPagesLabel; ?></a>
  122. <ul>
  123. <?php endif; ?>
  124.  
  125. <li>
  126. <?php wp_list_pages( 'title_li=&depth=20&exclude=' ); ?>
  127. </li>
  128.  
  129. <?php if($pageLinkDropdown) : ?>
  130. </ul>
  131. </li>
  132. <?php endif; ?>
  133. <?php endif; ?>
  134.  
  135. <?php ##################### Add call to WP Nav Menus ####################### ?>
  136. <?php if ( function_exists( 'wp_nav_menu' ) ): ?>
  137. <?php if(has_nav_menu('bp_adminbar_pages1')): ?>
  138. <li><a href="<?php site_url() ?>"><?php echo $adminbarPages1; ?></a>
  139. <?php wp_nav_menu(array('sort_column' => 'menu_order', 'container' => '', 'fallback_cb' => '', 'theme_location' => 'bp_adminbar_pages1')) ?>
  140. </li>
  141. <?php endif; ?>
  142.  
  143. <?php if(has_nav_menu('bp_adminbar_pages2')): ?>
  144. <li><a href="<?php site_url() ?>"><?php echo $adminbarPages2; ?></a>
  145. <?php wp_nav_menu(array('sort_column' => 'menu_order', 'container' => '', 'fallback_cb' => '', 'theme_location' => 'bp_adminbar_pages2')) ?>
  146. </li>
  147. <?php endif; ?>
  148.  
  149. <?php endif; // end check for wp 3.0 ?>
  150. <?php ################# end WP 3.0 wp_nav_menus ########################### ?>
  151.  
  152. <?php endif; ?>
  153.  
  154. <?php
  155. }
  156.  
  157. add_action( 'bp_adminbar_menus', 'pages', 15 );
  158.  
  159. if ( $hideMainNav ):
  160. function hide_main_nav() { ?>
  161. <style type="text/css">
  162. /*<![CDATA[*/
  163. /* bp-wp-navbar - hide main site navigation */
  164. ul#nav {display:none;}
  165. /*]]>*/
  166. </style>
  167. <?php }
  168. add_action('wp_head', 'hide_main_nav');
  169. endif;
  170. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement