Breadcrumb Trail - Version 0.2.1

Version Description

Download this release

Release Info

Developer greenshady
Plugin Icon 128x128 Breadcrumb Trail
Version 0.2.1
Comparing to
See all releases

Code changes from version 0.1 to 0.2.1

Files changed (7) hide show
  1. breadcrumb-trail.php +143 -171
  2. breadcrumb-trail.pot +35 -18
  3. en_EN.mo +0 -0
  4. en_EN.po +35 -18
  5. readme.css +47 -250
  6. readme.html +4 -7
  7. readme.txt +11 -4
breadcrumb-trail.php CHANGED
@@ -3,7 +3,7 @@
3
* Plugin Name: Breadcrumb Trail
4
* Plugin URI: http://justintadlock.com/archives/2009/04/05/breadcrumb-trail-wordpress-plugin
5
* Description: A WordPress plugin that gives you the <code>breadcrumb_trail()</code> template tag to use anywhere in your theme to show a breadcrumb menu.
6
- * Version: 0.1
7
* Author: Justin Tadlock
8
* Author URI: http://justintadlock.com
9
*
@@ -12,8 +12,8 @@
12
* Two filter hooks are available for developers to change the
13
* output: breadcrumb_trail_args and breadcrumb_trail.
14
*
15
- * @copyright 2008 - 2009
16
- * @version 0.1
17
* @author Justin Tadlock
18
* @link http://justintadlock.com/archives/2009/04/05/breadcrumb-trail-wordpress-plugin
19
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
@@ -33,197 +33,169 @@
33
*
34
* @since 0.1
35
*/
36
- load_plugin_textdomain( 'breadcrumb_trail' );
37
38
/**
39
- * Shows a breadcrumb for all types of pages
40
- * Themes and plugins can filter $args or input directly
41
- * Allow filtering of only the $args using get_the_breadcrumb_args
42
- *
43
- * Check for page templates in use: archives.php, authors.php, categories.php, tags.php
44
- * This is to set the breadcrumb for archives: date.php, author.php, category.php, tag.php
45
- * If in use, add the first page found using it as part of the breadcrumb for archives
46
*
47
* @since 0.1
48
- * @param array mixed arguments for the menu
49
- * @return string Output of the breadcrumb menu
50
*/
51
function breadcrumb_trail( $args = array() ) {
52
- global $post;
53
54
- // Set up the default arguments for the breadcrumb
55
$defaults = array(
56
'separator' => '/',
57
- 'before' => '<span class="breadcrumb-title">' . __('Browse:', 'breadcrumb_trail') . '</span>',
58
'after' => false,
59
'front_page' => true,
60
- 'show_home' => __('Home', 'breadcrumb_trail'),
61
'format' => 'flat', // Implement later
62
- 'echo' => true,
63
);
64
65
- // Apply filters to the arguments
66
$args = apply_filters( 'breadcrumb_trail_args', $args );
67
68
- // Parse the arguments and extract them for easy variable naming
69
- $args = wp_parse_args( $args, $defaults );
70
- extract( $args );
71
72
- // Put spaces around the separator
73
- $separator = ' ' . $separator . ' ';
74
75
- // If it is the front page
76
- // Return no value
77
if ( is_front_page() && !$front_page )
78
- return;
79
80
- if ( ( is_home() && is_front_page() ) && ( !$front_page ) )
81
- return;
82
83
- // Begin the breadcrumb
84
- $breadcrumb = '<div class="breadcrumb breadcrumbs"><div class="breadcrumb-trail">';
85
- $breadcrumb .= $before;
86
- if ( $show_home ) :
87
- $breadcrumb .= ' <a href="' . get_bloginfo( 'url' ) . '" title="' . get_bloginfo( 'name' ) . '" rel="home" class="trail-begin">' . $show_home . '</a>';
88
- if ( !is_home() && !is_front_page() )
89
- $breadcrumb .= $separator;
90
- endif;
91
-
92
- // Pages
93
- if ( is_page() && !is_front_page() ) :
94
- $parents = array();
95
- $parent_id = $post->post_parent;
96
- while ( $parent_id ) :
97
- $page = get_page( $parent_id );
98
- if ( $params["link_none"] )
99
- $parents[] = get_the_title( $page->ID );
100
- else
101
- $parents[] = '<a href="' . get_permalink( $page->ID ) . '" title="' . get_the_title( $page->ID ) . '">' . get_the_title( $page->ID ) . '</a> ' . $separator;
102
- $parent_id = $page->post_parent;
103
- endwhile;
104
- $parents = array_reverse( $parents );
105
- $breadcrumb .= join( ' ', $parents );
106
- $breadcrumb .= '<span class="trail-end">' . get_the_title() . '</span>';
107
-
108
- // If home or front page
109
- elseif ( is_front_page() && $front_page ) :
110
- $breadcrumb = '<div class="breadcrumb breadcrumbs"><div class="breadcrumb-trail">' . $before . ' ' . $show_home;
111
-
112
- // If attachment
113
- elseif ( is_attachment() ) :
114
- $breadcrumb .= '<a href="' . get_permalink( $post->post_parent ) . '" title="' . get_the_title( $post->post_parent ) . '">' . get_the_title( $post->post_parent ) . '</a>';
115
- $breadcrumb .= $separator;
116
- $breadcrumb .= '<span class="trail-end">' . get_the_title() . '</span>';
117
-
118
- // Single posts
119
- elseif ( is_single() ) :
120
- $categories = get_the_category( ', ' );
121
- if ( $categories ) :
122
- foreach ( $categories as $cat ) :
123
- $cats[] = '<a href="' . get_category_link( $cat->term_id ) . '" title="' . $cat->name . '">' . $cat->name . '</a>';
124
- endforeach;
125
- $breadcrumb .= join( ', ', $cats );
126
- $breadcrumb .= $separator;
127
- endif;
128
- $breadcrumb .= '<span class="trail-end">' . single_post_title( false, false ) . '</span>';
129
-
130
- // Categories
131
- elseif ( is_category() ) :
132
- $pages = get_pages( array(
133
- 'title_li' => '',
134
- 'meta_key' => '_wp_page_template',
135
- 'meta_value' => 'categories.php',
136
- 'echo' => 0
137
- ) );
138
- if ( $pages && $pages[0]->ID !== get_option( 'page_on_front') )
139
- $breadcrumb .= '<a href="' . get_page_link( $pages[0]->ID ) . '" title="' . $pages[0]->post_title . '">' . $pages[0]->post_title . '</a>' . $separator;
140
- // Category parents
141
- $cat = intval( get_query_var( 'cat' ) );
142
- $parent = &get_category( $cat );
143
- if ( is_wp_error( $parent ) )
144
- $parents = false;
145
- if ( $parent->parent && ( $parent->parent != $parent->term_id ) )
146
- $parents = get_category_parents( $parent->parent, true, $separator, false );
147
-
148
- if ( $parents ) $breadcrumb .= $parents;
149
- $breadcrumb .= '<span class="trail-end">' . single_cat_title( false, false ) . '</span>';
150
-
151
- // Tags
152
- elseif ( is_tag() ) :
153
- $pages = get_pages( array(
154
- 'title_li' => '',
155
- 'meta_key' => '_wp_page_template',
156
- 'meta_value' => 'tags.php',
157
- 'echo' => 0
158
- ) );
159
- if ( $pages && $pages[0]->ID !== get_option( 'page_on_front' ) )
160
- $breadcrumb .= '<a href="' . get_page_link( $pages[0]->ID ) . '" title="' . $pages[0]->post_title . '">' . $pages[0]->post_title . '</a>' . $separator;
161
- $breadcrumb .= '<span class="trail-end">' . single_tag_title( false, false ) . '</span>';
162
-
163
- // Authors
164
- elseif ( is_author() ) :
165
- $pages = get_pages( array(
166
- 'title_li' => '',
167
- 'meta_key' => '_wp_page_template',
168
- 'meta_value' => 'authors.php',
169
- 'echo' => 0
170
- ) );
171
- if ( $pages && $pages[0]->ID !== get_option( 'page_on_front' ) )
172
- $breadcrumb .= '<a href="' . get_page_link( $pages[0]->ID ) . '" title="' . $pages[0]->post_title . '">' . $pages[0]->post_title . '</a>' . $separator;
173
- $breadcrumb .= '<span class="trail-end">' . wp_title( false, false, false ) . '</span>';
174
-
175
- // Search
176
- elseif ( is_search() ) :
177
- $breadcrumb .= '<span class="trail-end">';
178
- $breadcrumb .= sprintf( __('Search results for &quot;%1$s&quot;', 'breadcrumb_trail'), attribute_escape( get_search_query() ) );
179
- $breadcrumb .= '</span>';
180
-
181
- elseif ( is_date() ) :
182
- $pages = get_pages( array(
183
- 'title_li' => '',
184
- 'meta_key' => '_wp_page_template',
185
- 'meta_value' => 'archives.php',
186
- 'echo' => 0
187
- ) );
188
- if ( $pages && $pages[0]->ID !== get_option( 'page_on_front' ) )
189
- $breadcrumb .= '<a href="' . get_page_link( $pages[0]->ID ) . '" title="' . $pages[0]->post_title . '">' . $pages[0]->post_title . '</a>' . $separator;
190
-
191
- // Day
192
- if ( is_day() ) :
193
- $breadcrumb .= '<a href="' . get_year_link( get_the_time( __('Y', 'breadcrumb_trail') ) ) . '" title="' . get_the_time( __('Y', 'breadcrumb_trail') ) . '">' . get_the_time( __('Y', 'breadcrumb_trail') ) . '</a>' . $separator;
194
- $breadcrumb .= '<a href="' . get_month_link( get_the_time( __('Y', 'breadcrumb_trail') ), get_the_time( __('m', 'breadcrumb_trail') ) ) . '" title="' . get_the_time( __('F', 'breadcrumb_trail') ) . '">' . get_the_time( __('F', 'breadcrumb_trail') ) . '</a>' . $separator;
195
- $breadcrumb .= '<span class="trail-end">' . get_the_time( __('j', 'breadcrumb_trail') ) . '</span>';
196
-
197
- // Week
198
- elseif ( get_query_var( 'w' ) ) :
199
- $breadcrumb .= '<a href="' . get_year_link( get_the_time( __('Y', 'breadcrumb_trail') ) ) . '" title="' . get_the_time( __('Y', 'breadcrumb_trail') ) . '">' . get_the_time( __('Y', 'breadcrumb_trail') ) . '</a>' . $separator;
200
- $breadcrumb .= '<span class="trail-end">' . sprintf( __('Week %1$s', 'hybrid' ), get_the_time( __('W', 'breadcrumb_trail') ) ) . '</span>';
201
-
202
- // Month
203
- elseif ( is_month() ) :
204
- $breadcrumb .= '<a href="' . get_year_link( get_the_time( __('Y', 'breadcrumb_trail') ) ) . '" title="' . get_the_time( __('Y', 'breadcrumb_trail') ) . '">' . get_the_time( __('Y', 'breadcrumb_trail') ) . '</a>' . $separator;
205
- $breadcrumb .= '<span class="trail-end">' . get_the_time( __('F', 'breadcrumb_trail') ) . '</span>';
206
-
207
- // Year
208
- elseif ( is_year() ) :
209
- $breadcrumb .= '<span class="trail-end">' . get_the_time( __('Y', 'breadcrumb_trail') ) . '</span>';
210
-
211
- endif;
212
-
213
- // 404
214
- elseif ( is_404() ) :
215
- $breadcrumb .= '<span class="trail-end">' . __('404 Not Found', 'breadcrumb_trail') . '</span>';
216
-
217
- endif;
218
-
219
- // End the breadcrumb
220
- $breadcrumb .= $after . '</div></div>';
221
-
222
- // Output the breadcrumb
223
if ( $echo )
224
- echo apply_filters( 'breadcrumb_trail', $breadcrumb );
225
else
226
- return apply_filters( 'breadcrumb_trail', $breadcrumb );
227
}
228
229
?>
3
* Plugin Name: Breadcrumb Trail
4
* Plugin URI: http://justintadlock.com/archives/2009/04/05/breadcrumb-trail-wordpress-plugin
5
* Description: A WordPress plugin that gives you the <code>breadcrumb_trail()</code> template tag to use anywhere in your theme to show a breadcrumb menu.
6
+ * Version: 0.2.1
7
* Author: Justin Tadlock
8
* Author URI: http://justintadlock.com
9
*
12
* Two filter hooks are available for developers to change the
13
* output: breadcrumb_trail_args and breadcrumb_trail.
14
*
15
+ * @copyright 2008 - 2010
16
+ * @version 0.2.1
17
* @author Justin Tadlock
18
* @link http://justintadlock.com/archives/2009/04/05/breadcrumb-trail-wordpress-plugin
19
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
33
*
34
* @since 0.1
35
*/
36
+ load_plugin_textdomain( 'breadcrumb-trail', false, 'breadcrumb-trail' );
37
38
/**
39
+ * Shows a breadcrumb for all types of pages. Themes and
40
+ * plugins can filter $args or input directly. Allow filtering of
41
+ * only the $args using get_the_breadcrumb_args.
42
*
43
* @since 0.1
44
+ * @param array $args Mixed arguments for the menu.
45
+ * @return string Output of the breadcrumb menu.
46
*/
47
function breadcrumb_trail( $args = array() ) {
48
+ global $wp_query;
49
+
50
+ /* Get the textdomain. */
51
+ $textdomain = 'breadcrumb-trail';
52
53
+ /* Set up the default arguments for the breadcrumb. */
54
$defaults = array(
55
'separator' => '/',
56
+ 'before' => '<span class="breadcrumb-title">' . __( 'Browse:', $textdomain ) . '</span>',
57
'after' => false,
58
'front_page' => true,
59
+ 'show_home' => __( 'Home', $textdomain ),
60
+ 'single_tax' => 'category',
61
'format' => 'flat', // Implement later
62
+ 'echo' => true
63
);
64
65
+ /* Apply filters to the arguments. */
66
$args = apply_filters( 'breadcrumb_trail_args', $args );
67
68
+ /* Parse the arguments and extract them for easy variable naming. */
69
+ extract( wp_parse_args( $args, $defaults ) );
70
71
+ if ( $separator )
72
+ $separator = '<span class="sep">' . $separator . '</span>';
73
74
if ( is_front_page() && !$front_page )
75
+ return apply_filters( 'breadcrumb_trail', false );
76
+
77
+ if ( $show_home && is_front_page() )
78
+ $trail['trail_end'] = "{$show_home}";
79
+ elseif ( $show_home )
80
+ $trail[] = '<a href="' . get_bloginfo( 'url' ) . '" title="' . get_bloginfo( 'name' ) . '" rel="home" class="trail-begin">' . $show_home . '</a>';
81
+
82
+ if ( is_home() && !is_front_page() ) {
83
+ $home_page = get_page( $wp_query->get_queried_object_id() );
84
+
85
+ $parent_id = $home_page->post_parent;
86
+ while ( $parent_id ) {
87
+ $page = get_page( $parent_id );
88
+ $parents[] = '<a href="' . get_permalink( $page->ID ) . '" title="' . get_the_title( $page->ID ) . '">' . get_the_title( $page->ID ) . '</a>';
89
+ $parent_id = $page->post_parent;
90
+ }
91
+ if ( $parents ) {
92
+ $parents = array_reverse( $parents );
93
+ foreach ( $parents as $parent )
94
+ $trail[] = $parent;
95
+ }
96
+ $trail['trail_end'] = get_the_title( $home_page->ID );
97
+ }
98
+
99
+ elseif ( is_singular() ) {
100
+
101
+ if ( is_page() ) {
102
+ $parent_id = $wp_query->post->post_parent;
103
+ while ( $parent_id ) {
104
+ $page = get_page( $parent_id );
105
+ $parents[] = '<a href="' . get_permalink( $page->ID ) . '" title="' . get_the_title( $page->ID ) . '">' . get_the_title( $page->ID ) . '</a>';
106
+ $parent_id = $page->post_parent;
107
+ }
108
+ if ( $parents ) {
109
+ $parents = array_reverse( $parents );
110
+ foreach ( $parents as $parent )
111
+ $trail[] = $parent;
112
+ }
113
+ }
114
+ elseif ( is_attachment() ) {
115
+ $trail[] = '<a href="' . get_permalink( $wp_query->post->post_parent ) . '" title="' . get_the_title( $wp_query->post->post_parent ) . '">' . get_the_title( $wp_query->post->post_parent ) . '</a>';
116
+ }
117
+
118
+ elseif ( is_single() ) {
119
+ if ( $single_tax && $terms = get_the_term_list( $wp_query->post->ID, $single_tax, '', ', ', '' ) )
120
+ $trail[] = $terms;
121
+ }
122
+
123
+ $trail['trail_end'] = get_the_title();
124
+ }
125
+
126
+ elseif ( is_archive() ) {
127
+
128
+ if ( is_tax() || is_category() || is_tag() ) {
129
+ $term = $wp_query->get_queried_object();
130
+
131
+ if ( is_category() && $term->parent ) {
132
+ $parents = get_category_parents( $term->parent, true, " {$separator} ", false );
133
+ if ( $parents )
134
+ $trail['trail_end'] = $parents;
135
+ }
136
+
137
+ $trail['trail_end'] .= $term->name;
138
+ }
139
+
140
+ elseif ( is_author() )
141
+ $trail['trail_end'] = get_the_author_meta( 'display_name', get_query_var( 'author' ) );
142
+
143
+ elseif ( is_time() ) {
144
+
145
+ if ( get_query_var( 'minute' ) && get_query_var( 'hour' ) )
146
+ $trail['trail_end'] = get_the_time( __( 'g:i a', $textdomain ) );
147
+
148
+ elseif ( get_query_var( 'minute' ) )
149
+ $trail['trail_end'] = sprintf( __( 'Minute %1$s', $textdomain ), get_the_time( __( 'i', $textdomain ) ) );
150
+
151
+ elseif ( get_query_var( 'hour' ) )
152
+ $trail['trail_end'] = get_the_time( __( 'g a', $textdomain ) );
153
+ }
154
+
155
+ elseif ( is_date() ) {
156
+
157
+ if ( is_day() ) {
158
+ $trail[] = '<a href="' . get_year_link( get_the_time( __( 'Y', $textdomain ) ) ) . '" title="' . get_the_time( __( 'Y', $textdomain ) ) . '">' . get_the_time( __( 'Y', $textdomain ) ) . '</a>';
159
+ $trail[] = '<a href="' . get_month_link( get_the_time( __( 'Y', $textdomain ) ), get_the_time( __( 'm', $textdomain ) ) ) . '" title="' . get_the_time( __( 'F', $textdomain ) ) . '">' . get_the_time( __( 'F', $textdomain ) ) . '</a>';
160
+ $trail['trail_end'] = get_the_time( __( 'j', $textdomain ) );
161
+ }
162
+
163
+ elseif ( get_query_var( 'w' ) ) {
164
+ $trail[] = '<a href="' . get_year_link( get_the_time( __( 'Y', $textdomain ) ) ) . '" title="' . get_the_time( __( 'Y', $textdomain ) ) . '">' . get_the_time( __( 'Y', $textdomain ) ) . '</a>';
165
+ $trail['trail_end'] = sprintf( __( 'Week %1$s', 'hybrid' ), get_the_time( __( 'W', $textdomain ) ) );
166
+ }
167
+
168
+ elseif ( is_month() ) {
169
+ $trail[] = '<a href="' . get_year_link( get_the_time( __( 'Y', $textdomain ) ) ) . '" title="' . get_the_time( __( 'Y', $textdomain ) ) . '">' . get_the_time( __( 'Y', $textdomain ) ) . '</a>';
170
+ $trail['trail_end'] = get_the_time( __( 'F', $textdomain ) );
171
+ }
172
+
173
+ elseif ( is_year() ) {
174
+ $trail['trail_end'] = get_the_time( __( 'Y', $textdomain ) );
175
+ }
176
+ }
177
+ }
178
+
179
+ elseif ( is_search() )
180
+ $trail['trail_end'] = sprintf( __( 'Search results for &quot;%1$s&quot;', $textdomain ), esc_attr( get_search_query() ) );
181
+
182
+ elseif ( is_404() )
183
+ $trail['trail_end'] = __( '404 Not Found', $textdomain );
184
+
185
+ /* Connect the breadcrumb trail. */
186
+ $breadcrumb = '<div class="breadcrumb breadcrumbs"><div class="breadcrumb-trail">';
187
+ $breadcrumb .= " {$before} ";
188
+ if ( is_array( $trail ) )
189
+ $breadcrumb .= join( " {$separator} ", $trail );
190
+ $breadcrumb .= '</div></div>';
191
192
+ $breadcrumb = apply_filters( 'breadcrumb_trail', $breadcrumb );
193
194
+ /* Output the breadcrumb. */
195
if ( $echo )
196
+ echo $breadcrumb;
197
else
198
+ return $breadcrumb;
199
}
200
201
?>
breadcrumb-trail.pot CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
msgstr ""
3
"Project-Id-Version: Breadcrumb Trail WordPress Plugin\n"
4
"Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2009-04-05 19:56+0900\n"
6
"PO-Revision-Date: \n"
7
"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
8
"Language-Team: <justin@justintadlock.com>\n"
@@ -11,54 +11,71 @@ msgstr ""
11
"Content-Transfer-Encoding: 8bit\n"
12
"X-Poedit-Language: English\n"
13
"X-Poedit-Country: UNITED STATES\n"
14
- "X-Poedit-KeywordsList: _e;__\n"
15
"X-Poedit-Basepath: .\n"
16
"X-Poedit-SearchPath-0: .\n"
17
18
- #: breadcrumb-trail.php:57
19
msgid "Browse:"
20
msgstr ""
21
22
- #: breadcrumb-trail.php:60
23
msgid "Home"
24
msgstr ""
25
26
- #: breadcrumb-trail.php:178
27
#, php-format
28
- msgid "Search results for &quot;%1$s&quot;"
29
msgstr ""
30
31
- #: breadcrumb-trail.php:193
32
- #: breadcrumb-trail.php:194
33
- #: breadcrumb-trail.php:199
34
- #: breadcrumb-trail.php:204
35
- #: breadcrumb-trail.php:209
36
msgid "Y"
37
msgstr ""
38
39
- #: breadcrumb-trail.php:194
40
msgid "m"
41
msgstr ""
42
43
- #: breadcrumb-trail.php:194
44
- #: breadcrumb-trail.php:205
45
msgid "F"
46
msgstr ""
47
48
- #: breadcrumb-trail.php:195
49
msgid "j"
50
msgstr ""
51
52
- #: breadcrumb-trail.php:200
53
#, php-format
54
msgid "Week %1$s"
55
msgstr ""
56
57
- #: breadcrumb-trail.php:200
58
msgid "W"
59
msgstr ""
60
61
- #: breadcrumb-trail.php:215
62
msgid "404 Not Found"
63
msgstr ""
64
2
msgstr ""
3
"Project-Id-Version: Breadcrumb Trail WordPress Plugin\n"
4
"Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2009-12-23 20:00+0900\n"
6
"PO-Revision-Date: \n"
7
"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
8
"Language-Team: <justin@justintadlock.com>\n"
11
"Content-Transfer-Encoding: 8bit\n"
12
"X-Poedit-Language: English\n"
13
"X-Poedit-Country: UNITED STATES\n"
14
+ "X-Poedit-KeywordsList: _e;__;esc_attr_e;esc_attr__;esc_html_e;esc_html__\n"
15
"X-Poedit-Basepath: .\n"
16
"X-Poedit-SearchPath-0: .\n"
17
18
+ #: breadcrumb-trail.php:56
19
msgid "Browse:"
20
msgstr ""
21
22
+ #: breadcrumb-trail.php:59
23
msgid "Home"
24
msgstr ""
25
26
+ #: breadcrumb-trail.php:146
27
+ msgid "g:i a"
28
+ msgstr ""
29
+
30
+ #: breadcrumb-trail.php:149
31
#, php-format
32
+ msgid "Minute %1$s"
33
msgstr ""
34
35
+ #: breadcrumb-trail.php:149
36
+ msgid "i"
37
+ msgstr ""
38
+
39
+ #: breadcrumb-trail.php:152
40
+ msgid "g a"
41
+ msgstr ""
42
+
43
+ #: breadcrumb-trail.php:158
44
+ #: breadcrumb-trail.php:159
45
+ #: breadcrumb-trail.php:164
46
+ #: breadcrumb-trail.php:169
47
+ #: breadcrumb-trail.php:174
48
msgid "Y"
49
msgstr ""
50
51
+ #: breadcrumb-trail.php:159
52
msgid "m"
53
msgstr ""
54
55
+ #: breadcrumb-trail.php:159
56
+ #: breadcrumb-trail.php:170
57
msgid "F"
58
msgstr ""
59
60
+ #: breadcrumb-trail.php:160
61
msgid "j"
62
msgstr ""
63
64
+ #: breadcrumb-trail.php:165
65
#, php-format
66
msgid "Week %1$s"
67
msgstr ""
68
69
+ #: breadcrumb-trail.php:165
70
msgid "W"
71
msgstr ""
72
73
+ #: breadcrumb-trail.php:180
74
+ #, php-format
75
+ msgid "Search results for &quot;%1$s&quot;"
76
+ msgstr ""
77
+
78
+ #: breadcrumb-trail.php:183
79
msgid "404 Not Found"
80
msgstr ""
81
en_EN.mo CHANGED
Binary file
en_EN.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
msgstr ""
3
"Project-Id-Version: Breadcrumb Trail WordPress Plugin\n"
4
"Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2009-04-05 19:56+0900\n"
6
"PO-Revision-Date: \n"
7
"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
8
"Language-Team: <justin@justintadlock.com>\n"
@@ -11,54 +11,71 @@ msgstr ""
11
"Content-Transfer-Encoding: 8bit\n"
12
"X-Poedit-Language: English\n"
13
"X-Poedit-Country: UNITED STATES\n"
14
- "X-Poedit-KeywordsList: _e;__\n"
15
"X-Poedit-Basepath: .\n"
16
"X-Poedit-SearchPath-0: .\n"
17
18
- #: breadcrumb-trail.php:57
19
msgid "Browse:"
20
msgstr ""
21
22
- #: breadcrumb-trail.php:60
23
msgid "Home"
24
msgstr ""
25
26
- #: breadcrumb-trail.php:178
27
#, php-format
28
- msgid "Search results for &quot;%1$s&quot;"
29
msgstr ""
30
31
- #: breadcrumb-trail.php:193
32
- #: breadcrumb-trail.php:194
33
- #: breadcrumb-trail.php:199
34
- #: breadcrumb-trail.php:204
35
- #: breadcrumb-trail.php:209
36
msgid "Y"
37
msgstr ""
38
39
- #: breadcrumb-trail.php:194
40
msgid "m"
41
msgstr ""
42
43
- #: breadcrumb-trail.php:194
44
- #: breadcrumb-trail.php:205
45
msgid "F"
46
msgstr ""
47
48
- #: breadcrumb-trail.php:195
49
msgid "j"
50
msgstr ""
51
52
- #: breadcrumb-trail.php:200
53
#, php-format
54
msgid "Week %1$s"
55
msgstr ""
56
57
- #: breadcrumb-trail.php:200
58
msgid "W"
59
msgstr ""
60
61
- #: breadcrumb-trail.php:215
62
msgid "404 Not Found"
63
msgstr ""
64
2
msgstr ""
3
"Project-Id-Version: Breadcrumb Trail WordPress Plugin\n"
4
"Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2009-12-23 20:00+0900\n"
6
"PO-Revision-Date: \n"
7
"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
8
"Language-Team: <justin@justintadlock.com>\n"
11
"Content-Transfer-Encoding: 8bit\n"
12
"X-Poedit-Language: English\n"
13
"X-Poedit-Country: UNITED STATES\n"
14
+ "X-Poedit-KeywordsList: _e;__;esc_attr_e;esc_attr__;esc_html_e;esc_html__\n"
15
"X-Poedit-Basepath: .\n"
16
"X-Poedit-SearchPath-0: .\n"
17
18
+ #: breadcrumb-trail.php:56
19
msgid "Browse:"
20
msgstr ""
21
22
+ #: breadcrumb-trail.php:59
23
msgid "Home"
24
msgstr ""
25
26
+ #: breadcrumb-trail.php:146
27
+ msgid "g:i a"
28
+ msgstr ""
29
+
30
+ #: breadcrumb-trail.php:149
31
#, php-format
32
+ msgid "Minute %1$s"
33
msgstr ""
34
35
+ #: breadcrumb-trail.php:149
36
+ msgid "i"
37
+ msgstr ""
38
+
39
+ #: breadcrumb-trail.php:152
40
+ msgid "g a"
41
+ msgstr ""
42
+
43
+ #: breadcrumb-trail.php:158
44
+ #: breadcrumb-trail.php:159
45
+ #: breadcrumb-trail.php:164
46
+ #: breadcrumb-trail.php:169
47
+ #: breadcrumb-trail.php:174
48
msgid "Y"
49
msgstr ""
50
51
+ #: breadcrumb-trail.php:159
52
msgid "m"
53
msgstr ""
54
55
+ #: breadcrumb-trail.php:159
56
+ #: breadcrumb-trail.php:170
57
msgid "F"
58
msgstr ""
59
60
+ #: breadcrumb-trail.php:160
61
msgid "j"
62
msgstr ""
63
64
+ #: breadcrumb-trail.php:165
65
#, php-format
66
msgid "Week %1$s"
67
msgstr ""
68
69
+ #: breadcrumb-trail.php:165
70
msgid "W"
71
msgstr ""
72
73
+ #: breadcrumb-trail.php:180
74
+ #, php-format
75
+ msgid "Search results for &quot;%1$s&quot;"
76
+ msgstr ""
77
+
78
+ #: breadcrumb-trail.php:183
79
msgid "404 Not Found"
80
msgstr ""
81
readme.css CHANGED
@@ -1,247 +1,11 @@
1
/* Reset values */
2
- html, body, div, span, object, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
3
- margin: 0;
4
- padding: 0;
5
- vertical-align: baseline;
6
- outline: none;
7
- font-size: 100%;
8
- background: transparent;
9
- border: none;
10
- text-decoration: none;
11
- }
12
-
13
- /*
14
- * Get rid of deprecated and non-semantic elements
15
- * These elements should not be used and replaced with proper alternatives
16
- */
17
- b, i, hr, u, center, menu, layer, s, strike, font, xmp {
18
- margin: 0;
19
- padding: 0;
20
- vertical-align: baseline;
21
- outline: none;
22
- font-size: 100%;
23
- font-weight: normal;
24
- font-style: normal;
25
- background: transparent;
26
- border: none;
27
- text-decoration: none;
28
- }
29
- font {
30
- color: #333;
31
- }
32
- center {
33
- text-align: left;
34
- }
35
-
36
- /* End deprecated elements */
37
38
-
39
- /* Body */
40
body {
41
- line-height: 24px;
42
- font-family: Cambria, Georgia, Times, "Times New Roman", serif;
43
- color: #333;
44
- background: #fff;
45
- }
46
-
47
- /* Headers */
48
- h1, h2, h3, h4, h5, h6 {
49
- font-style: normal;
50
- font-weight: normal;
51
- margin: 0 0 21px 0;
52
- }
53
- h1 {
54
- font-size: 1.8em;
55
- }
56
- h2 {
57
- font-size: 1.7em;
58
- }
59
- h3 {
60
- font-size: 1.55em;;
61
- }
62
- h4 {
63
- font-size: 1.4em;
64
- }
65
- h5 {
66
- font-size: 1.25em;
67
- }
68
- h6 {
69
- font-size: 1.1em;
70
- }
71
-
72
- /* Paragraphs */
73
- p {
74
- margin: 0 0 21px 0;
75
- }
76
-
77
- /* Lists */
78
- ol, ul {
79
- list-style: none;
80
- }
81
- ul {
82
- list-style: disc;
83
- margin: 0 0 21px 1.5em;
84
- }
85
- ol {
86
- list-style-type: decimal;
87
- margin: 0 0 21px 3em;
88
- }
89
- ol ol {
90
- list-style: upper-roman;
91
- }
92
- ol ol ol {
93
- list-style: lower-roman;
94
- }
95
- ol ol ol ol {
96
- list-style: upper-alpha;
97
- }
98
- ol ol ol ol ol {
99
- list-style: lower-alpha;
100
- }
101
- ul ul, ol ol, ul ol, ol ul {
102
- margin-bottom: 0;
103
- }
104
- dl {
105
- margin: 0 0 18px 3px;
106
- }
107
- dl dt {
108
- font-weight: bold;
109
- margin: 12px 0 0 0;
110
- }
111
- dl dd {
112
- margin: 6px 0 0 1.5em;
113
- }
114
-
115
- /* Text elements */
116
- strong {
117
- font-weight: bold;
118
- }
119
- strong strong {
120
- font-weight: normal;
121
- }
122
- em, cite {
123
- font-style: italic;
124
- }
125
- em em, cite cite {
126
- font-style: normal;
127
- }
128
- abbr {
129
- cursor: help;
130
- }
131
- acronym {
132
- text-transform: uppercase;
133
- border-bottom: 1px dashed #666;
134
- cursor: help;
135
- }
136
- big {
137
- font-size: 120%;
138
- }
139
- small, sup, sub {
140
- font-size: 80%;
141
- }
142
- sup {
143
- vertical-align: baseline;
144
- position: relative;
145
- bottom: 0.3em;
146
- }
147
- sub {
148
- vertical-align: baseline;
149
- position: relative;
150
- top: 0.3em;
151
- }
152
- address {
153
- font-style: italic;
154
- margin: 0 0 21px 0;
155
- }
156
- li address, dd address {
157
- margin: 0;
158
- }
159
-
160
- /* Blockquotes */
161
- blockquote {
162
- margin: 0 2.5em;
163
- font-style: normal;
164
- }
165
- blockquote em, blockquote cite {
166
- font-style: italic;
167
- }
168
- blockquote, q {
169
- quotes: none;
170
- }
171
- blockquote:before, blockquote:after, q:before, q:after {
172
- content: '';
173
- content: none;
174
- }
175
-
176
- /* Links */
177
- a {
178
- cursor: pointer;
179
- }
180
- a img {
181
- border: none;
182
- }
183
-
184
- /* Code */
185
- pre {
186
- font: .9em Monaco, monospace, Courier, "Courier New";
187
- line-height: 21px;
188
- margin-bottom: 21px;
189
- padding: 9px;
190
- }
191
- code {
192
- font: .9em Monaco, monospace, Courier, "Courier New";
193
- }
194
- pre code {
195
- font-size: 1em;
196
- }
197
-
198
- /* Delete and insert */
199
- ins, dfn {
200
- font-style: italic;
201
- text-decoration: none;
202
- border-bottom: 1px solid #666;
203
- }
204
- del {
205
- text-decoration: line-through;
206
- }
207
-
208
- /* Object */
209
- object {
210
- margin-bottom: 21px;
211
- }
212
-
213
- /* Forms */
214
- input, textarea {
215
- font-size: 1em;
216
- font-family: Cambria, Georgia, Times, "Times New Roman", serif;
217
- padding: 3px;
218
- }
219
- :focus {
220
- outline: none;
221
- }
222
- form label {
223
- cursor: pointer;
224
- }
225
-
226
- /* Tables */
227
- table {
228
- border-collapse: collapse;
229
- border-spacing: 0;
230
- margin-bottom: 21px;
231
- }
232
- th, td {
233
- text-align: left;
234
- }
235
-
236
- /* Horizontal rule */
237
- hr {
238
- margin-bottom: 21px;
239
- }
240
-
241
- body {
242
- width: 780px;
243
- margin: 36px auto;
244
- font: 14px/21px "Lucida Grande", "Lucida Sans Unicode", Tahoma, Verdana, sans-serif;
245
}
246
/* Links */
247
a:link, a:visited {
@@ -253,17 +17,19 @@ a:hover, a:active {
253
}
254
/* Headers */
255
h1, h2, h3, h4, h5, h6 {
256
- margin-top: 36px;
257
- color: #666;
258
- font-family: Cambria, Georgia, Times, "Times New Roman", serif;
259
}
260
- h1, h2 {
261
- padding-bottom: 12px;
262
- border-bottom: 1px solid #ccc;
263
}
264
h1 {
265
- margin-top: 0;
266
- font-size: 2.1em;
267
}
268
code {
269
padding: 0 3px;
@@ -273,8 +39,39 @@ pre code {
273
padding: 0;
274
}
275
pre {
276
- overflow: auto;
277
padding: 9px;
278
background: #eee;
279
border: 1px solid #ccc;
280
}
1
/* Reset values */
2
+ html,body,div,span,object,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;vertical-align:baseline;outline:none;font-size:100%;background:transparent;border:none;text-decoration:none}b,i,hr,u,center,menu,layer,s,strike,font,xmp{margin:0;padding:0;vertical-align:baseline;outline:none;font-size:100%;font-weight:normal;font-style:normal;background:transparent;border:none;text-decoration:none}font{color:#333}center{text-align:left}body{line-height:25px;font-family:Cambria,Georgia,Times,"Times New Roman",serif;color:#333;background:#fff}h1,h2,h3,h4,h5,h6{font-style:normal;font-weight:normal;margin:0 0 25px 0}h1{font-size:1.8em}h2{font-size:1.7em}h3{font-size:1.55em;}h4{font-size:1.4em}h5{font-size:1.25em}h6{font-size:1.1em}p{margin:0 0 25px 0}ol,ul{list-style:none}ul{list-style:disc;margin:0 0 25px 2.5em}ol{list-style-type:decimal;margin:0 0 25px 3em}ol ol{list-style:upper-roman}ol ol ol{list-style:lower-roman}ol ol ol ol{list-style:upper-alpha}ol ol ol ol ol{list-style:lower-alpha}ul ul,ol ol,ul ol,ol ul{margin-bottom:0}dl{margin:0 0 25px 5px}dl dt{font-weight:bold;margin:10px 0 0 0}dl dd{margin:5px 0 0 1.5em}strong{font-weight:bold}strong strong{font-weight:normal}em,cite{font-style:italic}em em,cite cite{font-style:normal}abbr{cursor:help}acronym{text-transform:uppercase;border-bottom:1px dashed #666;cursor:help}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:baseline;position:relative;bottom:0.3em}sub{vertical-align:baseline;position:relative;top:0.3em}address{font-style:italic;margin:0 0 25px 0}li address,dd address{margin:0}blockquote{margin:0 25px;font-style:normal}blockquote em,blockquote cite{font-style:italic}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}a{cursor:pointer}a img{border:none}pre{overflow:auto;font:.9em Monaco,monospace,Courier,"Courier New";line-height:25px;margin-bottom:25px;padding:10px}code{font:.9em Monaco,monospace,Courier,"Courier New"}pre code{font-size:1em}ins,dfn{font-style:italic;text-decoration:none;border-bottom:1px solid #666}del{text-decoration:line-through}object{margin-bottom:25px}input,textarea{font-size:1em;font-family:Cambria,Georgia,Times,"Times New Roman",serif;padding:3px}:focus{outline:none}form label{cursor:pointer}option{padding:1px 2px}table{border-collapse:collapse;border-spacing:0;margin-bottom:25px}th,td{text-align:left}hr{margin-bottom:25px}img.wp-smiley{max-height:12px;margin:0;padding:0;border:none}.gallery{display:block;text-align:center;margin-bottom:25px !important}.alignleft,.left{float:left;margin-right:20px}.alignright,.right{float:right;margin-left:20px}.aligncenter,.center{display:block;margin:0 auto 25px auto}.alignnone,.block{clear:both;margin:0 0 25px 0}.clear{clear:both}img.alignleft,img.alignright{display:inline}
3
4
body {
5
+ width: 750px;
6
+ margin: 36px auto 60px auto;
7
+ font: 15px/21px Arial, 'Helvetica Neue', Helvetica, sans-serif;
8
+ font: 16px/25px Georgia, Times, 'Times New Roman', serif;
9
}
10
/* Links */
11
a:link, a:visited {
17
}
18
/* Headers */
19
h1, h2, h3, h4, h5, h6 {
20
+ margin: 40px 0 30px 0;
21
+ color: #000;
22
+ font-weight: bold;
23
+ font-family: Arial, sans-serif;
24
}
25
+ h3 {
26
+ font-weight: normal;
27
+ font-style: italic;
28
+ font-family: Georgia, Times, 'Times New Roman', serif;
29
}
30
h1 {
31
+ margin-top: 80px;
32
+ font-size: 2.2em;
33
}
34
code {
35
padding: 0 3px;
39
padding: 0;
40
}
41
pre {
42
padding: 9px;
43
background: #eee;
44
border: 1px solid #ccc;
45
+ }
46
+ ul {
47
+ list-style: square;
48
+ }
49
+ p.first {
50
+ font-size: 21px;
51
+ }
52
+ p.second {
53
+ font-size: 15px;
54
+ }
55
+ ul.space li {
56
+ margin-bottom: 10px;
57
+ }
58
+ .section {
59
+ overflow: hidden;
60
+ }
61
+
62
+ .columns-2 {
63
+ float: left;
64
+ width: 350px;
65
+ margin: 0 0 21px 25px;
66
+ }
67
+ .columns-3 {
68
+ float: left;
69
+ width: 230px;
70
+ margin: 0 0 21px 20px;
71
+ }
72
+ /* Warnings/Alerts */
73
+ .warning, .alert {
74
+ padding: 6px 9px;
75
+ background: #fffbbc;
76
+ border: 1px solid #E6DB55;
77
}
readme.html CHANGED
@@ -9,14 +9,11 @@
9
</head>
10
<body>
11
12
- <h1 title="A guide to using the Breadcrumb Trail plugin">A guide to Breadcrumb Trail</h1>
13
14
- <p>
15
- <em>Breadcrumb Trail</em> is a plugin that displays a breadcrumb menu on your site. Plain and simple.
16
- </p>
17
18
- <p>How is it any better than any other breadcrumb plugin? Well, it's probably not, to be perfectly honest. This is just a script I've been building upon for nearly a couple of years that I usually include with my WordPress themes. I figured I'd package it as a plugin for others to use as well.
19
- </p>
20
21
<h2>How to install the plugin</h2>
22
@@ -128,7 +125,7 @@ Basically, this just checks to see if the plugin is activated and has loaded the
128
129
<p>This plugin is copyrighted to <a href="http://justintadlock.com" title="Justin Tadlock">Justin Tadlock</a>.</p>
130
131
- <p>2008 - 2009 &copy; Justin Tadlock</p>
132
133
</body>
134
</html>
9
</head>
10
<body>
11
12
+ <h1>A guide to Breadcrumb Trail</h1>
13
14
+ <p class="first"><em>Breadcrumb Trail</em> is a plugin that displays a breadcrumb menu on your site. Plain and simple.</p>
15
16
+ <p class="second">How is it any better than any other breadcrumb plugin? Well, it's probably not, to be perfectly honest. This is just a script I've been building upon for nearly a couple of years that I usually include with my WordPress themes. I figured I'd package it as a plugin for others to use as well.</p>
17
18
<h2>How to install the plugin</h2>
19
125
126
<p>This plugin is copyrighted to <a href="http://justintadlock.com" title="Justin Tadlock">Justin Tadlock</a>.</p>
127
128
+ <p>2008&thinsp;&ndash;&thinsp;2010 &copy; Justin Tadlock. All rights reserved.</p>
129
130
</body>
131
</html>
readme.txt CHANGED
@@ -2,9 +2,9 @@
2
Contributors: greenshady
3
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3687060
4
Tags: navigation, menu
5
- Requires at least: 2.5
6
- Tested up to: 2.7.1
7
- Stable tag: 0.1
8
9
An easy-to-use template tag for showing a breadcrumb menu on your site.
10
@@ -56,7 +56,14 @@ There are no screenshots for this plugin.
56
57
== Changelog ==
58
59
- Ealier versions were not documented well.
60
61
**Version 0.1**
62
2
Contributors: greenshady
3
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3687060
4
Tags: navigation, menu
5
+ Requires at least: 2.8
6
+ Tested up to: 2.9
7
+ Stable tag: 0.2.1
8
9
An easy-to-use template tag for showing a breadcrumb menu on your site.
10
56
57
== Changelog ==
58
59
+ ** Version 0.2.1 **
60
+
61
+ * Removed and/or added (depending on the case) the extra separator item on sub-categories and date-/time-based breadcrumbs.
62
+
63
+ ** Version 0.2 **
64
+
65
+ * The title of the "home" page (i.e. posts page) when not the front page is now properly recognized.
66
+ * Cleaned up the code and logic behind the plugin.
67
68
**Version 0.1**
69