Debug Bar - Version 0.3

Version Description

Added WordPress Query infomation Added Request parsing information

Download this release

Release Info

Developer westi
Plugin Icon 128x128 Debug Bar
Version 0.3
Comparing to
See all releases

Code changes from version 0.2 to 0.3

Files changed (4) hide show
  1. debug-bar.css +1 -1
  2. debug-bar.dev.css +128 -119
  3. debug-bar.php +170 -35
  4. readme.txt +11 -3
debug-bar.css CHANGED
@@ -1 +1 @@
1
- #querylist{font-family:Arial,Tahoma,sans-serif;display:none;position:absolute;top:50px;left:50px;right:50px;background:#fff;padding:20px;-moz-box-shadow:0 0 15px #888;-webkit-box-shadow:0 0 15px #888;box-shadow:0 0 15px #888;z-index:99999;border:10px solid #f0f0f0;color:#000;line-height:150%!important;}#querylist pre{font-size:12px;padding:10px;}#querylist h1{font-family:georgia,times,serif;text-align:center;font-size:24px;padding:20px 5px;background:#eee;color:#555;margin:0;}#querylist div#debug-status{background:#ccc;color:#fff;overflow:hidden;height:21px;font-size:14px;font-family:georgia,times,serif;padding:7px 15px;}#querylist .left{float:left;}#querylist .right{float:right;}#querylist h1,#querylist h2,#querylist h3{font-weight:normal;}#querylist ul.debug-menu-links{clear:left;background:#ccc;padding:10px 15px 0;overflow:hidden;list-style:none;margin:0;padding:0 0 0 15px;}#querylist ul.debug-menu-links li{float:left;margin-right:10px;margin-bottom:0!important;}#querylist ul.debug-menu-links li a{outline:none;display:block;padding:5px 9px;margin-right:0;background:#bbb;color:#fff!important;text-decoration:none!important;font-weight:normal;font-size:12px;color:#555;-webkit-border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px;}#querylist ul.debug-menu-links li.current a{background:#fff;color:#555!important;}#querylist h2{float:left;min-width:150px;border:1px solid #eee;padding:5px 10px 15px;clear:none;important;text-align:center;font-family:georgia,times,serif;font-size:28px;margin:15px 10px 15px 0!important;}#querylist h2 span{font-size:12px;color:#888;text-transform:uppercase;white-space:nowrap;display:block;margin-bottom:5px;}#object-cache-stats h2{border:none;float:none;text-align:left;font-size:22px;margin-bottom:0;}#object-cache-stats ul.debug-menu-links{padding:0;margin:0;background:none;}#object-cache-stats ul.debug-menu-links li{float:left;margin-bottom:10px!important;background:none!important;border:1px solid #eee!important;color:#555!important;}#object-cache-stats ul.debug-menu-links li.current a{background:#ccc!important;color:#fff!important;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:0;-moz-border-radius-topleft:0;}#object-cache-stats ul.debug-menu-links li a{background:none;color:#555!important;overflow:hidden;}#querylist h3{margin-bottom:15px;}#querylist ol#wpd-queries{padding:0!important;margin:0!important;list-style:none;clear:left;}#querylist ol#wpd-queries li{padding:10px;background:#f0f0f0;margin:0 0 10px 0;}#querylist ol#wpd-queries li div.qdebug{background:#e8e8e8;margin:10px -10px -10px -10px;padding:5px 150px 5px 5px;font-size:11px;position:relative;min-height:20px;}#querylist ol#wpd-queries li div.qdebug span{position:absolute;right:10px;top:5px;white-space:nowrap;}#querylist a{text-decoration:underline!important;color:blue!important;}#querylist a:hover{text-decoration:none!important;}#querylist .debug-menu-target{display:none;}#querylist ol{font:12px Monaco,"Courier New",Courier,Fixed!important;line-height:180%!important;}#wpadminbar #admin-bar-micro ul li{list-style-type:none;position:relative;margin:0;padding:0;}#wpadminbar #admin-bar-micro ul ul,#wpadminbar #admin-bar-micro #awaiting-mod,#wpadminbar .ab-sadmin .count-0{display:none!important;}#wpadminbar #admin-bar-micro ul li:hover>ul{display:block;position:absolute;top:-1px;left:100%;}#wpadminbar #admin-bar-micro li a{display:block;text-decoration:none;}#wpadminbar #admin-bar-micro li li a{background:#ddd;}#wpadminbar #admin-bar-micro li li li a{background:#fff;}#debug-bar-php ol.debug-bar-php-list{padding:0!important;margin:0!important;list-style:none;clear:left;}#debug-bar-php ol.debug-bar-php-list li{padding:10px;margin:0 0 10px 0;}#debug-bar-php ol.debug-bar-php-list li.debug-bar-php-warning{background:red;}#debug-bar-php ol.debug-bar-php-list li.debug-bar-php-notice{background:orange;}#debug-bar-deprecated ol.debug-bar-deprecated-list{padding:0!important;margin:0!important;list-style:none;clear:left;}#debug-bar-deprecated ol.debug-bar-deprecated-list li{padding:10px;margin:0 0 10px 0;background:#f0f0f0;}#wpadminbar li.ab-php-warning{background:#d00;}#wpadminbar li.ab-php-notice{background:#d50;}
1
+ div#wpadminbar li.ab-debug-bar{float:right;}#querylist{font-family:Arial,Tahoma,sans-serif;display:none;position:absolute;top:50px;left:50px;right:50px;background:#fff;padding:20px;-moz-box-shadow:0 0 15px #888;-webkit-box-shadow:0 0 15px #888;box-shadow:0 0 15px #888;z-index:99999;border:10px solid #f0f0f0;color:#000;line-height:150%!important;}#querylist pre{font-size:12px;padding:10px;}#querylist h1{font-family:georgia,times,serif;text-align:center;font-size:24px;padding:20px 5px;background:#eee;color:#555;margin:0;}#querylist div#debug-status{background:#ccc;color:#fff;overflow:hidden;height:21px;font-size:14px;font-family:georgia,times,serif;padding:7px 15px;}#querylist .left{float:left;}#querylist .right{float:right;}#querylist h1,#querylist h2,#querylist h3{font-weight:normal;}#querylist ul.debug-menu-links{clear:left;background:#ccc;padding:10px 15px 0;overflow:hidden;list-style:none;margin:0;padding:0 0 0 15px;}#querylist ul.debug-menu-links li{float:left;margin-right:10px;margin-bottom:0!important;}#querylist ul.debug-menu-links li a{outline:none;display:block;padding:5px 9px;margin-right:0;background:#bbb;color:#fff!important;text-decoration:none!important;font-weight:normal;font-size:12px;color:#555;-webkit-border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px;}#querylist ul.debug-menu-links li.current a{background:#fff;color:#555!important;}#querylist h2{float:left;min-width:150px;border:1px solid #eee;padding:5px 10px 15px;clear:none;important;text-align:center;font-family:georgia,times,serif;font-size:28px;margin:15px 10px 15px 0!important;}#querylist h2 span{font-size:12px;color:#888;text-transform:uppercase;white-space:nowrap;display:block;margin-bottom:5px;}#object-cache-stats h2{border:none;float:none;text-align:left;font-size:22px;margin-bottom:0;}#object-cache-stats ul.debug-menu-links{padding:0;margin:0;background:none;}#object-cache-stats ul.debug-menu-links li{float:left;margin-bottom:10px!important;background:none!important;border:1px solid #eee!important;color:#555!important;}#object-cache-stats ul.debug-menu-links li.current a{background:#ccc!important;color:#fff!important;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:0;-moz-border-radius-topleft:0;}#object-cache-stats ul.debug-menu-links li a{background:none;color:#555!important;overflow:hidden;}#querylist h3{margin-bottom:15px;}#querylist ol#wpd-queries{padding:0!important;margin:0!important;list-style:none;clear:left;}#querylist ol#wpd-queries li{padding:10px;background:#f0f0f0;margin:0 0 10px 0;}#querylist ol#wpd-queries li div.qdebug{background:#e8e8e8;margin:10px -10px -10px -10px;padding:5px 150px 5px 5px;font-size:11px;position:relative;min-height:20px;}#querylist ol#wpd-queries li div.qdebug span{position:absolute;right:10px;top:5px;white-space:nowrap;}#querylist a{text-decoration:underline!important;color:blue!important;}#querylist a:hover{text-decoration:none!important;}#querylist .debug-menu-target{display:none;}#querylist ol{font:12px Monaco,"Courier New",Courier,Fixed!important;line-height:180%!important;}#debug-bar-php ol.debug-bar-php-list{padding:0!important;margin:0!important;list-style:none;clear:left;}#debug-bar-php ol.debug-bar-php-list li{padding:10px;margin:0 0 10px 0;}#debug-bar-php ol.debug-bar-php-list li.debug-bar-php-warning{background:red;}#debug-bar-php ol.debug-bar-php-list li.debug-bar-php-notice{background:orange;}#debug-bar-deprecated ol.debug-bar-deprecated-list{padding:0!important;margin:0!important;list-style:none;clear:left;}#debug-bar-deprecated ol.debug-bar-deprecated-list li{padding:10px;margin:0 0 10px 0;background:#f0f0f0;}#wpadminbar li.ab-php-warning{background:#d00;}#wpadminbar li.ab-php-notice{background:#d50;}#debug-bar-wp-query ol.debug-bar-wp-query-list{padding:0!important;margin:0!important;list-style:none;clear:left;}#debug-bar-wp-query ol.debug-bar-wp-query-list li,#debug-bar-wp-query p,#debug-bar-request p{padding:10px;margin:0 0 10px 0;background:#f0f0f0;}#debug-bar-wp-query h3,#debug-bar-request h3{float:none;clear:both;font-family:georgia,times,serif;font-size:22px;margin:15px 10px 15px 0!important;}
debug-bar.dev.css CHANGED
@@ -1,6 +1,11 @@
1
  /**
2
  * Super admin styling
3
  */
 
 
 
 
 
4
  #querylist {
5
  font-family: Arial, Tahoma, sans-serif;
6
  display: none;
@@ -18,6 +23,7 @@
18
  color: #000;
19
  line-height: 150% !important;
20
  }
 
21
  #querylist pre {
22
  font-size: 12px;
23
  padding: 10px;
@@ -32,6 +38,7 @@
32
  color: #555;
33
  margin: 0;
34
  }
 
35
  #querylist div#debug-status {
36
  background: #ccc;
37
  color: #fff;
@@ -41,9 +48,11 @@
41
  font-family: georgia, times, serif;
42
  padding: 7px 15px;
43
  }
 
44
  #querylist .left {
45
  float: left;
46
  }
 
47
  #querylist .right {
48
  float: right;
49
  }
@@ -61,32 +70,34 @@
61
  margin: 0;
62
  padding: 0 0 0 15px;
63
  }
64
- #querylist ul.debug-menu-links li {
65
- float: left;
66
- margin-right: 10px;
67
- margin-bottom: 0 !important;
68
- }
69
-
70
- #querylist ul.debug-menu-links li a {
71
- outline: none;
72
- display: block;
73
- padding: 5px 9px;
74
- margin-right: 0;
75
- background: #bbb;
76
- color: #fff !important;
77
- text-decoration: none !important;
78
- font-weight: normal;
79
- font-size: 12px;
80
- color: #555;
81
- -webkit-border-top-right-radius: 4px;
82
- -webkit-border-top-left-radius: 4px;
83
- -moz-border-radius-topright: 4px;
84
- -moz-border-radius-topleft: 4px;
85
- }
86
- #querylist ul.debug-menu-links li.current a {
87
- background: #fff;
88
- color: #555 !important;
89
- }
 
 
90
 
91
  #querylist h2 {
92
  float: left;
@@ -100,14 +111,15 @@
100
  font-size: 28px;
101
  margin: 15px 10px 15px 0 !important;
102
  }
103
- #querylist h2 span {
104
- font-size: 12px;
105
- color: #888;
106
- text-transform: uppercase;
107
- white-space: nowrap;
108
- display: block;
109
- margin-bottom: 5px;
110
- }
 
111
 
112
  #object-cache-stats h2 {
113
  border: none;
@@ -122,27 +134,29 @@
122
  margin: 0;
123
  background: none;
124
  }
125
- #object-cache-stats ul.debug-menu-links li {
126
- float: left;
127
- margin-bottom: 10px !important;
128
- background: none !important;
129
- border: 1px solid #eee !important;
130
- color: #555 !important;
131
- }
132
- #object-cache-stats ul.debug-menu-links li.current a {
133
- background: #ccc !important;
134
- color: #fff !important;
135
- -webkit-border-top-right-radius: 0;
136
- -webkit-border-top-left-radius: 0;
137
- -moz-border-radius-topright: 0;
138
- -moz-border-radius-topleft: 0;
139
- }
140
-
141
- #object-cache-stats ul.debug-menu-links li a {
142
- background: none;
143
- color: #555 !important;
144
- overflow: hidden;
145
- }
 
 
146
 
147
  #querylist h3 {
148
  margin-bottom: 15px;
@@ -154,34 +168,38 @@
154
  list-style: none;
155
  clear: left;
156
  }
157
- #querylist ol#wpd-queries li {
158
- padding: 10px;
159
- background: #f0f0f0;
160
- margin: 0 0 10px 0;
161
- }
162
- #querylist ol#wpd-queries li div.qdebug {
163
- background: #e8e8e8;
164
- margin: 10px -10px -10px -10px;
165
- padding: 5px 150px 5px 5px;
166
- font-size: 11px;
167
- position: relative;
168
- min-height: 20px;
169
- }
170
-
171
- #querylist ol#wpd-queries li div.qdebug span {
172
- position: absolute;
173
- right: 10px;
174
- top: 5px;
175
- white-space: nowrap;
176
- }
 
 
177
 
178
  #querylist a {
179
  text-decoration: underline !important;
180
  color: blue !important;
181
  }
 
182
  #querylist a:hover {
183
  text-decoration: none !important;
184
  }
 
185
  #querylist .debug-menu-target {
186
  display: none;
187
  }
@@ -191,32 +209,6 @@
191
  line-height: 180% !important;
192
  }
193
 
194
- #wpadminbar #admin-bar-micro ul li {
195
- list-style-type: none;
196
- position: relative;
197
- margin: 0;
198
- padding: 0;
199
- }
200
- #wpadminbar #admin-bar-micro ul ul, #wpadminbar #admin-bar-micro #awaiting-mod, #wpadminbar .ab-sadmin .count-0 {
201
- display: none !important;
202
- }
203
- #wpadminbar #admin-bar-micro ul li:hover > ul {
204
- display: block;
205
- position: absolute;
206
- top: -1px;
207
- left: 100%;
208
- }
209
- #wpadminbar #admin-bar-micro li a {
210
- display: block;
211
- text-decoration: none;
212
- }
213
- #wpadminbar #admin-bar-micro li li a {
214
- background: #ddd;
215
- }
216
- #wpadminbar #admin-bar-micro li li li a {
217
- background: #fff;
218
- }
219
-
220
  #debug-bar-php ol.debug-bar-php-list {
221
  padding: 0 !important;
222
  margin: 0 !important;
@@ -224,17 +216,18 @@
224
  clear: left;
225
  }
226
 
227
- #debug-bar-php ol.debug-bar-php-list li {
228
- padding: 10px;
229
- margin: 0 0 10px 0;
230
- }
231
 
232
- #debug-bar-php ol.debug-bar-php-list li.debug-bar-php-warning {
233
- background: red;
234
- }
235
- #debug-bar-php ol.debug-bar-php-list li.debug-bar-php-notice {
236
- background: orange;
237
- }
 
238
 
239
  #debug-bar-deprecated ol.debug-bar-deprecated-list {
240
  padding: 0 !important;
@@ -243,11 +236,11 @@
243
  clear: left;
244
  }
245
 
246
- #debug-bar-deprecated ol.debug-bar-deprecated-list li {
247
- padding: 10px;
248
- margin: 0 0 10px 0;
249
- background: #f0f0f0;
250
- }
251
 
252
  #wpadminbar li.ab-php-warning {
253
  background: #dd0000;
@@ -257,7 +250,23 @@
257
  background: #dd5500;
258
  }
259
 
 
 
 
 
 
 
260
 
261
- /**
262
- * End super admin styling
263
- */
 
 
 
 
 
 
 
 
 
 
1
  /**
2
  * Super admin styling
3
  */
4
+
5
+ div#wpadminbar li.ab-debug-bar {
6
+ float: right;
7
+ }
8
+
9
  #querylist {
10
  font-family: Arial, Tahoma, sans-serif;
11
  display: none;
23
  color: #000;
24
  line-height: 150% !important;
25
  }
26
+
27
  #querylist pre {
28
  font-size: 12px;
29
  padding: 10px;
38
  color: #555;
39
  margin: 0;
40
  }
41
+
42
  #querylist div#debug-status {
43
  background: #ccc;
44
  color: #fff;
48
  font-family: georgia, times, serif;
49
  padding: 7px 15px;
50
  }
51
+
52
  #querylist .left {
53
  float: left;
54
  }
55
+
56
  #querylist .right {
57
  float: right;
58
  }
70
  margin: 0;
71
  padding: 0 0 0 15px;
72
  }
73
+
74
+ #querylist ul.debug-menu-links li {
75
+ float: left;
76
+ margin-right: 10px;
77
+ margin-bottom: 0 !important;
78
+ }
79
+
80
+ #querylist ul.debug-menu-links li a {
81
+ outline: none;
82
+ display: block;
83
+ padding: 5px 9px;
84
+ margin-right: 0;
85
+ background: #bbb;
86
+ color: #fff !important;
87
+ text-decoration: none !important;
88
+ font-weight: normal;
89
+ font-size: 12px;
90
+ color: #555;
91
+ -webkit-border-top-right-radius: 4px;
92
+ -webkit-border-top-left-radius: 4px;
93
+ -moz-border-radius-topright: 4px;
94
+ -moz-border-radius-topleft: 4px;
95
+ }
96
+
97
+ #querylist ul.debug-menu-links li.current a {
98
+ background: #fff;
99
+ color: #555 !important;
100
+ }
101
 
102
  #querylist h2 {
103
  float: left;
111
  font-size: 28px;
112
  margin: 15px 10px 15px 0 !important;
113
  }
114
+
115
+ #querylist h2 span {
116
+ font-size: 12px;
117
+ color: #888;
118
+ text-transform: uppercase;
119
+ white-space: nowrap;
120
+ display: block;
121
+ margin-bottom: 5px;
122
+ }
123
 
124
  #object-cache-stats h2 {
125
  border: none;
134
  margin: 0;
135
  background: none;
136
  }
137
+
138
+ #object-cache-stats ul.debug-menu-links li {
139
+ float: left;
140
+ margin-bottom: 10px !important;
141
+ background: none !important;
142
+ border: 1px solid #eee !important;
143
+ color: #555 !important;
144
+ }
145
+
146
+ #object-cache-stats ul.debug-menu-links li.current a {
147
+ background: #ccc !important;
148
+ color: #fff !important;
149
+ -webkit-border-top-right-radius: 0;
150
+ -webkit-border-top-left-radius: 0;
151
+ -moz-border-radius-topright: 0;
152
+ -moz-border-radius-topleft: 0;
153
+ }
154
+
155
+ #object-cache-stats ul.debug-menu-links li a {
156
+ background: none;
157
+ color: #555 !important;
158
+ overflow: hidden;
159
+ }
160
 
161
  #querylist h3 {
162
  margin-bottom: 15px;
168
  list-style: none;
169
  clear: left;
170
  }
171
+
172
+ #querylist ol#wpd-queries li {
173
+ padding: 10px;
174
+ background: #f0f0f0;
175
+ margin: 0 0 10px 0;
176
+ }
177
+
178
+ #querylist ol#wpd-queries li div.qdebug {
179
+ background: #e8e8e8;
180
+ margin: 10px -10px -10px -10px;
181
+ padding: 5px 150px 5px 5px;
182
+ font-size: 11px;
183
+ position: relative;
184
+ min-height: 20px;
185
+ }
186
+
187
+ #querylist ol#wpd-queries li div.qdebug span {
188
+ position: absolute;
189
+ right: 10px;
190
+ top: 5px;
191
+ white-space: nowrap;
192
+ }
193
 
194
  #querylist a {
195
  text-decoration: underline !important;
196
  color: blue !important;
197
  }
198
+
199
  #querylist a:hover {
200
  text-decoration: none !important;
201
  }
202
+
203
  #querylist .debug-menu-target {
204
  display: none;
205
  }
209
  line-height: 180% !important;
210
  }
211
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
212
  #debug-bar-php ol.debug-bar-php-list {
213
  padding: 0 !important;
214
  margin: 0 !important;
216
  clear: left;
217
  }
218
 
219
+ #debug-bar-php ol.debug-bar-php-list li {
220
+ padding: 10px;
221
+ margin: 0 0 10px 0;
222
+ }
223
 
224
+ #debug-bar-php ol.debug-bar-php-list li.debug-bar-php-warning {
225
+ background: red;
226
+ }
227
+
228
+ #debug-bar-php ol.debug-bar-php-list li.debug-bar-php-notice {
229
+ background: orange;
230
+ }
231
 
232
  #debug-bar-deprecated ol.debug-bar-deprecated-list {
233
  padding: 0 !important;
236
  clear: left;
237
  }
238
 
239
+ #debug-bar-deprecated ol.debug-bar-deprecated-list li {
240
+ padding: 10px;
241
+ margin: 0 0 10px 0;
242
+ background: #f0f0f0;
243
+ }
244
 
245
  #wpadminbar li.ab-php-warning {
246
  background: #dd0000;
250
  background: #dd5500;
251
  }
252
 
253
+ #debug-bar-wp-query ol.debug-bar-wp-query-list {
254
+ padding: 0 !important;
255
+ margin: 0 !important;
256
+ list-style: none;
257
+ clear: left;
258
+ }
259
 
260
+ #debug-bar-wp-query ol.debug-bar-wp-query-list li, #debug-bar-wp-query p, #debug-bar-request p {
261
+ padding: 10px;
262
+ margin: 0 0 10px 0;
263
+ background: #f0f0f0;
264
+ }
265
+
266
+ #debug-bar-wp-query h3, #debug-bar-request h3 {
267
+ float: none;
268
+ clear: both;
269
+ font-family: georgia, times, serif;
270
+ font-size: 22px;
271
+ margin: 15px 10px 15px 0 !important;
272
+ }
debug-bar.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin URI: http://wordpress.org/extend/plugins/debug-bar/
5
  Description: Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
6
  Author: wordpressdotorg
7
- Version: 0.2
8
  Author URI: http://wordpress.org/
9
  */
10
 
@@ -23,9 +23,9 @@ function debug_bar_menu() {
23
  if ( ! is_super_admin() || ! is_admin_bar_showing() )
24
  return;
25
 
26
- $class = 'ab-sadmin';
27
  if ( count( $GLOBALS['_debug_bar_warnings'] ) )
28
- $class .= ' ab-php-warning';
29
  elseif ( count( $GLOBALS['_debug_bar_notices'] ) )
30
  $class .= ' ab-php-notice';
31
 
@@ -39,13 +39,13 @@ function debug_bar_menu_init() {
39
  return;
40
 
41
  $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
42
- wp_enqueue_style( 'admin-bar-debug', WP_PLUGIN_URL . "/debug-bar/debug-bar$suffix.css", array(), '20101112' );
43
- wp_enqueue_script( 'admin-bar-debug', WP_PLUGIN_URL . "/debug-bar/debug-bar$suffix.js", array(), '20101109' );
44
 
45
  // Silence E_NOTICE for deprecated usage.
46
  foreach ( array( 'function', 'file', 'argument' ) as $item )
47
  add_filter( "deprecated_{$item}_trigger_error", '__return_false' );
48
-
49
  }
50
  add_action('admin_bar_init', 'debug_bar_menu_init');
51
 
@@ -53,7 +53,7 @@ function debug_bar_list() {
53
  global $wpdb, $wp_object_cache;
54
 
55
  if ( ! is_super_admin() || ! is_admin_bar_showing() )
56
- return;
57
 
58
  $debugs = array();
59
 
@@ -66,13 +66,17 @@ function debug_bar_list() {
66
  if ( WP_DEBUG ) {
67
  $debugs['php'] = array( __('Notices / Warnings'), 'debug_bar_php' );
68
  }
69
-
70
  $debugs['deprecated'] = array( __('Deprecated'), 'debug_bar_deprecated' );
 
 
 
 
71
 
72
  $debugs = apply_filters( 'debug_bar_list', $debugs );
73
 
74
  if ( empty($debugs) )
75
- return;
76
 
77
  ?>
78
  <div align='left' id='querylist'>
@@ -170,14 +174,18 @@ function debug_bar_php() {
170
  echo "<div id='debug-bar-php'>";
171
  echo '<h2><span>Total Warnings:</span>' . number_format( count( $_debug_bar_warnings ) ) . "</h2>\n";
172
  echo '<h2><span>Total Notices:</span>' . number_format( count( $_debug_bar_notices ) ) . "</h2>\n";
173
- echo '<ol class="debug-bar-php-list">';
174
- foreach ( $_debug_bar_warnings as $location => $message)
175
- echo "<li class='debug-bar-php-warning'>WARNING: ".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
176
- echo '</ol>';
177
- echo '<ol class="debug-bar-php-list">';
178
- foreach ( $_debug_bar_notices as $location => $message)
179
- echo "<li class='debug-bar-php-notice'>NOTICE: ".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
180
- echo '</ol>';
 
 
 
 
181
  echo "</div>";
182
  }
183
 
@@ -187,32 +195,158 @@ function debug_bar_deprecated() {
187
  echo '<h2><span>Total Functions:</span>' . number_format( count( $_debug_bar_deprecated_functions ) ) . "</h2>\n";
188
  echo '<h2><span>Total Arguments:</span>' . number_format( count( $_debug_bar_deprecated_arguments ) ) . "</h2>\n";
189
  echo '<h2><span>Total Files:</span>' . number_format( count( $_debug_bar_deprecated_files ) ) . "</h2>\n";
190
- echo '<ol class="debug-bar-deprecated-list">';
191
- foreach ( $_debug_bar_deprecated_functions as $location => $message)
192
- echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
193
- echo '</ol>';
194
- echo '<ol class="debug-bar-deprecated-list">';
195
- foreach ( $_debug_bar_deprecated_files as $location => $message)
196
- echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
197
- echo '</ol>';
198
- echo '<ol class="debug-bar-deprecated-list">';
199
- foreach ( $_debug_bar_deprecated_arguments as $location => $message)
200
- echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
201
- echo '</ol>';
 
 
 
 
 
 
202
  echo "</div>";
203
  }
204
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
205
  function debug_bar_error_handler( $type, $message, $file, $line ) {
206
  global $_debug_bar_real_error_handler, $_debug_bar_notices, $_debug_bar_warnings;
207
 
208
  switch ( $type ) {
209
  case E_WARNING :
210
  case E_USER_WARNING :
211
- $_debug_bar_warnings[$file.':'.$line] = $message;
212
  break;
213
  case E_NOTICE :
214
  case E_USER_NOTICE :
215
- $_debug_bar_notices[$file.':'.$line] = $message;
216
  break;
217
  case E_STRICT :
218
  // TODO
@@ -233,7 +367,7 @@ function debug_bar_error_handler( $type, $message, $file, $line ) {
233
  }
234
  if ( WP_DEBUG ) {
235
  $GLOBALS['_debug_bar_real_error_handler'] = set_error_handler('debug_bar_error_handler');
236
- $GLOBALS['_debug_bar_warnings'] = $GLOBALS['_debug_bar_notices'] = array();
237
  }
238
 
239
  // Alot of this code is massaged from nacin's log-deprecated-notices plugin
@@ -252,7 +386,7 @@ function debug_bar_deprecated_function_run($function, $replacement, $version) {
252
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $function, $version, $replacement );
253
  else
254
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s with no alternative available.'), $function, $version );
255
-
256
  $_debug_bar_deprecated_functions[$file.':'.$line] = $message;
257
  }
258
  add_action( 'deprecated_function_run', 'debug_bar_deprecated_function_run', 10, 3 );
@@ -268,7 +402,7 @@ function debug_bar_deprecated_file_included( $old_file, $replacement, $version,
268
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $file_abs, $version, $replacement ) . $message;
269
  else
270
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s with no alternative available.'), $file_abs, $version ) . $message;
271
-
272
  $_debug_bar_deprecated_files[$file.':'.$line] = $message;
273
  }
274
  add_action( 'deprecated_file_included', 'debug_bar_deprecated_file_included', 10, 4 );
@@ -282,8 +416,9 @@ function debug_bar_deprecated_argument_run( $function, $message, $version) {
282
  }
283
  $file = $backtrace[ $bt ]['file'];
284
  $line = $backtrace[ $bt ]['line'];
285
-
286
  $_debug_bar_deprecated_arguments[$file.':'.$line] = $message;
287
  }
288
  add_action( 'deprecated_argument_run', 'debug_bar_deprecated_argument_run', 10, 3 );
 
289
  ?>
4
  Plugin URI: http://wordpress.org/extend/plugins/debug-bar/
5
  Description: Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
6
  Author: wordpressdotorg
7
+ Version: 0.3
8
  Author URI: http://wordpress.org/
9
  */
10
 
23
  if ( ! is_super_admin() || ! is_admin_bar_showing() )
24
  return;
25
 
26
+ $class = 'ab-debug-bar';
27
  if ( count( $GLOBALS['_debug_bar_warnings'] ) )
28
+ $class .= ' ab-php-warning';
29
  elseif ( count( $GLOBALS['_debug_bar_notices'] ) )
30
  $class .= ' ab-php-notice';
31
 
39
  return;
40
 
41
  $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
42
+ wp_enqueue_style( 'admin-bar-debug', plugins_url("debug-bar/debug-bar$suffix.css"), array(), '20101216a' );
43
+ wp_enqueue_script( 'admin-bar-debug', plugins_url("debug-bar/debug-bar$suffix.js"), array(), '20101109' );
44
 
45
  // Silence E_NOTICE for deprecated usage.
46
  foreach ( array( 'function', 'file', 'argument' ) as $item )
47
  add_filter( "deprecated_{$item}_trigger_error", '__return_false' );
48
+
49
  }
50
  add_action('admin_bar_init', 'debug_bar_menu_init');
51
 
53
  global $wpdb, $wp_object_cache;
54
 
55
  if ( ! is_super_admin() || ! is_admin_bar_showing() )
56
+ return;
57
 
58
  $debugs = array();
59
 
66
  if ( WP_DEBUG ) {
67
  $debugs['php'] = array( __('Notices / Warnings'), 'debug_bar_php' );
68
  }
69
+
70
  $debugs['deprecated'] = array( __('Deprecated'), 'debug_bar_deprecated' );
71
+ $debugs['wp_query'] = array( __( 'WP Query' ), 'debug_bar_wp_query' );
72
+
73
+ if ( ! is_admin() )
74
+ $debugs['request'] = array( __( 'Request' ), 'debug_bar_request' );
75
 
76
  $debugs = apply_filters( 'debug_bar_list', $debugs );
77
 
78
  if ( empty($debugs) )
79
+ return;
80
 
81
  ?>
82
  <div align='left' id='querylist'>
174
  echo "<div id='debug-bar-php'>";
175
  echo '<h2><span>Total Warnings:</span>' . number_format( count( $_debug_bar_warnings ) ) . "</h2>\n";
176
  echo '<h2><span>Total Notices:</span>' . number_format( count( $_debug_bar_notices ) ) . "</h2>\n";
177
+ if ( count( $_debug_bar_warnings ) ) {
178
+ echo '<ol class="debug-bar-php-list">';
179
+ foreach ( $_debug_bar_warnings as $location => $message)
180
+ echo "<li class='debug-bar-php-warning'>WARNING: ".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
181
+ echo '</ol>';
182
+ }
183
+ if ( count( $_debug_bar_notices ) ) {
184
+ echo '<ol class="debug-bar-php-list">';
185
+ foreach ( $_debug_bar_notices as $location => $message)
186
+ echo "<li class='debug-bar-php-notice'>NOTICE: ".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
187
+ echo '</ol>';
188
+ }
189
  echo "</div>";
190
  }
191
 
195
  echo '<h2><span>Total Functions:</span>' . number_format( count( $_debug_bar_deprecated_functions ) ) . "</h2>\n";
196
  echo '<h2><span>Total Arguments:</span>' . number_format( count( $_debug_bar_deprecated_arguments ) ) . "</h2>\n";
197
  echo '<h2><span>Total Files:</span>' . number_format( count( $_debug_bar_deprecated_files ) ) . "</h2>\n";
198
+ if ( count( $_debug_bar_deprecated_functions ) ) {
199
+ echo '<ol class="debug-bar-deprecated-list">';
200
+ foreach ( $_debug_bar_deprecated_functions as $location => $message)
201
+ echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
202
+ echo '</ol>';
203
+ }
204
+ if ( count( $_debug_bar_deprecated_files ) ) {
205
+ echo '<ol class="debug-bar-deprecated-list">';
206
+ foreach ( $_debug_bar_deprecated_files as $location => $message)
207
+ echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
208
+ echo '</ol>';
209
+ }
210
+ if ( count( $_debug_bar_deprecated_arguments ) ) {
211
+ echo '<ol class="debug-bar-deprecated-list">';
212
+ foreach ( $_debug_bar_deprecated_arguments as $location => $message)
213
+ echo "<li class='debug-bar-deprecated-function'>".str_replace(ABSPATH, '', $location) . ' - ' . strip_tags($message). "</li>";
214
+ echo '</ol>';
215
+ }
216
  echo "</div>";
217
  }
218
 
219
+ function debug_bar_wp_query() {
220
+ global $template, $wp_query;
221
+
222
+ echo "<div id='debug-bar-wp-query'>";
223
+ echo '<h2><span>Queried Object ID:</span>' . get_queried_object_id() . "</h2>\n";
224
+
225
+ // Determine the query type. Follows the template loader order.
226
+ $type = '';
227
+ if ( is_404() )
228
+ $type = '404';
229
+ elseif ( is_search() )
230
+ $type = 'Search';
231
+ elseif ( is_tax() )
232
+ $type = 'Taxonomy';
233
+ elseif ( is_front_page() )
234
+ $type = 'Front Page';
235
+ elseif ( is_home() )
236
+ $type = 'Home';
237
+ elseif ( is_attachment() )
238
+ $type = 'Attachment';
239
+ elseif ( is_single() )
240
+ $type = 'Single';
241
+ elseif ( is_page() )
242
+ $type = 'Page';
243
+ elseif ( is_category() )
244
+ $type = 'Category';
245
+ elseif ( is_tag() )
246
+ $type = 'Tag';
247
+ elseif ( is_author() )
248
+ $type = 'Author';
249
+ elseif ( is_date() )
250
+ $type = 'Date';
251
+ elseif ( is_archive() )
252
+ $type = 'Archive';
253
+ elseif ( is_paged() )
254
+ $type = 'Paged';
255
+
256
+ if ( !empty($type) )
257
+ echo '<h2><span>Query Type:</span>' . $type . "</h2>\n";
258
+
259
+ if ( !empty($template) )
260
+ echo '<h2><span>Query Template:</span>' . basename($template) . "</h2>\n";
261
+
262
+ $show_on_front = get_option( 'show_on_front' );
263
+ $page_on_front = get_option( 'page_on_front' );
264
+ $page_for_posts = get_option( 'page_for_posts' );
265
+
266
+ echo '<h2><span>Show on Front:</span>' . $show_on_front . "</h2>\n";
267
+ if ( 'page' == $show_on_front ) {
268
+ echo '<h2><span>Page for Posts:</span>' . $page_for_posts . "</h2>\n";
269
+ echo '<h2><span>Page on Front:</span>' . $page_on_front . "</h2>\n";
270
+ }
271
+
272
+ echo '<div class="clear"></div>';
273
+
274
+ if ( empty($wp_query->query) )
275
+ $query = 'None';
276
+ else
277
+ $query = http_build_query( $wp_query->query );
278
+
279
+ echo '<h3>Query Arguments:</h3>';
280
+ echo '<p>' . esc_html( $query ) . '</p>';
281
+
282
+ if ( ! empty($wp_query->request) ) {
283
+ echo '<h3>Query SQL:</h3>';
284
+ echo '<p>' . esc_html( $wp_query->request ) . '</p>';
285
+ }
286
+
287
+ $object = get_queried_object();
288
+ if ( ! is_null( $object ) ) {
289
+ echo '<h3>Queried Object:</h3>';
290
+ echo '<ol class="debug-bar-wp-query-list">';
291
+ foreach ($object as $key => $value) {
292
+ echo '<li>' . $key . ' => ' . $value . '</li>';
293
+ }
294
+ echo '</ol>';
295
+ }
296
+ echo '</div>';
297
+ }
298
+
299
+ function debug_bar_request() {
300
+ global $wp;
301
+
302
+ echo "<div id='debug-bar-request'>";
303
+
304
+ if ( empty($wp->request) )
305
+ $request = 'None';
306
+ else
307
+ $request = $wp->request;
308
+
309
+ echo '<h3>Request:</h3>';
310
+ echo '<p>' . esc_html( $request ) . '</p>';
311
+
312
+ if ( empty($wp->query_string) )
313
+ $query_string = 'None';
314
+ else
315
+ $query_string = $wp->query_string;
316
+
317
+ echo '<h3>Query String:</h3>';
318
+ echo '<p>' . esc_html( $query_string ) . '</p>';
319
+
320
+ if ( empty($wp->matched_rule) )
321
+ $matched_rule = 'None';
322
+ else
323
+ $matched_rule = $wp->matched_rule;
324
+
325
+ echo '<h3>Matched Rewrite Rule:</h3>';
326
+ echo '<p>' . esc_html( $matched_rule ) . '</p>';
327
+
328
+ if ( empty($wp->matched_query) )
329
+ $matched_query = 'None';
330
+ else
331
+ $matched_query = $wp->matched_query;
332
+
333
+ echo '<h3>Matched Rewrite Query:</h3>';
334
+ echo '<p>' . esc_html( $matched_query ) . '</p>';
335
+
336
+ echo '</div>';
337
+ }
338
+
339
  function debug_bar_error_handler( $type, $message, $file, $line ) {
340
  global $_debug_bar_real_error_handler, $_debug_bar_notices, $_debug_bar_warnings;
341
 
342
  switch ( $type ) {
343
  case E_WARNING :
344
  case E_USER_WARNING :
345
+ $_debug_bar_warnings[$file.':'.$line] = $message;
346
  break;
347
  case E_NOTICE :
348
  case E_USER_NOTICE :
349
+ $_debug_bar_notices[$file.':'.$line] = $message;
350
  break;
351
  case E_STRICT :
352
  // TODO
367
  }
368
  if ( WP_DEBUG ) {
369
  $GLOBALS['_debug_bar_real_error_handler'] = set_error_handler('debug_bar_error_handler');
370
+ $GLOBALS['_debug_bar_warnings'] = $GLOBALS['_debug_bar_notices'] = array();
371
  }
372
 
373
  // Alot of this code is massaged from nacin's log-deprecated-notices plugin
386
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $function, $version, $replacement );
387
  else
388
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s with no alternative available.'), $function, $version );
389
+
390
  $_debug_bar_deprecated_functions[$file.':'.$line] = $message;
391
  }
392
  add_action( 'deprecated_function_run', 'debug_bar_deprecated_function_run', 10, 3 );
402
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $file_abs, $version, $replacement ) . $message;
403
  else
404
  $message = sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s with no alternative available.'), $file_abs, $version ) . $message;
405
+
406
  $_debug_bar_deprecated_files[$file.':'.$line] = $message;
407
  }
408
  add_action( 'deprecated_file_included', 'debug_bar_deprecated_file_included', 10, 4 );
416
  }
417
  $file = $backtrace[ $bt ]['file'];
418
  $line = $backtrace[ $bt ]['line'];
419
+
420
  $_debug_bar_deprecated_arguments[$file.':'.$line] = $message;
421
  }
422
  add_action( 'deprecated_argument_run', 'debug_bar_deprecated_argument_run', 10, 3 );
423
+
424
  ?>
readme.txt CHANGED
@@ -2,7 +2,7 @@
2
  Contributors: wordpressdotorg, ryan, westi
3
  Tags: debug
4
  Tested up to: 3.1
5
- Stable tag: 0.2
6
  Requires at least: 3.1
7
 
8
  Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
@@ -11,10 +11,18 @@ Adds a debug menu to the admin bar that shows query, cache, and other helpful de
11
 
12
  Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
13
 
 
 
 
 
14
  == Upgrade Notice ==
15
 
 
 
 
 
16
  = 0.2 =
17
- Added PHP Notice / Warning tracking
18
  Added deprecated function usage tracking
19
 
20
  = 0.1 =
@@ -23,7 +31,7 @@ Initial Release
23
  == Changelog ==
24
 
25
  = 0.2 =
26
- Added PHP Notice / Warning tracking
27
  Added deprecated function usage tracking
28
 
29
  = 0.1 =
2
  Contributors: wordpressdotorg, ryan, westi
3
  Tags: debug
4
  Tested up to: 3.1
5
+ Stable tag: 0.3
6
  Requires at least: 3.1
7
 
8
  Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
11
 
12
  Adds a debug menu to the admin bar that shows query, cache, and other helpful debugging information.
13
 
14
+ A must for developers!
15
+
16
+ When WP_DEBUG is enabled it also tracks PHP Warnings and Notices to make them easier to find.
17
+
18
  == Upgrade Notice ==
19
 
20
+ = 0.3 =
21
+ Added WordPress Query infomation
22
+ Added Request parsing information
23
+
24
  = 0.2 =
25
+ Added PHP Notice / Warning tracking when WP_DEBUG enabled
26
  Added deprecated function usage tracking
27
 
28
  = 0.1 =
31
  == Changelog ==
32
 
33
  = 0.2 =
34
+ Added PHP Notice / Warning tracking when WP_DEBUG enabled
35
  Added deprecated function usage tracking
36
 
37
  = 0.1 =