<?php /** * Archives shortcode * * @author bubel & nickmomrik * [archives limit=10] * * @package automattic/jetpack */ add_shortcode( 'archives', 'archives_shortcode' ); /** * Display Archives shortcode. * * @param array $atts Shortcode attributes. */ function archives_shortcode( $atts ) { if ( is_feed() ) { return '[archives]'; } global $allowedposttags; $default_atts = array( 'type' => 'postbypost', 'limit' => '', 'format' => 'html', 'showcount' => false, 'before' => '', 'after' => '', 'order' => 'desc', ); $attr = shortcode_atts( $default_atts, $atts, 'archives' ); if ( ! in_array( $attr['type'], array( 'yearly', 'monthly', 'daily', 'weekly', 'postbypost' ), true ) ) { $attr['type'] = 'postbypost'; } if ( ! in_array( $attr['format'], array( 'html', 'option', 'custom' ), true ) ) { $attr['format'] = 'html'; } $limit = (int) $attr['limit']; // A Limit of 0 makes no sense so revert back to the default. if ( empty( $limit ) ) { $limit = ''; } $showcount = ( false !== $attr['showcount'] && 'false' !== $attr['showcount'] ) ? true : false; $before = wp_kses( $attr['before'], $allowedposttags ); $after = wp_kses( $attr['after'], $allowedposttags ); // Get the archives. $archives = wp_get_archives( array( 'type' => $attr['type'], 'limit' => $limit, 'format' => $attr['format'], 'echo' => false, 'show_post_count' => $showcount, 'before' => $before, 'after' => $after, ) ); if ( 'asc' === $attr['order'] ) { $archives = implode( "\n", array_reverse( explode( "\n", $archives ) ) ); } // Check to see if there are any archives. if ( empty( $archives ) ) { $archives = '<p>' . __( 'Your blog does not currently have any published posts.', 'jetpack' ) . '</p>'; } elseif ( 'option' === $attr['format'] ) { $is_amp = class_exists( 'Jetpack_AMP_Support' ) && Jetpack_AMP_Support::is_amp_request(); $change_attribute = $is_amp ? 'on="change:AMP.navigateTo(url=event.value)"' : 'onchange="document.location.href=this.options[this.selectedIndex].value;"'; $archives = '<select name="archive-dropdown" ' . $change_attribute . '><option value="' . get_permalink() . '">--</option>' . $archives . '</select>'; } elseif ( 'html' === $attr['format'] ) { $archives = '<ul>' . $archives . '</ul>'; } return $archives; }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
css | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
img | Folder | 0755 |
|
|
js | Folder | 0755 |
|
|
archiveorg-book.php | File | 3.31 KB | 0644 |
|
archiveorg.php | File | 3.92 KB | 0644 |
|
archives.php | File | 2.38 KB | 0644 |
|
bandcamp.php | File | 7.75 KB | 0644 |
|
brightcove.php | File | 8.77 KB | 0644 |
|
cartodb.php | File | 803 B | 0644 |
|
class.filter-embedded-html-objects.php | File | 13.01 KB | 0644 |
|
codepen.php | File | 265 B | 0644 |
|
crowdsignal.php | File | 21.6 KB | 0644 |
|
dailymotion.php | File | 15.27 KB | 0644 |
|
descript.php | File | 3 KB | 0644 |
|
facebook.php | File | 4.73 KB | 0644 |
|
flatio.php | File | 383 B | 0644 |
|
flickr.php | File | 9.29 KB | 0644 |
|
getty.php | File | 7.54 KB | 0644 |
|
gist.php | File | 8.31 KB | 0644 |
|
googleapps.php | File | 9.84 KB | 0644 |
|
googlemaps.php | File | 7.97 KB | 0644 |
|
googleplus.php | File | 1.03 KB | 0644 |
|
gravatar.php | File | 6.13 KB | 0644 |
|
houzz.php | File | 920 B | 0644 |
|
inline-pdfs.php | File | 1.14 KB | 0644 |
|
instagram.php | File | 14.51 KB | 0644 |
|
kickstarter.php | File | 2.39 KB | 0644 |
|
mailchimp.php | File | 7.03 KB | 0644 |
|
medium.php | File | 3.22 KB | 0644 |
|
mixcloud.php | File | 3.62 KB | 0644 |
|
others.php | File | 2.07 KB | 0644 |
|
pinterest.php | File | 1.79 KB | 0644 |
|
presentations.php | File | 14.53 KB | 0644 |
|
quiz.php | File | 9.16 KB | 0644 |
|
recipe.php | File | 18.95 KB | 0644 |
|
scribd.php | File | 2.45 KB | 0644 |
|
sitemap.php | File | 562 B | 0644 |
|
slideshare.php | File | 3.81 KB | 0644 |
|
slideshow.php | File | 9.27 KB | 0644 |
|
smartframe.php | File | 3.64 KB | 0644 |
|
soundcloud.php | File | 8.68 KB | 0644 |
|
spotify.php | File | 3.26 KB | 0644 |
|
ted.php | File | 3.35 KB | 0644 |
|
tweet.php | File | 5.03 KB | 0644 |
|
twitchtv.php | File | 2.63 KB | 0644 |
|
twitter-timeline.php | File | 1.93 KB | 0644 |
|
unavailable.php | File | 3.24 KB | 0644 |
|
untappd-menu.php | File | 2.41 KB | 0644 |
|
upcoming-events.php | File | 1.68 KB | 0644 |
|
ustream.php | File | 3.13 KB | 0644 |
|
videopress.php | File | 423 B | 0644 |
|
vimeo.php | File | 11.51 KB | 0644 |
|
vine.php | File | 2.61 KB | 0644 |
|
vr.php | File | 4.92 KB | 0644 |
|
wordads.php | File | 1.81 KB | 0644 |
|
wufoo.php | File | 3.38 KB | 0644 |
|
youtube.php | File | 23.33 KB | 0644 |
|