/** * Echo post meta author shortcode. * * @since 1.0.0 */ function beans_post_meta_author_shortcode() { beans_output_e('beans_post_meta_author_prefix', __('By ', 'tm-beans')); beans_open_markup_e('beans_post_meta_author', 'a', array('href' => get_author_posts_url(get_the_author_meta('ID')), 'rel' => 'author', 'itemprop' => 'author', 'itemscope' => '', 'itemtype' => 'http://schema.org/Person')); beans_output_e('beans_post_meta_author_text', get_the_author()); beans_selfclose_markup_e('beans_post_meta_author_name_meta', 'meta', array('itemprop' => 'name', 'content' => get_the_author())); beans_close_markup_e('beans_post_meta_author', 'a'); }
/** * Echo no widget content. * * @since 1.0.0 */ function beans_no_widget() { // Only apply this notice to sidebar_primary and sidebar_secondary. if (!in_array(beans_get_widget_area('id'), array('sidebar_primary', 'sidebar_secondary'))) { return; } beans_open_markup_e('beans_no_widget_notice', 'p', array('class' => 'uk-alert uk-alert-warning')); beans_output_e('beans_no_widget_notice_text', sprintf(__('%s does not have any widget assigned!', 'tm-beans'), beans_get_widget_area('name'))); beans_close_markup_e('beans_no_widget_notice', 'p'); }
/** * Echo the footer content. * * @since 1.0.0 */ function beans_footer_content() { beans_open_markup_e('beans_footer_credit', 'div', array('class' => 'uk-clearfix uk-text-small uk-text-muted')); beans_open_markup_e('beans_footer_credit_left', 'span', array('class' => 'uk-align-medium-left uk-margin-small-bottom')); beans_output_e('beans_footer_credit_text', sprintf(__('© %1$s - %2$s. All rights reserved.', 'tm-beans'), date('Y'), get_bloginfo('name'))); beans_close_markup_e('beans_footer_credit_left', 'span'); $framework_link = beans_open_markup('beans_footer_credit_framework_link', 'a', array('href' => 'http://www.getbeans.io', 'rel' => 'designer')); $framework_link .= beans_output('beans_footer_credit_framework_link_text', 'Beans'); $framework_link .= beans_close_markup('beans_footer_credit_framework_link', 'a'); beans_open_markup_e('beans_footer_credit_right', 'span', array('class' => 'uk-align-medium-right uk-margin-bottom-remove')); beans_output_e('beans_footer_credit_right_text', sprintf(__('%1$s theme for WordPress.', 'tm-beans'), $framework_link)); beans_close_markup_e('beans_footer_credit_right', 'span'); beans_close_markup_e('beans_footer_credit', 'div'); }
/** * Echo no post content. * * @since 1.0.0 */ function beans_no_post() { beans_open_markup_e('beans_post', 'article', array('class' => 'tm-no-article uk-article' . (current_theme_supports('beans-default-styling') ? ' uk-panel-box' : null))); beans_open_markup_e('beans_post_header', 'header'); beans_open_markup_e('beans_post_title', 'h1', array('class' => 'uk-article-title')); beans_output_e('beans_no_post_article_title_text', __('Whoops, no result found!', 'tm-beans')); beans_close_markup_e('beans_post_title', 'h1'); beans_close_markup_e('beans_post_header', 'header'); beans_open_markup_e('beans_post_body', 'div'); beans_open_markup_e('beans_post_content', 'div', array('class' => 'tm-article-content')); beans_open_markup_e('beans_no_post_article_content', 'p', array('class' => 'uk-alert uk-alert-warning')); beans_output_e('beans_no_post_article_content_text', __('It looks like nothing was found at this location. Maybe try a search?', 'tm-beans')); beans_close_markup_e('beans_no_post_article_content', 'p'); beans_output_e('beans_no_post_search_form', get_search_form(false)); beans_close_markup_e('beans_post_content', 'div'); beans_close_markup_e('beans_post_body', 'div'); beans_close_markup_e('beans_post', 'article'); }
/** * Echo no menu notice. * * @since 1.0.0 */ function beans_no_menu_notice() { beans_open_markup_e('beans_no_menu_notice', 'p', array('class' => 'uk-alert uk-alert-warning')); beans_output_e('beans_no_menu_notice_text', __('Whoops, your site does not have a menu!', 'tm-beans')); beans_close_markup_e('beans_no_menu_notice', 'p'); }
/** * Echo the breadcrumb. * * @since 1.0.0 */ function beans_breadcrumb() { if (is_home() || is_front_page()) { return; } wp_reset_query(); global $post; $post_type = get_post_type(); $breadcrumbs = array(); $breadcrumbs[home_url()] = __('Home', 'tm-beans'); // Custom post type. if (!in_array($post_type, array('page', 'attachment', 'post')) && !is_404()) { if ($post_type_object = get_post_type_object($post_type)) { $breadcrumbs[get_post_type_archive_link($post_type)] = $post_type_object->labels->name; } } // Single posts. if (is_single() && 'post' == $post_type) { foreach (get_the_category($post->ID) as $category) { $breadcrumbs[get_category_link($category->term_id)] = $category->name; } $breadcrumbs[] = get_the_title(); } elseif (is_singular() && !is_home() && !is_front_page()) { // Pages/custom post type. $current_page = array($post); // Get the parent pages of the current page if they exist. if (isset($current_page[0]->post_parent)) { while ($current_page[0]->post_parent) { array_unshift($current_page, get_post($current_page[0]->post_parent)); } } // Add returned pages to breadcrumbs. foreach ($current_page as $page) { $breadcrumbs[get_page_link($page->ID)] = $page->post_title; } } elseif (is_category()) { // Categories. $breadcrumbs[] = single_cat_title('', false); } elseif (is_tax()) { // Taxonomies. $current_term = get_term_by('slug', get_query_var('term'), get_query_var('taxonomy')); $ancestors = array_reverse(get_ancestors($current_term->term_id, get_query_var('taxonomy'))); foreach ($ancestors as $ancestor) { $ancestor = get_term($ancestor, get_query_var('taxonomy')); $breadcrumbs[get_term_link($ancestor->slug, get_query_var('taxonomy'))] = $ancestor->name; } $breadcrumbs[] = $current_term->name; } elseif (is_search()) { // Searches. $breadcrumbs[] = __('Results:', 'tm-beans') . ' ' . get_search_query(); } elseif (is_author()) { // Author archives. $author = get_queried_object(); $breadcrumbs[] = __('Author Archives:', 'tm-beans') . ' ' . $author->display_name; } elseif (is_tag()) { // Tag archives. $breadcrumbs[] = __('Tag Archives:', 'tm-beans') . ' ' . single_tag_title('', false); } elseif (is_date()) { // Date archives. $breadcrumbs[] = __('Archives:', 'tm-beans') . ' ' . get_the_time('F Y'); } elseif (is_404()) { // 404. $breadcrumbs[] = __('404', 'tm-beans'); } // Open breadcrumb. beans_open_markup_e('beans_breadcrumb', 'ul', array('class' => 'uk-breadcrumb uk-width-1-1')); $i = 0; foreach ($breadcrumbs as $breadcrumb_url => $breadcrumb) { // Breadcrumb items. if (count($breadcrumbs) - 1 != $i) { beans_open_markup_e('beans_breadcrumb_item', 'li'); beans_open_markup_e('beans_breadcrumb_item_link', 'a', array('href' => $breadcrumb_url)); // Used for mobile devices. beans_open_markup_e('beans_breadcrumb_item_link_inner', 'span'); beans_output_e('beans_breadcrumb_item_text', $breadcrumb); beans_close_markup_e('beans_breadcrumb_item_link_inner', 'span'); beans_close_markup_e('beans_breadcrumb_item_link', 'a'); beans_close_markup_e('beans_breadcrumb_item', 'li'); } else { // Active. beans_open_markup_e('beans_breadcrumb_item[_active]', 'li', array('class' => 'uk-active uk-text-muted')); beans_output_e('beans_breadcrumb_item[_active]_text', $breadcrumb); beans_close_markup_e('beans_breadcrumb_item[_active]', 'li'); } $i++; } // Close breadcrumb. beans_close_markup_e('beans_breadcrumb', 'ul'); }
/** * Echo header site title tag. * * @since 1.0.0 */ function beans_site_title_tag() { // Stop here if there isn't a description. if (!($description = get_bloginfo('description'))) { return; } beans_open_markup_e('beans_site_title_tag', 'span', array('class' => 'tm-site-title-tag uk-text-small uk-text-muted uk-display-block', 'itemprop' => 'description')); beans_output_e('beans_site_title_tag_text', $description); beans_close_markup_e('beans_site_title_tag', 'span'); }
/** * Echo closed comments content. * * @since 1.0.0 */ function beans_comments_closed() { beans_open_markup_e('beans_comments_closed', 'p', array('class' => 'uk-alert uk-alert-warning uk-margin-bottom-remove')); beans_output_e('beans_comments_closed_text', __('Comments are closed for this article!', 'tm-beans')); beans_close_markup_e('beans_comments_closed', 'p'); }
<?php /** * Despite its name, this template echos between the opening HTML markup and the opening primary markup. * * This template must be called using get_header(). * * @package Structure\Header */ beans_output_e('beans_doctype', '<!DOCTYPE html>'); beans_open_markup_e('beans_html', 'html', str_replace(' ', '&', str_replace('"', '', beans_render_function('language_attributes')))); beans_open_markup_e('beans_head', 'head'); /** * Fires in the head. * * This hook fires in the head HTML section, not in wp_header(). * * @since 1.0.0 */ do_action('beans_head'); wp_head(); beans_close_markup_e('beans_head', 'head'); beans_open_markup_e('beans_body', 'body', array('class' => implode(' ', get_body_class('uk-form no-js')), 'itemscope' => 'itemscope', 'itemtype' => 'http://schema.org/WebPage')); beans_open_markup_e('beans_site', 'div', array('class' => 'tm-site')); beans_open_markup_e('beans_main', 'main', array('class' => 'tm-main uk-block')); beans_open_markup_e('beans_fixed_wrap[_main]', 'div', 'class=uk-container uk-container-center'); beans_open_markup_e('beans_main_grid', 'div', array('class' => 'uk-grid', 'data-uk-grid-margin' => '')); beans_open_markup_e('beans_primary', 'div', array('class' => 'tm-primary ' . beans_get_layout_class('content')));