Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Importing the Hybrid Tabs plugin files and folders.

git-svn-id: http://svn.locallylost.com/plugins/hybrid-tabs/trunk@259 dba0f204-706d-4bc1-bc29-8b92e0485636
  • Loading branch information...
commit f272040476e7754223b7c4861618eb8e4c1f1bb8 0 parents
greenshady authored
BIN  en_EN.mo
Binary file not shown
287 en_EN.po
@@ -0,0 +1,287 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: Hybrid Tabs WordPress Plugin\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-11 12:46+0900\n"
+"PO-Revision-Date: \n"
+"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
+"Language-Team: <justin@justintadlock.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: English\n"
+"X-Poedit-Country: UNITED STATES\n"
+"X-Poedit-KeywordsList: _e;__\n"
+"X-Poedit-Basepath: .\n"
+"X-Poedit-SearchPath-0: .\n"
+
+#: functions.php:18
+msgid "Syndicate this site using RSS 2.0"
+msgstr ""
+
+#: functions.php:18
+msgid "Entries <abbr title=\"Really Simple Syndication\">RSS</abbr>"
+msgstr ""
+
+#: functions.php:19
+msgid "The latest comments to all posts in RSS"
+msgstr ""
+
+#: functions.php:19
+msgid "Comments <abbr title=\"Really Simple Syndication\">RSS</abbr>"
+msgstr ""
+
+#: functions.php:20
+msgid "Powered by WordPress, state-of-the-art semantic personal publishing platform."
+msgstr ""
+
+#: hybrid-tabs.php:97
+msgid "Authors"
+msgstr ""
+
+#: hybrid-tabs.php:101
+msgid "Authors' Stats"
+msgstr ""
+
+#: hybrid-tabs.php:104
+msgid "Calendar"
+msgstr ""
+
+#: hybrid-tabs.php:107
+msgid "Categories"
+msgstr ""
+
+#: hybrid-tabs.php:111
+msgid "Comments' Members Stats"
+msgstr ""
+
+#: hybrid-tabs.php:115
+msgid "Configurable Tag Cloud"
+msgstr ""
+
+#: hybrid-tabs.php:118
+msgid "Daily Archives"
+msgstr ""
+
+#: hybrid-tabs.php:122
+msgid "Events Calendar"
+msgstr ""
+
+#: hybrid-tabs.php:126
+msgid "flickrRSS"
+msgstr ""
+
+#: hybrid-tabs.php:130
+msgid "Highest Rated"
+msgstr ""
+
+#: hybrid-tabs.php:134
+msgid "Hot Friends"
+msgstr ""
+
+#: hybrid-tabs.php:138
+msgid "Least Viewed"
+msgstr ""
+
+#: hybrid-tabs.php:142
+msgid "Link Category Stats"
+msgstr ""
+
+#: hybrid-tabs.php:146
+msgid "Lowest Rated"
+msgstr ""
+
+#: hybrid-tabs.php:149
+msgid "Meta"
+msgstr ""
+
+#: hybrid-tabs.php:152
+msgid "Monthly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:156
+msgid "Most Commented"
+msgstr ""
+
+#: hybrid-tabs.php:160
+msgid "Most Rated"
+msgstr ""
+
+#: hybrid-tabs.php:164
+msgid "Most Viewed"
+msgstr ""
+
+#: hybrid-tabs.php:167
+msgid "Pages"
+msgstr ""
+
+#: hybrid-tabs.php:171
+msgid "Quote This: All"
+msgstr ""
+
+#: hybrid-tabs.php:172
+msgid "Quote This: Art"
+msgstr ""
+
+#: hybrid-tabs.php:173
+msgid "Quote This: Film"
+msgstr ""
+
+#: hybrid-tabs.php:174
+msgid "Quote This: Friendship"
+msgstr ""
+
+#: hybrid-tabs.php:175
+msgid "Quote This: Individual"
+msgstr ""
+
+#: hybrid-tabs.php:176
+msgid "Quote This: Life"
+msgstr ""
+
+#: hybrid-tabs.php:177
+msgid "Quote This: Literature"
+msgstr ""
+
+#: hybrid-tabs.php:182
+msgid "Post Category Stats"
+msgstr ""
+
+#: hybrid-tabs.php:186
+msgid "Post Tag Stats"
+msgstr ""
+
+#: hybrid-tabs.php:189
+msgid "Random"
+msgstr ""
+
+#: hybrid-tabs.php:193
+#: hybrid-tabs.php:197
+msgid "Recent Comments"
+msgstr ""
+
+#: hybrid-tabs.php:200
+msgid "Recent Posts (Alphabetical)"
+msgstr ""
+
+#: hybrid-tabs.php:203
+msgid "Recent Posts (Chronological)"
+msgstr ""
+
+#: hybrid-tabs.php:207
+msgid "Recent Trackbacks"
+msgstr ""
+
+#: hybrid-tabs.php:211
+msgid "Sidebar Login"
+msgstr ""
+
+#: hybrid-tabs.php:214
+msgid "Weekly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:218
+msgid "WP Cumulus"
+msgstr ""
+
+#: hybrid-tabs.php:222
+msgid "WP Wall"
+msgstr ""
+
+#: hybrid-tabs.php:225
+msgid "Yearly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:230
+#, php-format
+msgid "%1$s Cloud"
+msgstr ""
+
+#: hybrid-tabs.php:244
+msgid "Custom 1"
+msgstr ""
+
+#: hybrid-tabs.php:248
+msgid "Custom 2"
+msgstr ""
+
+#: hybrid-tabs.php:252
+msgid "Custom 3"
+msgstr ""
+
+#: hybrid-tabs.php:256
+msgid "Custom 4"
+msgstr ""
+
+#: hybrid-tabs.php:260
+msgid "Custom 5"
+msgstr ""
+
+#: hybrid-tabs.php:264
+msgid "Custom 6"
+msgstr ""
+
+#: tabs-widget.php:19
+msgid "A tabbed widget for the Hybrid WordPress theme."
+msgstr ""
+
+#: tabs-widget.php:21
+msgid "Tabs"
+msgstr ""
+
+#: tabs-widget.php:105
+msgid "Monthly"
+msgstr ""
+
+#: tabs-widget.php:105
+msgid "Yearly"
+msgstr ""
+
+#: tabs-widget.php:111
+msgid "Tab 1 Content:"
+msgstr ""
+
+#: tabs-widget.php:121
+msgid "Tab 2 Content:"
+msgstr ""
+
+#: tabs-widget.php:131
+msgid "Tab 3 Content:"
+msgstr ""
+
+#: tabs-widget.php:141
+msgid "Tab 4 Content:"
+msgstr ""
+
+#: tabs-widget.php:151
+msgid "Tab 5 Content:"
+msgstr ""
+
+#: tabs-widget.php:161
+msgid "Tab 6 Content:"
+msgstr ""
+
+#: tabs-widget.php:174
+msgid "Tab 1 Title:"
+msgstr ""
+
+#: tabs-widget.php:179
+msgid "Tab 2 Title:"
+msgstr ""
+
+#: tabs-widget.php:184
+msgid "Tab 3 Title:"
+msgstr ""
+
+#: tabs-widget.php:189
+msgid "Tab 4 Title:"
+msgstr ""
+
+#: tabs-widget.php:194
+msgid "Tab 5 Title:"
+msgstr ""
+
+#: tabs-widget.php:199
+msgid "Tab 6 Title:"
+msgstr ""
+
555 functions.php
@@ -0,0 +1,555 @@
+<?php
+/**
+ * Functions for displaying tabbed content within the tabs widget.
+ * This only needs to be loaded on the front page of the site.
+ *
+ * @package HybridTabs
+ */
+
+/**
+ * Replicates the default meta widget.
+ *
+ * @since 0.2
+ */
+function hybrid_tabs_meta() {
+ echo '<ul>';
+ wp_register();
+ echo '<li>'; wp_loginout(); echo '</li>';
+ echo '<li><a href="' . get_bloginfo('rss2_url') . '" title="' . esc_attr( __('Syndicate this site using RSS 2.0', 'hybrid_tabs') ) . '">' . __('Entries <abbr title="Really Simple Syndication">RSS</abbr>', 'hybrid_tabs') . '</a></li>';
+ echo '<li><a href="' . get_bloginfo('comments_rss2_url') . '" title="' . esc_attr( __('The latest comments to all posts in RSS', 'hybrid_tabs') ) . '">' . __('Comments <abbr title="Really Simple Syndication">RSS</abbr>', 'hybrid_tabs') . '</a></li>';
+ echo '<li><a href="http://wordpress.org/" title="' . esc_attr( __('Powered by WordPress, state-of-the-art semantic personal publishing platform.', 'hybrid_tabs') ) . '>">WordPress.org</a></li>';
+ wp_meta();
+ echo '</ul>';
+}
+
+/**
+ * Displays the WordPress calendar.
+ * @uses get_calendar()
+ * @link http://codex.wordpress.org/Template_Tags/get_calendar
+ *
+ * @since 0.2
+ */
+function hybrid_tabs_calendar() {
+ echo '<div class="calendar-wrap">';
+ get_calendar();
+ echo '</div>';
+}
+
+/**
+ * Lists last 10 years of archives.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_yearly_archives() {
+ echo '<ul class="xoxo yearly-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'yearly', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists last 10 months of archives.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_monthly_archives() {
+ echo '<ul class="xoxo monthly-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'monthly', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists last 10 weeks of archives.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_weekly_archives() {
+ echo '<ul class="xoxo weekly-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'weekly', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists last 10 days of archives.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_daily_archives() {
+ echo '<ul class="xoxo daily-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'daily', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists last 10 posts.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_postbypost_archives() {
+ echo '<ul class="xoxo postbypost-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'postbypost', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists 10 posts in alphabetical order.
+ * @uses wp_get_archives()
+ * @link http://codex.wordpress.org/Template_Tags/wp_get_archives
+ *
+ * @since 0.2
+ */
+function hybrid_tabs_alpha_archives() {
+ echo '<ul class="xoxo alpha-archives">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_get_archives( array( 'type' => 'alpha', 'limit' => 10, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists blog authors.
+ * @uses wp_list_authors()
+ * @link http://codex.wordpress.org/Template_Tags/wp_list_authors
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_authors() {
+ echo '<ul class="xoxo authors">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_list_authors( array( 'exclude_admin' => false, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists bookmarks/links from a specific link category.
+ * @uses wp_list_bookmarks()
+ * @link http://codex.wordpress.org/Template_Tags/wp_list_bookmarks
+ *
+ * @since 0.1
+ * @param object $tab The current tab being displayed.
+ */
+function hybrid_tabs_bookmarks( $tab ) {
+
+ $args = array(
+ 'category_name' => $tab->label,
+ 'categorize' => false,
+ 'title_li' => false,
+ 'title_before' => false,
+ 'title_after' => false,
+ 'category_before' => false,
+ 'category_after' => false,
+ 'link_before' => '<span>',
+ 'link_after' => '</span>',
+ 'show_rating' => false,
+ 'show_updated' => false,
+ 'show_description' => false,
+ 'show_images' => false,
+ 'echo' => false,
+ );
+
+ echo '<ul class="xoxo bookmarks">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_list_bookmarks( $args ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists the blog's post categories.
+ * @uses wp_list_categories()
+ * @link http://codex.wordpress.org/Template_Tags/wp_list_categories
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_categories() {
+ echo '<ul class="xoxo categories">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_list_categories( array( 'use_desc_for_title' => false, 'orderby' => 'name', 'title_li' => false, 'echo' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists all the blog's pages.
+ * @uses wp_list_pages()
+ * @link http://codex.wordpress.org/Template_Tags/wp_list_pages
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_pages() {
+ echo '<ul class="xoxo pages">';
+ echo str_replace( array( "\r", "\n", "\t" ), '', wp_list_pages( array( 'echo' => false, 'title_li' => false ) ) );
+ echo '</ul>';
+}
+
+/**
+ * Lists 10 random posts.
+ * @uses get_posts()
+ * @link http://codex.wordpress.org/Template_Tags/get_posts
+ *
+ * @since 0.1
+ */
+function hybrid_tabs_random() {
+ echo '<ul class="xoxo random">';
+ $random_posts = get_posts( array( 'numberposts' => 10, 'orderby' => 'rand' ) );
+ foreach ( $random_posts as $post ) :
+ global $post;
+ the_title( '<li><a href="' . get_permalink() . '" title="' . the_title_attribute( 'echo=0' ) . '" rel="bookmark">', '</a></li>', true );
+ endforeach;
+ echo '</ul>';
+}
+
+/**
+ * Displays a term/tag cloud of the given taxonomy.
+ * @uses wp_tag_cloud()
+ * @link http://codex.wordpress.org/Template_Tags/wp_tag_cloud
+ *
+ * @since 0.2
+ * @param object $tab The current tab.
+ */
+function hybrid_tabs_term_cloud( $tab ) {
+ $tax = str_replace( '_cloud', '', $tab->name );
+
+ echo '<p class="term-cloud ' . $tax . '-cloud">';
+ echo wp_tag_cloud( array( 'taxonomy' => $tax, 'largest' => 15, 'smallest' => 8, 'order' => 'ASC', 'echo' => false ) );
+ echo '</p>';
+}
+
+/**
+ * Displays the WP Wall plugin.
+ * @link http://wordpress.org/extend/plugins/wp-wall
+ * @since 0.2
+ */
+function hybrid_tabs_WPWall_Widget() {
+ if ( function_exists( 'WPWall_Widget' ) )
+ WPWall_Widget();
+}
+
+/**
+ * Displays the Events Calendar plugin.
+ * @link http://wordpress.org/extend/plugins/events-calendar
+ * @since 0.2
+ */
+function hybrid_tabs_sidebarEventsCalendar() {
+ if ( function_exists( 'sidebarEventsCalendar' ) )
+ sidebarEventsCalendar();
+}
+
+/**
+ * Displays the Sidebar Login plugin.
+ * @link http://wordpress.org/extend/plugins/sidebar-login
+ * @since 0.2
+ */
+function hybrid_tabs_sidebarlogin() {
+ if ( function_exists( 'sidebarlogin' ) )
+ sidebarlogin();
+}
+
+/**
+ * Displays the most viewed posts by the WP PostViews plugin.
+ * @link http://wordpress.org/extend/plugins/wp-postviews
+ * @since 0.2
+ */
+function hybrid_tabs_get_most_viewed() {
+ if ( !function_exists( 'get_most_viewed' ) )
+ return false;
+
+ echo '<ul class="xoxo most-viewed">';
+ get_most_viewed( '', 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the least viewed posts by the WP PostViews plugin.
+ * @link http://wordpress.org/extend/plugins/wp-postviews
+ * @since 0.2
+ */
+function hybrid_tabs_get_least_viewed() {
+ if ( !function_exists( 'get_least_viewed' ) )
+ return false;
+
+ echo '<ul class="xoxo least-viewed">';
+ get_least_viewed( '', 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the recent comments by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_recentcomments() {
+ if ( !function_exists( 'get_recentcomments' ) )
+ return false;
+
+ echo '<ul class="xoxo recent-comments">';
+ get_recentcomments( '', 10, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the most-commented posts by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_mostcommented() {
+ if ( !function_exists( 'get_mostcommented' ) )
+ return false;
+
+ echo '<ul class="xoxo most-commented">';
+ get_mostcommented( '', 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays authors' stats by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_authorsstats() {
+ if ( !function_exists( 'get_authorsstats' ) )
+ return false;
+
+ echo '<ul class="xoxo authors-stats">';
+ get_authorsstats( '', true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the comment member stats by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_commentmembersstats() {
+ if ( !function_exists( 'get_commentmembersstats' ) )
+ return false;
+
+ echo '<ul class="xoxo comment-members-stats">';
+ get_commentmembersstats( -1, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the post category stats by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_postcats() {
+ if ( !function_exists( 'get_postcats' ) )
+ return false;
+
+ echo '<ul class="xoxo post-category-stats">';
+ get_postcats( true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the link category stats by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_linkcats() {
+ if ( !function_exists( 'get_linkcats' ) )
+ return false;
+
+ echo '<ul class="xoxo link-category-stats">';
+ get_linkcats( true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the post tags stats by the WP Stats plugin.
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @since 0.2
+ */
+function hybrid_tabs_get_tags_list() {
+ if ( !function_exists( 'get_tags_list' ) )
+ return false;
+
+ echo '<ul title="xoxo post_tag-stats">';
+ get_tags_list( true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the Configurable Tag Cloud plugin.
+ * @link http://wordpress.org/extend/plugins/configurable-tag-cloud-widget
+ * @since 0.2
+ */
+function hybrid_tabs_ctc() {
+ if ( !function_exists( 'ctc' ) )
+ return false;
+
+ echo '<p class="term-cloud post_tag-cloud">';
+ ctc();
+ echo '</p>';
+}
+
+/**
+ * Displays the Hot Friends plugin.
+ * @link http://wordpress.org/extend/plugins/hot-friends
+ * @since 0.2
+ */
+function hybrid_tabs_hot_friends() {
+ if ( function_exists( 'hot_friends' ) )
+ hot_friends();
+}
+
+/**
+ * Displays the flickrRSS plugin.
+ * @link http://wordpress.org/extend/plugins/flickr-rss
+ * @since 0.2
+ */
+function hybrid_tabs_get_flickrRSS() {
+ if ( function_exists( 'get_flickrRSS' ) )
+ get_flickrRSS();
+}
+
+/**
+ * Displays the most rated posts by the WP Post Ratings plugin.
+ * @link http://wordpress.org/extend/plugins/wp-postratings
+ * @since 0.2
+ */
+function hybrid_tabs_get_most_rated() {
+ if ( !function_exists( 'get_most_rated' ) )
+ return false;
+
+ echo '<ul class="xoxo most-rated">';
+ get_most_rated( '', 0, 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the highest rated posts by the WP Post Ratings plugin.
+ * @link http://wordpress.org/extend/plugins/wp-postratings
+ * @since 0.2
+ */
+function hybrid_tabs_get_highest_rated() {
+ if ( !function_exists( 'get_highest_rated' ) )
+ return false;
+
+ echo '<ul class="xoxo highest-rated">';
+ get_highest_rated( '', 0, 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the lowest rated posts by the WP Post Ratings plugin.
+ * @link http://wordpress.org/extend/plugins/wp-postratings
+ * @since 0.2
+ */
+function hybrid_tabs_get_lowest_rated() {
+ if ( !function_exists( 'get_lowest_rated' ) )
+ return false;
+
+ echo '<ul class="xoxo lowest-rated">';
+ get_lowest_rated( '', 0, 10, 0, true );
+ echo '</ul>';
+}
+
+/**
+ * Displays the WP Cumulus plugin.
+ * @link http://wordpress.org/extend/plugins/wp-cumulus
+ * @since 0.2
+ */
+function hybrid_tabs_wp_cumulus_insert() {
+ if ( function_exists( 'wp_cumulus_insert' ) )
+ wp_cumulus_insert();
+}
+
+/**
+ * Displays latest comments by the Get Recent Comments plugin.
+ * @link http://wordpress.org/extend/plugins/get-recent-comments
+ * @since 0.2
+ */
+function hybrid_tabs_recent_comments() {
+ if ( !function_exists( 'get_recent_comments' ) )
+ return false;
+
+ echo '<ul class="xoxo recent-comments">';
+ get_recent_comments();
+ echo '</ul>';
+}
+
+/**
+ * Displays latest trackbacks by the Get Recent Comments plugin.
+ * @link http://wordpress.org/extend/plugins/get-recent-comments
+ * @since 0.2
+ */
+function hybrid_tabs_recent_trackbacks() {
+ if ( !function_exists( 'get_recent_trackbacks' ) )
+ return false;
+
+ echo '<ul class="xoxo recent-trackbacks">';
+ get_recent_trackbacks();
+ echo '</ul>';
+}
+
+/**
+ * Displays a radom quote by the Quote This plugin.
+ * @link http://justintadlock.com/archives/2009/03/26/quote-this-wordpress-plugin
+ * @since 0.2
+ * @param object $tab The tab object.
+ */
+function hybrid_tabs_quote_this( $tab ) {
+ $type = str_replace( '_quote_this', '', $tab->name );
+ quote_this( array( 'type' => $type, 'orderby' => 'rand', 'format' => 'p' ) );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_1() {
+ echo apply_filters( 'hybrid_tabs_custom_1', '' );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_2() {
+ echo apply_filters( 'hybrid_tabs_custom_2', '' );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_3() {
+ echo apply_filters( 'hybrid_tabs_custom_3', '' );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_4() {
+ echo apply_filters( 'hybrid_tabs_custom_4', '' );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_5() {
+ echo apply_filters( 'hybrid_tabs_custom_5', '' );
+}
+
+/**
+ * Custom tab that can be filtered with custom function.
+ * @deprecated 0.2 Use register_hybrid_tab() instead.
+ * @since 0.1
+ */
+function hybrid_tabs_custom_6() {
+ echo apply_filters( 'hybrid_tabs_custom_6', '' );
+}
+
+?>
350 hybrid-tabs.php
@@ -0,0 +1,350 @@
+<?php
+/**
+ * Plugin Name: Hybrid Tabs
+ * Plugin URI: http://themehybrid.com/themes/hybrid/tabs
+ * Description: Creates a tabbed widget for the Hybrid WordPress theme.
+ * Version: 0.2
+ * Author: Justin Tadlock
+ * Author URI: http://justintadlock.com
+ *
+ * Hybrid Tabs is a tabbed widget that accompanies the Hybrid
+ * WordPress theme framework. Individual child themes that
+ * support the tabs widget should have a tabs.css file in the theme
+ * download packaged.
+ *
+ * Hybrid Tabs will auto-insert several plugins if the plugin is activated:
+ * @link http://wordpress.org/extend/plugins/configurable-tag-cloud-widget
+ * @link http://wordpress.org/extend/plugins/events-calendar
+ * @link http://wordpress.org/extend/plugins/flickr-rss
+ * @link http://wordpress.org/extend/plugins/get-recent-comments
+ * @link http://wordpress.org/extend/plugins/hot-friends
+ * @link http://wordpress.org/extend/plugins/quote-this
+ * @link http://wordpress.org/extend/plugins/sidebar-login
+ * @link http://wordpress.org/extend/plugins/wp-cumulus
+ * @link http://wordpress.org/extend/plugins/wp-postratings
+ * @link http://wordpress.org/extend/plugins/wp-postviews
+ * @link http://wordpress.org/extend/plugins/wp-stats
+ * @link http://wordpress.org/extend/plugins/wp-wall
+ *
+ * @copyright 2008 - 2009
+ * @version 0.2
+ * @author Justin Tadlock
+ * @link http://themehybrid.com/themes/hybrid/tabs
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * @package HybridTabs
+ */
+
+/**
+ * Yes, we're localizing the plugin. This partly makes sure non-English
+ * users can use it too. To translate into your language use the
+ * en_EN.po file as as guide. Poedit is a good tool to for translating.
+ * @link http://poedit.net
+ *
+ * @since 0.1
+ */
+load_plugin_textdomain( 'hybrid_tabs', false, '/hybrid-tabs' );
+
+/**
+ * Make sure we get the correct directory.
+ * @since 0.1
+ */
+if ( !defined('WP_CONTENT_URL' ) )
+ define( 'WP_CONTENT_URL', get_option( 'siteurl' ) . '/wp-content' );
+if ( !defined( 'WP_CONTENT_DIR' ) )
+ define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
+if ( !defined( 'WP_PLUGIN_URL' ) )
+ define( 'WP_PLUGIN_URL', WP_CONTENT_URL. '/plugins' );
+if ( !defined( 'WP_PLUGIN_DIR' ) )
+ define( 'WP_PLUGIN_DIR', WP_CONTENT_DIR . '/plugins' );
+
+/**
+ * Define constant paths to the plugin folder.
+ * @since 0.1
+ */
+define( HYBRID_TABS, WP_PLUGIN_DIR . '/hybrid-tabs' );
+define( HYBRID_TABS_URL, WP_PLUGIN_URL . '/hybrid-tabs' );
+
+/**
+ * Global $hybrid_tabs variable, which is where are the tabs are kept.
+ * @since 0.2
+ */
+$hybrid_tabs = array();
+
+/**
+ * Load files at the appropriate time.
+ * @since 0.1
+ */
+add_action( 'init', 'create_initial_hybrid_tabs' );
+add_action( 'plugins_loaded', 'hybrid_tabs_load_tab_functions' );
+add_action( 'wp_print_scripts', 'hybrid_tabs_load_js' );
+add_action( 'widgets_init', 'hybrid_tabs_register_widgets' );
+
+/**
+ * Create the default tabs for use with the widget.
+ * @uses register_hybrid_tab() Registers individual tabs.
+ *
+ * @since 0.2
+ */
+function create_initial_hybrid_tabs() {
+ global $wp_taxonomies;
+
+ /* Authors list. */
+ register_hybrid_tab( 'authors', array( 'label' => __('Authors', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_authors' ) );
+
+ /* Stats plugin (authors' stats). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_authorsstats' ) )
+ register_hybrid_tab( 'get_authorsstats', array( 'label' => __('Authors\' Stats', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_authorsstats' ) );
+
+ /* Calendar. */
+ register_hybrid_tab( 'calendar', array( 'label' => __('Calendar', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_calendar' ) );
+
+ /* Categories list. */
+ register_hybrid_tab( 'categories', array( 'label' => __('Categories', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_categories' ) );
+
+ /* Stats plugin (comments' members stats). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_commentmembersstats' ) )
+ register_hybrid_tab( 'get_commentmembersstats', array( 'label' => __('Comments\' Members Stats', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_commentmembersstats' ) );
+
+ /* Configurable tag cloud. @link http://wordpress.org/extend/plugins/configurable-tag-cloud-widget */
+ if ( function_exists( 'ctc' ) )
+ register_hybrid_tab( 'ctc', array( 'label' => __('Configurable Tag Cloud', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_ctc' ) );
+
+ /* Daily archives list. */
+ register_hybrid_tab( 'daily', array( 'label' => __('Daily Archives', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_daily_archives' ) );
+
+ /* Events calendar plugin. @link http://wordpress.org/extend/plugins/events-calendar */
+ if ( function_exists( 'sidebarEventsCalendar' ) )
+ register_hybrid_tab( 'sidebarEventsCalendar', array( 'label' => __('Events Calendar', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_sidebarEventsCalendar' ) );
+
+ /* Flickr RSS plugin. @link http://wordpress.org/extend/plugins/flickr-rss */
+ if ( function_exists( 'get_flickrRSS' ) )
+ register_hybrid_tab( 'get_flickrRSS', array( 'label' => __('flickrRSS', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_flickrRSS' ) );
+
+ /* Highest rated. @link http://wordpress.org/extend/plugins/wp-postratings */
+ if ( function_exists( 'get_highest_rated' ) )
+ register_hybrid_tab( 'get_highest_rated', array( 'label' => __('Highest Rated', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_highest_rated' ) );
+
+ /* Hot friends plugin. @link http://wordpress.org/extend/plugins/hot-friends */
+ if ( function_exists( 'hot_friends' ) )
+ register_hybrid_tab ( 'hot_friends', array( 'label' => __('Hot Friends', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_hot_friends' ) );
+
+ /* Least viewed. @link http://wordpress.org/extend/plugins/wp-postviews */
+ if ( function_exists( 'get_least_viewed' ) )
+ register_hybrid_tab( 'get_least_viewed', array( 'label' => __('Least Viewed', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_least_viewed' ) );
+
+ /* Stats plugin (link categories). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_linkcats' ) )
+ register_hybrid_tab( 'get_linkcats', array( 'label' => __('Link Category Stats', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_linkcats' ) );
+
+ /* Lowest rated. @link http://wordpress.org/extend/plugins/wp-postratings */
+ if ( function_exists( 'get_lowest_rated' ) )
+ register_hybrid_tab( 'get_lowest_rated', array( 'label' => __('Lowest Rated', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_lowest_rated' ) );
+
+ /* Meta. */
+ register_hybrid_tab( 'meta', array( 'label' => __('Meta', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_meta' ) );
+
+ /* Monthly archives list. */
+ register_hybrid_tab( 'monthly', array( 'label' => __('Monthly Archives', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_monthly_archives' ) );
+
+ /* Stats plugin (most commented). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_mostcommented' ) )
+ register_hybrid_tab( 'get_mostcommented', array( 'label' => __('Most Commented', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_mostcommented' ) );
+
+ /* Most rated. @link http://wordpress.org/extend/plugins/wp-postratings */
+ if ( function_exists( 'get_most_rated' ) )
+ register_hybrid_tab( 'get_most_rated', array( 'label' => __('Most Rated', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_most_rated' ) );
+
+ /* Most viewed. @link http://wordpress.org/extend/plugins/wp-postviews */
+ if ( function_exists( 'get_most_viewed' ) )
+ register_hybrid_tab( 'get_most_viewed', array( 'label' => __('Most Viewed', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_most_viewed' ) );
+
+ /* Pages list. */
+ register_hybrid_tab( 'pages', array( 'label' => __('Pages', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_pages' ) );
+
+ /* Quote This plugin. @link http://justintadlock.com/archives/2009/03/26/quote-this-wordpress-plugin */
+ if ( function_exists( 'quote_this' ) ) :
+ register_hybrid_tab( 'all_quote_this', array( 'label' => __('Quote This: All', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'art_quote_this', array( 'label' => __('Quote This: Art', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'film_quote_this', array( 'label' => __('Quote This: Film', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'friendship_quote_this', array( 'label' => __('Quote This: Friendship', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'individual_quote_this', array( 'label' => __('Quote This: Individual', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'life_quote_this', array( 'label' => __('Quote This: Life', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ register_hybrid_tab( 'literature_quote_this', array( 'label' => __('Quote This: Literature', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_quote_this' ) );
+ endif;
+
+ /* Stats plugin (post categories). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_postcats' ) )
+ register_hybrid_tab( 'get_postcats', array( 'label' => __('Post Category Stats', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_postcats' ) );
+
+ /* Stats plugin (post tags stats). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_tags_list' ) )
+ register_hybrid_tab( 'get_tags_list', array( 'label' => __('Post Tag Stats', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_tags_list' ) );
+
+ /* Random posts list. */
+ register_hybrid_tab( 'random', array( 'label' => __('Random', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_random' ) );
+
+ /* Recent comments. @link http://wordpress.org/extend/plugins/get-recent-comments */
+ if ( function_exists( 'get_recent_comments' ) )
+ register_hybrid_tab( 'get_recent_comments', array( 'label' => __('Recent Comments', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_recent_comments' ) );
+
+ /* Stats plugin (recent comments). @link http://wordpress.org/extend/plugins/wp-stats */
+ if ( function_exists( 'get_recentcomments' ) )
+ register_hybrid_tab( 'get_recentcomments', array( 'label' => __('Recent Comments', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_get_recentcomments' ) );
+
+ /* Post by post (alphabetical) list. */
+ register_hybrid_tab( 'postbyalpha', array( 'label' => __('Recent Posts (Alphabetical)', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_alpha_archives' ) );
+
+ /* Post by post (chronological) list. */
+ register_hybrid_tab( 'postbypost', array( 'label' => __('Recent Posts (Chronological)', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_postbypost_archives' ) );
+
+ /* Recent trackbacks. @link http://wordpress.org/extend/plugins/get-recent-comments */
+ if ( function_exists( 'get_recent_trackbacks' ) )
+ register_hybrid_tab( 'get_recent_trackbacks', array( 'label' => __('Recent Trackbacks', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_recent_trackbacks' ) );
+
+ /* Sidebar login plugin. @link http://wordpress.org/extend/plugins/sidebar-login */
+ if ( function_exists( 'sidebarlogin' ) )
+ register_hybrid_tab( 'sidebarlogin', array( 'label' => __('Sidebar Login', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_sidebarlogin' ) );
+
+ /* Weekly archives list. */
+ register_hybrid_tab( 'weekly', array( 'label' => __('Weekly Archives', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_weekly_archives' ) );
+
+ /* WP Cumulus plugin. @link http://wordpress.org/extend/plugins/wp-cumulus */
+ if ( function_exists( 'wp_cumulus_insert' ) )
+ register_hybrid_tab( 'wp_cumulus_insert', array( 'label' => __('WP Cumulus', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_wp_cumulus_insert' ) );
+
+ /* WP Wall plugin. @link http://wordpress.org/extend/plugins/wp-wall */
+ if ( function_exists( 'WPWall_Widget' ) )
+ register_hybrid_tab( 'WPWall_Widget', array( 'label' => __('WP Wall', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_WPWall_Widget' ) );
+
+ /* Yearly archives list. */
+ register_hybrid_tab( 'yearly', array( 'label' => __('Yearly Archives', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_yearly_archives' ) );
+
+ /* Makes each taxonomy a tab (term/tag cloud). */
+ if ( is_array( $wp_taxonomies ) ) :
+ foreach( $wp_taxonomies as $tax ) :
+ register_hybrid_tab( $tax->name . '_cloud', array( 'label' => sprintf( __('%1$s Cloud', 'hybrid_tabs'), $tax->name ), 'callback' => 'hybrid_tabs_term_cloud' ) );
+ endforeach;
+ endif;
+
+ /* Makes each individual bookmark (link) category a separate tab. */
+ $bookmark_cats = get_categories( array( 'type' => 'link' ) );
+ if ( is_array( $bookmark_cats ) ) :
+ foreach( $bookmark_cats as $cat ) :
+ register_hybrid_tab( $cat->slug . '_bookmarks', array( 'label' => $cat->name, 'callback' =>'hybrid_tabs_bookmarks' ) );
+ endforeach;
+ endif;
+
+ /* Custom tab 1. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_1' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_1', array( 'label' => __('Custom 1', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_1' ) );
+
+ /* Custom tab 2. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_2' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_2', array( 'label' => __('Custom 2', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_2' ) );
+
+ /* Custom tab 3. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_3' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_3', array( 'label' => __('Custom 3', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_3' ) );
+
+ /* Custom tab 4. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_4' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_4', array( 'label' => __('Custom 4', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_4' ) );
+
+ /* Custom tab 5. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_5' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_5', array( 'label' => __('Custom 5', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_5' ) );
+
+ /* Custom tab 6. @deprecated 0.2 */
+ if ( has_filter( 'hybrid_tabs_custom_6' ) )
+ register_hybrid_tab( 'hybrid_tabs_custom_6', array( 'label' => __('Custom 6', 'hybrid_tabs'), 'callback' => 'hybrid_tabs_custom_6' ) );
+}
+
+/**
+ * Register a tab with the plugin.
+ * $name should be a unique identifier for the tab.
+ * $label is the title of the tab.
+ * $callback is the function to call for displaying the tab content.
+ *
+ * @since 0.2
+ * @param string $name Required. Name of the tab.
+ * @param array $args Arguments for tab.
+ */
+function register_hybrid_tab( $name, $args = array() ) {
+ global $hybrid_tabs;
+
+ if ( !is_array( $hybrid_tabs ) )
+ $hybrid_tabs = array();
+
+ $defaults = array( 'label' => '', 'callback' => '' );
+ $args = wp_parse_args( $args, $defaults );
+ extract ( $args );
+
+ $args['name'] = $name;
+ $args['label'] = $label;
+ $args['callback'] = $callback;
+ $hybrid_tabs[$name] = (object) $args;
+}
+
+/**
+ * Get a tab object by the name of the tab.
+ * $tab_name is the unique identifier for the tab.
+ *
+ * @param string $tab_name Name of tab.
+ * @return object $hybrid_tabs[$tab_name] Tab.
+ */
+function get_hybrid_tab( $tab_name ) {
+ global $hybrid_tabs;
+
+ return $hybrid_tabs[$tab_name];
+}
+
+/**
+ * Call the function associated with the tab.
+ * The $tab object is passed to the callback function, which
+ * users can use to customize tabbed content.
+ *
+ * @since 0.1
+ * @param string $tab Name of tab.
+ */
+function hybrid_tabs_get_selected( $tab_name = '' ) {
+ if ( $tab_name == '' )
+ return false;
+
+ $tab = get_hybrid_tab( $tab_name );
+
+ call_user_func( $tab->callback, $tab );
+}
+
+/**
+ * Registers the Hybrid Tabs widget.
+ * @since 0.2
+ */
+function hybrid_tabs_register_widgets() {
+ require_once( HYBRID_TABS . '/tabs-widget.php' );
+ register_widget( 'Hybrid_Tabs_Widget' );
+}
+
+/**
+ * Loads all the tabbed content functions for display.
+ * @since 0.2
+ */
+function hybrid_tabs_load_tab_functions() {
+ if ( !is_admin() && is_active_widget( 'Hybrid_Tabs_Widget', false, 'hybrid-tabs', true ) )
+ require_once( HYBRID_TABS . '/functions.php' );
+}
+
+/**
+ * Load JavaScript only if widget is active and not in the admin.
+ * @since 0.2
+ */
+function hybrid_tabs_load_js() {
+ if ( !is_admin() && is_active_widget( 'Hybrid_Tabs_Widget', false, 'hybrid-tabs', true ) )
+ wp_enqueue_script( 'hybrid-tabs-js', HYBRID_TABS_URL . '/js/tabs.js', array('jquery'), '0.1' );
+}
+
+?>
287 hybrid-tabs.pot
@@ -0,0 +1,287 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: Hybrid Tabs WordPress Plugin\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-11 12:46+0900\n"
+"PO-Revision-Date: \n"
+"Last-Translator: Justin Tadlock <justin@justintadlock.com>\n"
+"Language-Team: <justin@justintadlock.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: English\n"
+"X-Poedit-Country: UNITED STATES\n"
+"X-Poedit-KeywordsList: _e;__\n"
+"X-Poedit-Basepath: .\n"
+"X-Poedit-SearchPath-0: .\n"
+
+#: functions.php:18
+msgid "Syndicate this site using RSS 2.0"
+msgstr ""
+
+#: functions.php:18
+msgid "Entries <abbr title=\"Really Simple Syndication\">RSS</abbr>"
+msgstr ""
+
+#: functions.php:19
+msgid "The latest comments to all posts in RSS"
+msgstr ""
+
+#: functions.php:19
+msgid "Comments <abbr title=\"Really Simple Syndication\">RSS</abbr>"
+msgstr ""
+
+#: functions.php:20
+msgid "Powered by WordPress, state-of-the-art semantic personal publishing platform."
+msgstr ""
+
+#: hybrid-tabs.php:97
+msgid "Authors"
+msgstr ""
+
+#: hybrid-tabs.php:101
+msgid "Authors' Stats"
+msgstr ""
+
+#: hybrid-tabs.php:104
+msgid "Calendar"
+msgstr ""
+
+#: hybrid-tabs.php:107
+msgid "Categories"
+msgstr ""
+
+#: hybrid-tabs.php:111
+msgid "Comments' Members Stats"
+msgstr ""
+
+#: hybrid-tabs.php:115
+msgid "Configurable Tag Cloud"
+msgstr ""
+
+#: hybrid-tabs.php:118
+msgid "Daily Archives"
+msgstr ""
+
+#: hybrid-tabs.php:122
+msgid "Events Calendar"
+msgstr ""
+
+#: hybrid-tabs.php:126
+msgid "flickrRSS"
+msgstr ""
+
+#: hybrid-tabs.php:130
+msgid "Highest Rated"
+msgstr ""
+
+#: hybrid-tabs.php:134
+msgid "Hot Friends"
+msgstr ""
+
+#: hybrid-tabs.php:138
+msgid "Least Viewed"
+msgstr ""
+
+#: hybrid-tabs.php:142
+msgid "Link Category Stats"
+msgstr ""
+
+#: hybrid-tabs.php:146
+msgid "Lowest Rated"
+msgstr ""
+
+#: hybrid-tabs.php:149
+msgid "Meta"
+msgstr ""
+
+#: hybrid-tabs.php:152
+msgid "Monthly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:156
+msgid "Most Commented"
+msgstr ""
+
+#: hybrid-tabs.php:160
+msgid "Most Rated"
+msgstr ""
+
+#: hybrid-tabs.php:164
+msgid "Most Viewed"
+msgstr ""
+
+#: hybrid-tabs.php:167
+msgid "Pages"
+msgstr ""
+
+#: hybrid-tabs.php:171
+msgid "Quote This: All"
+msgstr ""
+
+#: hybrid-tabs.php:172
+msgid "Quote This: Art"
+msgstr ""
+
+#: hybrid-tabs.php:173
+msgid "Quote This: Film"
+msgstr ""
+
+#: hybrid-tabs.php:174
+msgid "Quote This: Friendship"
+msgstr ""
+
+#: hybrid-tabs.php:175
+msgid "Quote This: Individual"
+msgstr ""
+
+#: hybrid-tabs.php:176
+msgid "Quote This: Life"
+msgstr ""
+
+#: hybrid-tabs.php:177
+msgid "Quote This: Literature"
+msgstr ""
+
+#: hybrid-tabs.php:182
+msgid "Post Category Stats"
+msgstr ""
+
+#: hybrid-tabs.php:186
+msgid "Post Tag Stats"
+msgstr ""
+
+#: hybrid-tabs.php:189
+msgid "Random"
+msgstr ""
+
+#: hybrid-tabs.php:193
+#: hybrid-tabs.php:197
+msgid "Recent Comments"
+msgstr ""
+
+#: hybrid-tabs.php:200
+msgid "Recent Posts (Alphabetical)"
+msgstr ""
+
+#: hybrid-tabs.php:203
+msgid "Recent Posts (Chronological)"
+msgstr ""
+
+#: hybrid-tabs.php:207
+msgid "Recent Trackbacks"
+msgstr ""
+
+#: hybrid-tabs.php:211
+msgid "Sidebar Login"
+msgstr ""
+
+#: hybrid-tabs.php:214
+msgid "Weekly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:218
+msgid "WP Cumulus"
+msgstr ""
+
+#: hybrid-tabs.php:222
+msgid "WP Wall"
+msgstr ""
+
+#: hybrid-tabs.php:225
+msgid "Yearly Archives"
+msgstr ""
+
+#: hybrid-tabs.php:230
+#, php-format
+msgid "%1$s Cloud"
+msgstr ""
+
+#: hybrid-tabs.php:244
+msgid "Custom 1"
+msgstr ""
+
+#: hybrid-tabs.php:248
+msgid "Custom 2"
+msgstr ""
+
+#: hybrid-tabs.php:252
+msgid "Custom 3"
+msgstr ""
+
+#: hybrid-tabs.php:256
+msgid "Custom 4"
+msgstr ""
+
+#: hybrid-tabs.php:260
+msgid "Custom 5"
+msgstr ""
+
+#: hybrid-tabs.php:264
+msgid "Custom 6"
+msgstr ""
+
+#: tabs-widget.php:19
+msgid "A tabbed widget for the Hybrid WordPress theme."
+msgstr ""
+
+#: tabs-widget.php:21
+msgid "Tabs"
+msgstr ""
+
+#: tabs-widget.php:105
+msgid "Monthly"
+msgstr ""
+
+#: tabs-widget.php:105
+msgid "Yearly"
+msgstr ""
+
+#: tabs-widget.php:111
+msgid "Tab 1 Content:"
+msgstr ""
+
+#: tabs-widget.php:121
+msgid "Tab 2 Content:"
+msgstr ""
+
+#: tabs-widget.php:131
+msgid "Tab 3 Content:"
+msgstr ""
+
+#: tabs-widget.php:141
+msgid "Tab 4 Content:"
+msgstr ""
+
+#: tabs-widget.php:151
+msgid "Tab 5 Content:"
+msgstr ""
+
+#: tabs-widget.php:161
+msgid "Tab 6 Content:"
+msgstr ""
+
+#: tabs-widget.php:174
+msgid "Tab 1 Title:"
+msgstr ""
+
+#: tabs-widget.php:179
+msgid "Tab 2 Title:"
+msgstr ""
+
+#: tabs-widget.php:184
+msgid "Tab 3 Title:"
+msgstr ""
+
+#: tabs-widget.php:189
+msgid "Tab 4 Title:"
+msgstr ""
+
+#: tabs-widget.php:194
+msgid "Tab 5 Title:"
+msgstr ""
+
+#: tabs-widget.php:199
+msgid "Tab 6 Title:"
+msgstr ""
+
104 js/tabs.js
@@ -0,0 +1,104 @@
+var $j = jQuery.noConflict();
+
+$j(document).ready(function() {
+
+// Setting the tabs in the sidebar hide and show, setting the current tab
+ $j('div.widget-tabs div.tab-content').hide();
+ $j('div.t1').show();
+
+// Add cursor when hovering and tab-current class
+ $j('div.widget-tabs ul.tabs li.t1 a').addClass('tab-current');
+ $j('div.widget-tabs ul li a').css('cursor','pointer');
+
+// Tabs
+ $j('#tab-set-1 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-1 div.tab-content').hide();
+ $j('#tab-set-1 div.' + thisClass).show();
+ $j('#tab-set-1 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-2 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-2 div.tab-content').hide();
+ $j('#tab-set-2 div.' + thisClass).show();
+ $j('#tab-set-2 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-3 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-3 div.tab-content').hide();
+ $j('#tab-set-3 div.' + thisClass).show();
+ $j('#tab-set-3 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-4 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-4 div.tab-content').hide();
+ $j('#tab-set-4 div.' + thisClass).show();
+ $j('#tab-set-4 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-5 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-5 div.tab-content').hide();
+ $j('#tab-set-5 div.' + thisClass).show();
+ $j('#tab-set-5 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-6 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-6 div.tab-content').hide();
+ $j('#tab-set-6 div.' + thisClass).show();
+ $j('#tab-set-6 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-7 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-7 div.tab-content').hide();
+ $j('#tab-set-7 div.' + thisClass).show();
+ $j('#tab-set-7 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-8 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-8 div.tab-content').hide();
+ $j('#tab-set-8 div.' + thisClass).show();
+ $j('#tab-set-8 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-9 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-9 div.tab-content').hide();
+ $j('#tab-set-9 div.' + thisClass).show();
+ $j('#tab-set-9 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-10 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-10 div.tab-content').hide();
+ $j('#tab-set-10 div.' + thisClass).show();
+ $j('#tab-set-10 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+});
104 js/tabs.uncompressed.js
@@ -0,0 +1,104 @@
+var $j = jQuery.noConflict();
+
+$j(document).ready(function() {
+
+// Setting the tabs in the sidebar hide and show, setting the current tab
+ $j('div.widget-tabs div.tab-content').hide();
+ $j('div.t1').show();
+
+// Add cursor when hovering and tab-current class
+ $j('div.widget-tabs ul.tabs li.t1 a').addClass('tab-current');
+ $j('div.widget-tabs ul li a').css('cursor','pointer');
+
+// Tabs
+ $j('#tab-set-1 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-1 div.tab-content').hide();
+ $j('#tab-set-1 div.' + thisClass).show();
+ $j('#tab-set-1 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-2 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-2 div.tab-content').hide();
+ $j('#tab-set-2 div.' + thisClass).show();
+ $j('#tab-set-2 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-3 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-3 div.tab-content').hide();
+ $j('#tab-set-3 div.' + thisClass).show();
+ $j('#tab-set-3 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-4 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-4 div.tab-content').hide();
+ $j('#tab-set-4 div.' + thisClass).show();
+ $j('#tab-set-4 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-5 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-5 div.tab-content').hide();
+ $j('#tab-set-5 div.' + thisClass).show();
+ $j('#tab-set-5 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-6 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-6 div.tab-content').hide();
+ $j('#tab-set-6 div.' + thisClass).show();
+ $j('#tab-set-6 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-7 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-7 div.tab-content').hide();
+ $j('#tab-set-7 div.' + thisClass).show();
+ $j('#tab-set-7 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-8 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-8 div.tab-content').hide();
+ $j('#tab-set-8 div.' + thisClass).show();
+ $j('#tab-set-8 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-9 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-9 div.tab-content').hide();
+ $j('#tab-set-9 div.' + thisClass).show();
+ $j('#tab-set-9 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+ $j('#tab-set-10 ul.tabs li a').click(
+ function() {
+ var thisClass = this.className.slice(0,2);
+ $j('#tab-set-10 div.tab-content').hide();
+ $j('#tab-set-10 div.' + thisClass).show();
+ $j('#tab-set-10 ul.tabs li a').removeClass('tab-current');
+ $j(this).addClass('tab-current');
+ }
+ );
+});
66 readme.css
@@ -0,0 +1,66 @@
+/* Reset values */
+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}
+
+body {
+ width: 750px;
+ margin: 36px auto 60px auto;
+ font: 15px/21px Arial, 'Helvetica Neue', Helvetica, sans-serif;
+ font: 16px/25px Georgia, Times, 'Times New Roman', serif;
+ }
+/* Links */
+a:link, a:visited {
+ color: #2f6eb9;
+ text-decoration: none;
+ }
+a:hover, a:active {
+ text-decoration: underline;
+ }
+/* Headers */
+h1, h2, h3, h4, h5, h6 {
+ margin: 40px 0 30px 0;
+ color: #000;
+ font-weight: bold;
+ font-family: Arial, sans-serif;
+ }
+h1 {
+ margin-top: 80px;
+ font-size: 2.2em;
+ }
+code {
+ padding: 0 3px;
+ background: #eee;
+ }
+pre code {
+ padding: 0;
+ }
+pre {
+ padding: 9px;
+ background: #eee;
+ border: 1px solid #ccc;
+ }
+ul {
+ list-style: square;
+ }
+p.first {
+ font-size: 21px;
+ }
+p.second {
+ font-size: 15px;
+ }
+ul.space li {
+ margin-bottom: 10px;
+ }
+.section {
+ overflow: hidden;
+ }
+
+.columns-2 {
+ float: left;
+ width: 350px;
+ margin: 0 0 21px 25px;
+ }
+.columns-3 {
+ float: left;
+ width: 230px;
+ margin: 0 0 21px 20px;
+ }
146 readme.html
@@ -0,0 +1,146 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
+<title>A guide to the Hybrid Tabs plugin</title>
+
+<link rel="stylesheet" href="readme.css" type="text/css" media="screen" />
+
+</head>
+<body>
+
+<h1 title="A guide to using the Hybrid Tabs plugin">A guide to Hybrid Tabs</h1>
+
+<p><em>Hybrid Tabs</em> is a plugin that allows you to have tabbed widgets with the <a href="http://themehybrid.com" title="Hybrid WordPress Theme">Hybrid WordPress theme</a>. Currently, you can add up to 10 tabbed widgets to your theme on a single page without worry of a conflict between the tabs.</p>
+
+<p>I always love getting feedback and hearing ideas about things that should be added (without adding bloat to the plugin) in the <a href="http://themehybrid.com/community/forum/ideas" title="Theme Hybrid Ideas Forum">ideas forum</a>. I know many of you have asked for this to be included in the core of <em>Hybrid</em>, but that is something that won't be happening. Hence, the plugin.</p>
+
+<h2>How to install the plugin</h2>
+
+<ol>
+ <li>Uzip the <code>hybrid-tabs.zip</code> folder.</li>
+ <li>Upload the <code>hybrid-tabs</code> folder to your <code>/wp-content/plugins</code> directory.</li>
+ <li>In your WordPress dashboard, head over to the <em>Plugins</em> section.</li>
+ <li>Activate <em>Hybrid Tabs</em>.</li>
+</ol>
+
+<h2>Setting up your theme's CSS</h2>
+
+<p>The plugin was designed to work with multiple child themes, so it doesn't load any <acronym title="Cascading Style Sheets">CSS</acronym> by default. You'll have to add the style rules to your theme. I've created the styles for <em>Hybrid</em> and its child themes. For child themes that support the tabs widget, there'll be a <code>tabs.css</code> file available within the download package.</p>
+
+<p>In order to use the available tabs <acronym title="Cascading Style Sheets">CSS</acronym> file, open your child theme's <code>style.css</code> file and find this line:</p>
+
+<pre><code>/* @import url('tabs.css'); */</code></pre>
+
+<p>Change it so that it looks exactly like this:</p>
+
+<pre><code>@import url('tabs.css');</code></pre>
+
+<p>Once that's done, save the file. You're ready to go!</p>
+
+<h2>How to use the plugin</h2>
+
+<p>Once you've activated the plugin, go to the <em>Widgets</em> control panel and select a widget section that you'd like to add tabs to. </p>
+
+<p>You can add up to six tabs per tabbed widget, but not all themes and widget areas will accommodate that many, so you might not be able to add that many tabs without breaking the layout. You'll just have to test it to see what works best for your design. For each tab, you can choose pre-configured tabbed content (I'll cover <em>custom</em> content later) and input a custom title.</p>
+
+<h2>Available tabs</h2>
+
+<p>Most tabs are pre-configured to display a certain amount of content. These are basic WordPress functions that you usually see used in normal widget areas.</p>
+
+<ul>
+ <li>Bookmarks/Links (individual link category lists).</li>
+ <li>Authors.</li>
+ <li>Calendar.</li>
+ <li>Categories.</li>
+ <li>Daily archives.</li>
+ <li>Meta.</li>
+ <li>Monthly archives.</li>
+ <li>Pages.</li>
+ <li>Recent posts (alphabetical).</li>
+ <li>Recent posts (chronological).</li>
+ <li>Random.</li>
+ <li>Tag/term clouds (based on all taxonomies).</li>
+ <li>Weekly archives.</li>
+ <li>Yearly archives.</li>
+ <li>Custom 1 - 6 (early beta users should move to the new system).</li>
+</ul>
+
+<p><em>Hybrid Tabs</em> has also been designed to work with several plugins (all need testing). Each plugin will create one or more tabs that you can choose from. I would also be happy to integrate other plugins, if possible, into the widget if you let me know. Here's a list of the currently-supported plugins:</p>
+
+<ul>
+ <li><a href="http://wordpress.org/extend/plugins/configurable-tag-cloud-widget" title="Configurable Tag Cloud">Configurable Tag Cloud</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/events-calendar" title="Events Calendar">Events Calendar</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/flickr-rss" title="flickrRSS">flickrRSS</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/get-recent-comments" title="Get Recent Comments">Get Recent Comments</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/hot-friends" title="Hot Friends">Hot Friends</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/quote-this" title="Quote This">Quote This</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/sidebar-login" title="Sidebar Login">Sidebar Login</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/wp-cumulus" title="WP Cumulus">WP Cumulus</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/wp-postratings" title="WP Post Ratings">WP Post Ratings</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/wp-postviews" title="WP Post Views">WP Post Views</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/wp-stats" title="WP Stats">WP Stats</a></li>
+ <li><a href="http://wordpress.org/extend/plugins/wp-wall" title="WP Wall">WP Wall</a></li>
+</ul>
+
+<h2 id="custom-tabs">Custom Tabs</h2>
+
+<p class="alert">Creating custom tabs is for <strong>advanced users only</strong>. You need to be comfortable working with <acronym title="PHP Hypertext Preprocessor">PHP</acronym> to even attempt this. I would say you need to be at least an intermediate-level <acronym title="PHP Hypertext Preprocessor">PHP</acronym> coder and have a workable knowledge of how the WordPress function works.</p>
+
+<p>If you've previously used the <em>Hybrid Tabs</em> in the earlier beta version, you'll love this new way of adding custom tabs. It's much simpler. I'll show you how to easily add two new tabs here.</p>
+
+<p>Open your theme's <code>functions.php</code> file and add this <acronym title="PHP Hypertext Preprocessor">PHP</acronym> code:</p>
+
+<pre><code>add_action( 'init', 'create_my_custom_tabs' );
+
+function create_my_custom_tabs() {
+ register_hybrid_tab( 'custom_1', array( 'label' => 'Hello World', 'callback' => 'hello_world_function' ) );
+
+ register_hybrid_tab( 'basketball', array( 'label' => 'Basketball Scores', 'callback' => 'basketball_scores' ) );
+}</code></pre>
+
+<p>Before we move on, let me explain each part of the <code>register_hybrid_tab()</code> function because it's pretty important.</p>
+
+<ul>
+ <li>The first part (<code>custom_1</code>, <code>basketball</code>), is a unique identifier for your custom tab.</li>
+ <li><code>label</code> is what you want to name/title your custom tab (can be changed in widget settings).</li>
+ <li><code>callback</code> is the function you'll use to display the content of your custom tab.</li>
+</ul>
+
+<p>Now, let's create the function that will show our first <code>custom_1</code> tab content. Add this:</p>
+
+<pre><code>function hello_world_function() {
+ echo 'Hello World!';
+}</code></pre>
+
+<p>Pretty simple, right? Now, let's show a list of basketball scores (our second tab). Add this:</p>
+
+<pre><code>function basketball_scores() { ?>
+ &lt;ul>
+ &lt;li>Game 1 (W) 100 - 99&lt;/li>
+ &lt;li>Game 2 (L) 87 - 93&lt;/li>
+ &lt;li>Game 3 (W) 103 - 77&lt;/li>
+ &lt;li>Game 4 (W) 108 - 68&lt;/li>
+ &lt;li>Game 5 (L) 66 - 79&lt;/li>
+ &lt;/ul>
+&lt;?php }</code></pre>
+
+
+<p>You can do pretty much anything. <em>The sky is the limit</em>, as they say.</p>
+
+<h2>Plugin support</h2>
+
+<p>I run a WordPress community called <a href="http://themehybrid.com" title="Theme Hybrid">Theme Hybrid</a>, which is where I fully support all of my WordPress projects, including plugins. You can sign up for an account to get plugin support for a small yearly fee ($25 <acronym title="United States Dollars">USD</acronym> at the time of writing).</p>
+
+<p>I know. I know. You might not want to pay for support, but just consider it a donation to the project. To continue making cool, <acronym title="GNU General Public License">GPL</acronym>-licensed plugins and having the time to support them, I must pay the bills.</p>
+
+<h2>Copyright &amp; license</h2>
+
+<p><em>Hybrid Tabs</em> is licensed under the <a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html" title="GNU GPL">GNU General Public License</a>, version 2 (<acronym title="GNU General Public License">GPL</acronym>).</p>
+
+<p>This plugin is copyrighted to <a href="http://justintadlock.com" title="Justin Tadlock">Justin Tadlock</a>.</p>
+
+<p>2008&thinsp;&ndash;&thinsp;2009 &copy; Justin Tadlock</p>
+
+</body>
+</html>
128 readme.txt
@@ -0,0 +1,128 @@
+=== Hybrid Tabs ===
+Contributors: greenshady
+Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3687060
+Tags: widget, jquery, javascript
+Requires at least: 2.8
+Tested up to: 2.8
+Stable tag: 0.2
+
+Adds a tabbed widget to the Hybrid theme framework that can be used in multiple widget areas.
+
+== Description ==
+
+*Hybrid Tabs* is a widget created for use with the <a href="http://themehybrid.com/themes/hybrid" title="Hybrid WordPress theme framework">Hybrid theme</a>. It was created because of the demand of users to have an easy-to-use tabbed widget for their sites. I didn't want to add something like this to the theme, so we settled on a compromise: a plugin/widget.
+
+**This plugin is for WordPress 2.8+ only.**
+
+**Default tabs:**
+
+* Bookmarks/Links (individual link category lists).
+* Authors.
+* Calendar.
+* Categories.
+* Daily archives.
+* Meta.
+* Monthly archives.
+* Pages.
+* Recent posts (alphabetical).
+* Recent posts (chronological).
+* Random.
+* Tag/term clouds (based on all taxonomies).
+* Weekly archives.
+* Yearly archives.
+
+**Adds tabs for these plugins:**
+
+* <a href="http://wordpress.org/extend/plugins/configurable-tag-cloud-widget" title="Configurable Tag Cloud">Configurable Tag Cloud</a>
+* <a href="http://wordpress.org/extend/plugins/events-calendar" title="Events Calendar">Events Calendar</a>
+* <a href="http://wordpress.org/extend/plugins/flickr-rss" title="flickrRSS">flickrRSS</a>
+* <a href="http://wordpress.org/extend/plugins/get-recent-comments" title="Get Recent Comments">Get Recent Comments</a>
+* <a href="http://wordpress.org/extend/plugins/hot-friends" title="Hot Friends">Hot Friends</a>
+* <a href="http://wordpress.org/extend/plugins/quote-this" title="Quote This">Quote This</a>
+* <a href="http://wordpress.org/extend/plugins/sidebar-login" title="Sidebar Login">Sidebar Login</a>
+* <a href="http://wordpress.org/extend/plugins/wp-cumulus" title="WP Cumulus">WP Cumulus</a>
+* <a href="http://wordpress.org/extend/plugins/wp-postratings" title="WP Post Ratings">WP Post Ratings</a>
+* <a href="http://wordpress.org/extend/plugins/wp-postviews" title="WP Post Views">WP Post Views</a>
+* <a href="http://wordpress.org/extend/plugins/wp-stats" title="WP Stats">WP Stats</a>
+* <a href="http://wordpress.org/extend/plugins/wp-wall" title="WP Wall">WP Wall</a>
+
+Full instructions for use can be found in the plugin's `readme.html` file, which is included with the plugin download.
+
+== Installation ==
+
+1. Upload `hybrid-tabs.zip` to the `/wp-content/plugins/` directory.
+2. Activate the plugin through the *Plugins* menu in WordPress.
+3. Add the <em>Hybrid Tabs</em> widget to one of your widget areas from the *Widgets* panel.
+
+More detailed instructions can be found in the plugin's `readme.html` file.
+
+== Frequently Asked Questions ==
+
+= Why create this plugin? =
+
+Users wanted a tabbed widget that would work well with child themes of the <a href="http://themehybrid.com/themes/hybrid" title="Hybrid WordPress theme">Hybrid theme framework</a>. This plugin allows that.
+
+= What does this plugin do, exactly? =
+
+It creates a new widget called *Hybrid Tabs* that offers a several tab-content options.
+
+= What tabs are available by default? =
+
+* Bookmarks/Links (individual link category lists).
+* Authors.
+* Calendar.
+* Categories.
+* Daily archives.
+* Meta.
+* Monthly archives.
+* Pages.
+* Recent posts (alphabetical).
+* Recent posts (chronological).
+* Random.
+* Tag/term clouds (based on all taxonomies).
+* Weekly archives.
+* Yearly archives.
+
+= Can I get more tabs? =
+
+If you have any of these plugins activated, they will create additional tab options for you:
+
+* <a href="http://wordpress.org/extend/plugins/configurable-tag-cloud-widget" title="Configurable Tag Cloud">Configurable Tag Cloud</a>
+* <a href="http://wordpress.org/extend/plugins/events-calendar" title="Events Calendar">Events Calendar</a>
+* <a href="http://wordpress.org/extend/plugins/flickr-rss" title="flickrRSS">flickrRSS</a>
+* <a href="http://wordpress.org/extend/plugins/get-recent-comments" title="Get Recent Comments">Get Recent Comments</a>
+* <a href="http://wordpress.org/extend/plugins/hot-friends" title="Hot Friends">Hot Friends</a>
+* <a href="http://wordpress.org/extend/plugins/quote-this" title="Quote This">Quote This</a>
+* <a href="http://wordpress.org/extend/plugins/sidebar-login" title="Sidebar Login">Sidebar Login</a>
+* <a href="http://wordpress.org/extend/plugins/wp-cumulus" title="WP Cumulus">WP Cumulus</a>
+* <a href="http://wordpress.org/extend/plugins/wp-postratings" title="WP Post Ratings">WP Post Ratings</a>
+* <a href="http://wordpress.org/extend/plugins/wp-postviews" title="WP Post Views">WP Post Views</a>
+* <a href="http://wordpress.org/extend/plugins/wp-stats" title="WP Stats">WP Stats</a>
+* <a href="http://wordpress.org/extend/plugins/wp-wall" title="WP Wall">WP Wall</a>
+
+= Can I make custom tabs? =
+
+Of course. Included in the plugin's `readme.html` file is a set of instructions on how to create your own tabs for this widget.
+
+= I don't understand any of this. What should I do? =
+
+You should do a little reading. The `readme.html` file included with the plugin has links to tons of resources. Everything you need to know is there.
+
+== Screenshots ==
+
+There are currently no screenshots.
+
+== Changelog ==
+
+**Version 0.2**
+
+* Completely recoded from the ground up.
+* Widget uses WordPress 2.8's new widget class.
+* Created additional tab options.
+* Added the `register_tab()` function for creating custom tabs.
+* Added support for several plugins.
+* Removed support for versions of WordPress prior to 2.8.
+
+**Version 0.1**
+
+* Plugin launch.
209 tabs-widget.php
@@ -0,0 +1,209 @@
+<?php
+/**
+ * Tabs Widget.
+ * Add a widget with multiple tab options.
+ *
+ * In 0.2, converted functions to a class that extends WP 2.8's widget class.
+ *
+ * @package HybridTabs
+ */
+
+/**
+ * Output of the tabbed widget.
+ *
+ * @since 0.2
+ */
+class Hybrid_Tabs_Widget extends WP_Widget {
+
+ function Hybrid_Tabs_Widget() {
+ $widget_ops = array( 'classname' => 'tabs', 'description' => __('A tabbed widget for the Hybrid WordPress theme.', 'hybrid_tabs') );
+ $control_ops = array( 'width' => 600, 'height' => 350, 'id_base' => 'hybrid-tabs' );
+ $this->WP_Widget( 'hybrid-tabs', __('Tabs', 'hybrid_tabs'), $widget_ops, $control_ops );
+ }
+
+ function widget( $args, $instance ) {
+ global $tab_set_num;
+
+ extract( $args );
+
+ $tab1 = $instance['tab1'];
+ $tab2 = $instance['tab2'];
+ $tab3 = $instance['tab3'];
+ $tab4 = $instance['tab4'];
+ $tab5 = $instance['tab5'];
+ $tab6 = $instance['tab6'];
+
+ $tab1_title = $instance['tab1_title'] ? apply_filters('widget_title', $instance['tab1_title'] ) : $tab1;
+ $tab2_title = $instance['tab2_title'] ? apply_filters('widget_title', $instance['tab2_title'] ) : $tab2;
+ $tab3_title = $instance['tab3_title'] ? apply_filters('widget_title', $instance['tab3_title'] ) : $tab3;
+ $tab4_title = $instance['tab4_title'] ? apply_filters('widget_title', $instance['tab4_title'] ) : $tab4;
+ $tab5_title = $instance['tab5_title'] ? apply_filters('widget_title', $instance['tab5_title'] ) : $tab5;
+ $tab6_title = $instance['tab6_title'] ? apply_filters('widget_title', $instance['tab6_title'] ) : $tab6;
+
+ $tabs_arr = array(
+ array( $tab1, $tab1_title ),
+ array( $tab2, $tab2_title ),
+ array( $tab3, $tab3_title ),
+ array( $tab4, $tab4_title ),
+ array( $tab5, $tab5_title ),
+ array( $tab6, $tab6_title )
+ );
+
+ $tab_set_num++;
+
+ $before_widget = preg_replace( '/id="[^"]*"/', 'id="tab-set-' . $tab_set_num . '"', $before_widget );
+
+ echo $before_widget;
+
+ echo '<ul class="tabs">';
+
+ foreach ( $tabs_arr as $tab ) :
+ if ( $tab[0] ) :
+ ++$i;
+ echo '<li class="t' . $i . ' t"><a class="t' . $i . '" title="' . $tab[1] . '">' . $tab[1] . '</a></li>';
+ endif;
+ endforeach;
+
+ echo '</ul>';
+
+ foreach ( $tabs_arr as $tab ) :
+ if ( $tab[0] ) :
+ ++$j;
+ echo '<div class="tab-content t' . $j . '">';
+ hybrid_tabs_get_selected( $tab[0] );
+ echo '</div>';
+ endif;
+ endforeach;
+
+ echo $after_widget;
+ }
+
+ function update( $new_instance, $old_instance ) {
+ $instance = $old_instance;
+
+ $instance['tab1'] = $new_instance['tab1'];
+ $instance['tab2'] = $new_instance['tab2'];
+ $instance['tab3'] = $new_instance['tab3'];
+ $instance['tab4'] = $new_instance['tab4'];
+ $instance['tab5'] = $new_instance['tab5'];
+ $instance['tab6'] = $new_instance['tab6'];
+
+ $instance['tab1_title'] = strip_tags( $new_instance['tab1_title'] );
+ $instance['tab2_title'] = strip_tags( $new_instance['tab2_title'] );
+ $instance['tab3_title'] = strip_tags( $new_instance['tab3_title'] );
+ $instance['tab4_title'] = strip_tags( $new_instance['tab4_title'] );
+ $instance['tab5_title'] = strip_tags( $new_instance['tab5_title'] );
+ $instance['tab6_title'] = strip_tags( $new_instance['tab6_title'] );
+
+ return $instance;
+ }
+
+ function form( $instance ) {
+ global $hybrid_tabs;
+
+ //Defaults
+ $defaults = array( 'tab1' => 'monthly', 'tab1_title' => __('Monthly', 'hybrid_tabs'), 'tab2' => 'yearly', 'tab2_title' => __('Yearly', 'hybrid_tabs' ) );
+ $instance = wp_parse_args( (array) $instance, $defaults ); ?>
+
+ <div style="float:left;width:48%;">
+
+ <p>
+ <label for="<?php echo $this->get_field_id( 'tab1' ); ?>"><?php _e('Tab 1 Content:','hybrid_tabs'); ?></label>
+ <select id="<?php echo $this->get_field_id( 'tab1' ); ?>" name="<?php echo $this->get_field_name( 'tab1' ); ?>" class="widefat" style="width:100%;">
+ <option <?php if ( !$instance['tab1'] ) echo ' selected="selected"'; ?> value=""></option>
+ <?php foreach ( $hybrid_tabs as $tab ) : ?>
+ <option <?php if ( $tab->name == $instance['tab1'] ) echo ' selected="selected"'; ?> value="<?php echo $tab->name; ?>"><?php echo $tab->label; ?></option>
+ <?php endforeach; ?>
+ </select>
+ </p>
+
+ <p>
+ <label for="<?php echo $this->get_field_id( 'tab2' ); ?>"><?php _e('Tab 2 Content:','hybrid_tabs'); ?></label>
+ <select id="<?php echo $this->get_field_id( 'tab2' ); ?>" name="<?php echo $this->get_field_name( 'tab2' ); ?>" class="widefat" style="width:100%;">
+ <option <?php if ( !$instance['tab2'] ) echo ' selected="selected"'; ?> value=""></option>
+ <?php foreach ( $hybrid_tabs as $tab ) : ?>
+ <option <?php if ( $tab->name == $instance['tab2'] ) echo ' selected="selected"'; ?> value="<?php echo $tab->name; ?>"><?php echo $tab->label; ?></option>
+ <?php endforeach; ?>
+ </select>
+ </p>
+
+ <p>
+ <label for="<?php echo $this->get_field_id( 'tab3' ); ?>"><?php _e('Tab 3 Content:','hybrid_tabs'); ?></label>
+ <select id="<?php echo $this->get_field_id( 'tab3' ); ?>" name="<?php echo $this->get_field_name( 'tab3' ); ?>" class="widefat" style="width:100%;">
+ <option <?php if ( !$instance['tab3'] ) echo ' selected="selected"'; ?> value=""></option>
+ <?php foreach ( $hybrid_tabs as $tab ) : ?>
+ <option <?php if ( $tab->name == $instance['tab3'] ) echo ' selected="selected"'; ?> value="<?php echo $tab->name; ?>"><?php echo $tab->label; ?></option>
+ <?php endforeach; ?>
+ </select>
+ </p>
+
+ <p>
+ <label for="<?php echo $this->get_field_id( 'tab4' ); ?>"><?php _e('Tab 4 Content:','hybrid_tabs'); ?></label>
+ <select id="<?php echo $this->get_field_id( 'tab4' ); ?>" name="<?php echo $this->get_field_name( 'tab4' ); ?>" class="widefat" style="width:100%;">
+ <option <?php if ( !$instance['tab4'] ) echo ' selected="selected"'; ?> value=""></option>
+ <?php foreach ( $hybrid_tabs as $tab ) : ?>
+ <option <?php if ( $tab->name == $instance['tab4'] ) echo ' selected="selected"'; ?> value="<?php echo $tab->name; ?>"><?php echo $tab->label; ?></option>
+ <?php endforeach; ?>
+ </select>
+ </p>
+
+ <p>
+ <