Version Description
- Cleaned up the way the plugin displays
- Added class to match normal widgets
- Removed the completely when no menu present
Download this release
Release Info
Developer | Mat Lipe |
Plugin | Advanced Sidebar Menu |
Version | 1.4.4 |
Comparing to | |
See all releases |
Code changes from version 2.0 to 1.4.4
- advanced-sidebar-menu.php +62 -58
- readme.txt +9 -3
- screenshot-1.PNG +0 -0
advanced-sidebar-menu.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Advanced Sidebar Menu
|
|
4 |
Plugin URI: http://www.vimm.com
|
5 |
Description: Creates dynamic menu based on child/parent relationship.
|
6 |
Author: Mat Lipe
|
7 |
-
Version: 1.4
|
8 |
Author URI: http://www.vimm.com
|
9 |
|
10 |
email: mat@lipeimagination.info
|
@@ -60,73 +60,77 @@ class advanced_sidebar_menu extends WP_Widget {
|
|
60 |
|
61 |
// adds the output to the widget area on the page
|
62 |
function widget($args, $instance) {
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
global $p;
|
69 |
-
global $post;
|
70 |
-
|
71 |
-
|
72 |
-
//makes the custom menu
|
73 |
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
$result = $wpdb->get_results( "SELECT ID FROM wp_posts WHERE post_parent = $p AND post_type='page' Order by menu_order" );
|
90 |
-
#---- if there are no children do not display the parent unless it is check to do so
|
91 |
-
if($result != false || $instance['include_childless_parent'] == 'checked' ){
|
92 |
|
93 |
-
#-- if the checkbox to include parent is checked
|
94 |
-
if( $instance['include_parent'] == 'checked' ){
|
95 |
-
$parent_toggle = TRUE;
|
96 |
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
|
103 |
//=----------------------------------- makes the link list -----------------------------------------
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
|
108 |
-
|
109 |
-
|
110 |
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
wp_list_pages("sort_column=menu_order&title_li=&echo=1&depth=3&child_of=".$pID->ID);
|
115 |
|
116 |
-
|
|
|
|
|
117 |
|
118 |
-
|
119 |
|
120 |
-
|
121 |
-
|
122 |
-
#-- if the options above echoed the parent and therefore added another ul
|
123 |
if( $parent_toggle == TRUE ){
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
}
|
132 |
-
|
|
|
|
|
|
4 |
Plugin URI: http://www.vimm.com
|
5 |
Description: Creates dynamic menu based on child/parent relationship.
|
6 |
Author: Mat Lipe
|
7 |
+
Version: 1.4.4
|
8 |
Author URI: http://www.vimm.com
|
9 |
|
10 |
email: mat@lipeimagination.info
|
60 |
|
61 |
// adds the output to the widget area on the page
|
62 |
function widget($args, $instance) {
|
63 |
+
global $wpdb;
|
64 |
+
global $p;
|
65 |
+
global $post;
|
66 |
+
|
67 |
+
//makes the custom menu
|
|
|
|
|
|
|
|
|
|
|
68 |
|
69 |
+
#-- if the post has parrents
|
70 |
+
if($post->ancestors){
|
71 |
+
$parent = $wpdb->get_var( "SELECT post_parent from wp_posts WHERE ID=".$post->ID );
|
72 |
|
73 |
+
//--- If there is a parent of the post set $p to it and check if there is a parent as well
|
74 |
+
while($parent != FALSE){
|
75 |
+
$p = $parent;
|
76 |
+
$parent = $wpdb->get_var( "SELECT post_parent from wp_posts WHERE ID=".$parent);
|
77 |
+
}
|
78 |
|
79 |
+
} else {
|
80 |
+
#--------- If this is the parent ------------------------------------------------
|
81 |
+
$p = $post->ID;
|
82 |
+
}
|
|
|
|
|
|
|
|
|
83 |
|
|
|
|
|
|
|
84 |
|
85 |
+
$result = $wpdb->get_results( "SELECT ID FROM wp_posts WHERE post_parent = $p AND post_type='page' Order by menu_order" );
|
86 |
+
|
87 |
+
#---- if there are no children do not display the parent unless it is check to do so
|
88 |
+
if($result != false || $instance['include_childless_parent'] == 'checked' ){
|
89 |
+
|
90 |
+
//Start the menu
|
91 |
+
echo '<div id="'.$args['widget_id'].'" class="advanced-sidebar-menu widget">';
|
92 |
+
|
93 |
+
|
94 |
+
echo '<ul class="parent-sidebar-menu" >';
|
95 |
+
#-- if the checkbox to include parent is checked
|
96 |
+
if( $instance['include_parent'] == 'checked' ){
|
97 |
+
$parent_toggle = TRUE;
|
98 |
+
|
99 |
+
#-- list the parent page
|
100 |
+
wp_list_pages("sort_column=menu_order&title_li=&echo=1&depth=1&include=".$p);
|
101 |
+
echo '<ul class="child-sidebar-menu">';
|
102 |
+
}
|
103 |
+
}
|
104 |
|
105 |
//=----------------------------------- makes the link list -----------------------------------------
|
106 |
+
foreach($result as $pID){
|
107 |
+
#--echo the current page from the $result
|
108 |
+
wp_list_pages("sort_column=menu_order&title_li=&echo=1&depth=1&include=".$pID->ID);
|
109 |
|
110 |
+
#-- if the link that was just listed is the current page we are on
|
111 |
+
if($pID->ID == $post->ID or $pID->ID == $post->post_parent or in_array($pID->ID, $post->ancestors) ){
|
112 |
|
113 |
+
#-- Create a new menu with all the children under it
|
114 |
+
echo '<ul class="grandchild-sidebar-menu">';
|
|
|
|
|
115 |
|
116 |
+
wp_list_pages("sort_column=menu_order&title_li=&echo=1&depth=3&child_of=".$pID->ID);
|
117 |
+
|
118 |
+
echo '</ul>';
|
119 |
|
120 |
+
}
|
121 |
|
122 |
+
}
|
123 |
+
#-- if the options above echoed the parent and therefore added another ul
|
|
|
124 |
if( $parent_toggle == TRUE ){
|
125 |
+
echo '</ul>';
|
126 |
+
}
|
127 |
+
|
128 |
+
#-- If there was a menu close it off
|
129 |
+
if($result != false || $instance['include_childless_parent'] == 'checked' ){
|
130 |
+
|
131 |
+
echo '</ul></div><!-- end of very-custom-menu -->';
|
132 |
+
}
|
133 |
+
|
134 |
+
} #== /widget()
|
135 |
+
|
136 |
+
} #== /Class
|
readme.txt
CHANGED
@@ -4,8 +4,8 @@ Donate link: http://lipeimagination.info/contact/
|
|
4 |
Tags: menus, sidebar menu, heirchy
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.2.1
|
7 |
-
Stable tag: 1.4
|
8 |
-
Version: 1.4
|
9 |
|
10 |
== Description ==
|
11 |
|
@@ -39,11 +39,17 @@ As of version 1.1 this will automatically generate class names for each level fo
|
|
39 |
|
40 |
== Screenshots ==
|
41 |
|
42 |
-
|
43 |
|
44 |
|
45 |
== Changelog ==
|
46 |
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
= 1.4 =
|
48 |
* Removed Menu from pages with no children
|
49 |
* Added a checkbox for including menu on page with no children
|
4 |
Tags: menus, sidebar menu, heirchy
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.2.1
|
7 |
+
Stable tag: 1.4.4
|
8 |
+
Version: 1.4.4
|
9 |
|
10 |
== Description ==
|
11 |
|
39 |
|
40 |
== Screenshots ==
|
41 |
|
42 |
+
1. The Simple to use widget
|
43 |
|
44 |
|
45 |
== Changelog ==
|
46 |
|
47 |
+
= 1.4.4 =
|
48 |
+
* Cleaned up the way the plugin displays
|
49 |
+
* Added class to match normal widgets
|
50 |
+
* Removed the <div> completely when no menu present
|
51 |
+
|
52 |
+
|
53 |
= 1.4 =
|
54 |
* Removed Menu from pages with no children
|
55 |
* Added a checkbox for including menu on page with no children
|
screenshot-1.PNG
CHANGED
Binary file
|