Update HTML attribute order

This commit is contained in:
Max Myers 2016-11-01 12:13:23 -04:00
parent 8f973a3525
commit d0c0cddfc1
24 changed files with 296 additions and 297 deletions

View File

@ -8,13 +8,13 @@
?> ?>
<div class="wrapper" id="404-wrapper"> <div class="wrapper" id="404-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="content-area"> <div class="content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<section class="error-404 not-found"> <section class="error-404 not-found">

View File

@ -12,13 +12,13 @@
<div class="wrapper" id="archive-wrapper"> <div class="wrapper" id="archive-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php if ( have_posts() ) : ?> <?php if ( have_posts() ) : ?>

View File

@ -11,13 +11,13 @@
<div class="wrapper" id="author-wrapper"> <div class="wrapper" id="author-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<header class="page-header author-header"> <header class="page-header author-header">
@ -53,7 +53,7 @@
<?php if ( have_posts() ) : ?> <?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?> <?php while ( have_posts() ) : the_post(); ?>
<li> <li>
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"> <a rel="bookmark" href="<?php the_permalink() ?>" title="Permanent Link: <?php the_title(); ?>">
<?php the_title(); ?></a>, <?php the_title(); ?></a>,
<?php the_time('d M Y'); ?> in <?php the_category('&');?> <?php the_time('d M Y'); ?> in <?php the_category('&');?>
</li> </li>

View File

@ -18,7 +18,7 @@ if ( post_password_required() ) {
} }
?> ?>
<div id="comments" class="comments-area"> <div class="comments-area" id="comments">
<?php // You can start editing here -- including this comment! ?> <?php // You can start editing here -- including this comment! ?>
@ -31,7 +31,7 @@ if ( post_password_required() ) {
</h2> </h2>
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?> <?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
<nav id="comment-nav-above" class="comment-navigation" role="navigation"> <nav class="comment-navigation" id="comment-nav-above" role="navigation">
<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1> <h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?> <?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) ); ?></div> <div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) ); ?></div>
@ -51,7 +51,7 @@ if ( post_password_required() ) {
</ol><!-- .comment-list --> </ol><!-- .comment-list -->
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?> <?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
<nav id="comment-nav-below" class="comment-navigation" role="navigation"> <nav class="comment-navigation" id="comment-nav-below" role="navigation">
<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1> <h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?> <?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) );?></div> <div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) );?></div>

View File

@ -6,7 +6,7 @@
* *
* @package understrap * @package understrap
*/ */
$the_theme = wp_get_theme(); $the_theme = wp_get_theme();
?> ?>
@ -20,12 +20,12 @@
<div class="col-md-12"> <div class="col-md-12">
<footer id="colophon" class="site-footer" role="contentinfo"> <footer class="site-footer" id="colophon" role="contentinfo">
<div class="site-info"> <div class="site-info">
<a href="<?php echo esc_url( __( 'http://wordpress.org/', 'understrap' ) ); ?>"><?php printf( __( 'Proudly powered by %s', 'understrap' ), 'WordPress' ); ?></a> <a href="<?php echo esc_url( __( 'http://wordpress.org/', 'understrap' ) ); ?>"><?php printf( __( 'Proudly powered by %s', 'understrap' ), 'WordPress' ); ?></a>
<span class="sep"> | </span> <span class="sep"> | </span>
<?php printf( __( 'Theme: %1$s by %2$s.', 'understrap' ), $the_theme->get( 'Name' ), '<a href="http://understrap.com/" rel="designer">understrap.com</a>' ); ?> <?php printf( __( 'Theme: %1$s by %2$s.', 'understrap' ), $the_theme->get( 'Name' ), '<a rel="designer" href="http://understrap.com/">understrap.com</a>' ); ?>
(<?php printf( __( 'Version: %1$s', 'understrap' ), $the_theme->get( 'Version' ) ); ?>) (<?php printf( __( 'Version: %1$s', 'understrap' ), $the_theme->get( 'Version' ) ); ?>)
</div><!-- .site-info --> </div><!-- .site-info -->

View File

@ -23,7 +23,7 @@
<body <?php body_class(); ?>> <body <?php body_class(); ?>>
<div id="page" class="hfeed site"> <div class="hfeed site" id="page">
<!-- ******************* The Navbar Area ******************* --> <!-- ******************* The Navbar Area ******************* -->
<div class="wrapper-fluid wrapper-navbar" id="wrapper-navbar"> <div class="wrapper-fluid wrapper-navbar" id="wrapper-navbar">
@ -37,11 +37,11 @@
<div class="navbar-header"> <div class="navbar-header">
<!-- .navbar-toggle is used as the toggle for collapsed navbar content --> <!-- .navbar-toggle is used as the toggle for collapsed navbar content -->
<button class="navbar-toggler hidden-sm-up" type="button" data-toggle="collapse" data-target=".exCollapsingNavbar" aria-controls="exCollapsingNavbar" aria-expanded="false" aria-label="Toggle navigation">&#9776;</button> <button class="navbar-toggler hidden-sm-up" data-toggle="collapse" data-target=".exCollapsingNavbar" type="button" aria-controls="exCollapsingNavbar" aria-expanded="false" aria-label="Toggle navigation">&#9776;</button>
<!-- Your site title as branding in the menu --> <!-- Your site title as branding in the menu -->
<?php if (!has_custom_logo()) { ?> <?php if (!has_custom_logo()) { ?>
<a class="navbar-brand" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"> <a class="navbar-brand" rel="home" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>">
<?php bloginfo( 'name' ); ?> <?php bloginfo( 'name' ); ?>
</a> </a>
<?php } else { the_custom_logo(); } ?><!-- end custom logo --> <?php } else { the_custom_logo(); } ?><!-- end custom logo -->

View File

@ -1,127 +1,127 @@
<?php <?php
//Based on Jeff Hays code and his article here: http://robido.com/wordpress/wordpress-gallery-filter-to-modify-the-html-output-of-the-default-gallery-shortcode-and-style/ //Based on Jeff Hays code and his article here: http://robido.com/wordpress/wordpress-gallery-filter-to-modify-the-html-output-of-the-default-gallery-shortcode-and-style/
// Custom filter function to modify default gallery shortcode output // Custom filter function to modify default gallery shortcode output
function bootstrap_wp_gallery( $output, $attr ) { function bootstrap_wp_gallery( $output, $attr ) {
// Initialize // Initialize
global $post, $wp_locale; global $post, $wp_locale;
// Gallery instance counter // Gallery instance counter
static $instance = 0; static $instance = 0;
$instance++; $instance++;
// Validate the author's orderby attribute // Validate the author's orderby attribute
if ( isset( $attr['orderby'] ) ) { if ( isset( $attr['orderby'] ) ) {
$attr['orderby'] = sanitize_sql_orderby( $attr['orderby'] ); $attr['orderby'] = sanitize_sql_orderby( $attr['orderby'] );
if ( ! $attr['orderby'] ) unset( $attr['orderby'] ); if ( ! $attr['orderby'] ) unset( $attr['orderby'] );
} }
// Get attributes from shortcode // Get attributes from shortcode
extract( shortcode_atts( array( extract( shortcode_atts( array(
'order' => 'ASC', 'order' => 'ASC',
'orderby' => 'menu_order ID', 'orderby' => 'menu_order ID',
'id' => $post->ID, 'id' => $post->ID,
'itemtag' => 'div', 'itemtag' => 'div',
'icontag' => 'div', 'icontag' => 'div',
'captiontag' => 'div', 'captiontag' => 'div',
'columns' => 3, 'columns' => 3,
'size' => 'thumbnail', 'size' => 'thumbnail',
'exclude' => '' 'exclude' => ''
), $attr ) ); ), $attr ) );
// Initialize // Initialize
$id = intval( $id ); $id = intval( $id );
$attachments = array(); $attachments = array();
if ( $order == 'RAND' ) $orderby = 'none'; if ( $order == 'RAND' ) $orderby = 'none';
if ( ! empty( $include ) ) { if ( ! empty( $include ) ) {
// Include attribute is present // Include attribute is present
$include = preg_replace( '/[^0-9,]+/', '', $include ); $include = preg_replace( '/[^0-9,]+/', '', $include );
$_attachments = get_posts( array( 'include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) ); $_attachments = get_posts( array( 'include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
// Setup attachments array // Setup attachments array
foreach ( $_attachments as $key => $val ) { foreach ( $_attachments as $key => $val ) {
$attachments[ $val->ID ] = $_attachments[ $key ]; $attachments[ $val->ID ] = $_attachments[ $key ];
} }
} else if ( ! empty( $exclude ) ) { } else if ( ! empty( $exclude ) ) {
// Exclude attribute is present // Exclude attribute is present
$exclude = preg_replace( '/[^0-9,]+/', '', $exclude ); $exclude = preg_replace( '/[^0-9,]+/', '', $exclude );
// Setup attachments array // Setup attachments array
$attachments = get_children( array( 'post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) ); $attachments = get_children( array( 'post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
} else { } else {
// Setup attachments array // Setup attachments array
$attachments = get_children( array( 'post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) ); $attachments = get_children( array( 'post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
} }
if ( empty( $attachments ) ) return ''; if ( empty( $attachments ) ) return '';
// Filter gallery differently for feeds // Filter gallery differently for feeds
if ( is_feed() ) { if ( is_feed() ) {
$output = "\n"; $output = "\n";
foreach ( $attachments as $att_id => $attachment ) $output .= wp_get_attachment_link( $att_id, $size, true ) . "\n"; foreach ( $attachments as $att_id => $attachment ) $output .= wp_get_attachment_link( $att_id, $size, true ) . "\n";
return $output; return $output;
} }
// Filter tags and attributes // Filter tags and attributes
$itemtag = tag_escape( $itemtag ); $itemtag = tag_escape( $itemtag );
$captiontag = tag_escape( $captiontag ); $captiontag = tag_escape( $captiontag );
$columns = intval( $columns ); $columns = intval( $columns );
$itemwidth = $columns > 0 ? floor( 12 / $columns ) : 100; $itemwidth = $columns > 0 ? floor( 12 / $columns ) : 100;
$float = is_rtl() ? 'right' : 'left'; $float = is_rtl() ? 'right' : 'left';
$selector = "gallery-{$instance}"; $selector = "gallery-{$instance}";
// Filter gallery CSS // Filter gallery CSS
$output = apply_filters( 'gallery_style', " $output = apply_filters( 'gallery_style', "
<div id='$selector' class='gallery galleryid-{$id} row'>" <div class='gallery galleryid-{$id} row' id='$selector'>"
); );
// Iterate through the attachments in this gallery instance // Iterate through the attachments in this gallery instance
$i = 0; $i = 0;
foreach ( $attachments as $id => $attachment ) { foreach ( $attachments as $id => $attachment ) {
// Attachment link // Attachment link
$link = isset( $attr['link'] ) && 'file' == $attr['link'] ? wp_get_attachment_link( $id, $size, false, false ) : wp_get_attachment_link( $id, $size, true, false ); $link = isset( $attr['link'] ) && 'file' == $attr['link'] ? wp_get_attachment_link( $id, $size, false, false ) : wp_get_attachment_link( $id, $size, true, false );
// Start itemtag // Start itemtag
$output .= "<{$itemtag} class='gallery-item col-md-{$itemwidth}'>"; $output .= "<{$itemtag} class='gallery-item col-md-{$itemwidth}'>";
// icontag // icontag
$output .= " $output .= "
<{$icontag} class='gallery-icon'> <{$icontag} class='gallery-icon'>
$link $link
</{$icontag}>"; </{$icontag}>";
if ( $captiontag && trim( $attachment->post_excerpt ) ) { if ( $captiontag && trim( $attachment->post_excerpt ) ) {
// captiontag // captiontag
$output .= " $output .= "
<{$captiontag} class='gallery-caption'> <{$captiontag} class='gallery-caption'>
" . wptexturize($attachment->post_excerpt) . " " . wptexturize($attachment->post_excerpt) . "
</{$captiontag}>"; </{$captiontag}>";
} }
// End itemtag // End itemtag
$output .= "</{$itemtag}>"; $output .= "</{$itemtag}>";
// Line breaks by columns set // Line breaks by columns set
if($columns > 0 && ++$i % $columns == 0) $output .= '<br style="clear: both">'; if($columns > 0 && ++$i % $columns == 0) $output .= '<br style="clear: both">';
} }
// End gallery output // End gallery output
$output .= " $output .= "
<br style='clear: both;'> <br style='clear: both;'>
</div>\n"; </div>\n";
return $output; return $output;
} }

View File

@ -1,7 +1,7 @@
<?php <?php
/** /**
* *
* Adapted from Edward McIntyre's wp_bootstrap_navwalker class. * Adapted from Edward McIntyre's wp_bootstrap_navwalker class.
* Removed support for glyphicon and added support for Font Awesome * Removed support for glyphicon and added support for Font Awesome
* *
*/ */
@ -18,126 +18,126 @@
//exit if accessed directly //exit if accessed directly
if(!defined('ABSPATH')) exit; if(!defined('ABSPATH')) exit;
class wp_bootstrap_navwalker extends Walker_Nav_Menu { class wp_bootstrap_navwalker extends Walker_Nav_Menu {
/** /**
* @see Walker::start_lvl() * @see Walker::start_lvl()
* @since 3.0.0 * @since 3.0.0
* *
* @param string $output Passed by reference. Used to append additional content. * @param string $output Passed by reference. Used to append additional content.
* @param int $depth Depth of page. Used for padding. * @param int $depth Depth of page. Used for padding.
*/ */
public function start_lvl( &$output, $depth = 0, $args = array() ) { public function start_lvl( &$output, $depth = 0, $args = array() ) {
$indent = str_repeat( "\t", $depth ); $indent = str_repeat( "\t", $depth );
$output .= "\n$indent<ul role=\"menu\" class=\" dropdown-menu\">\n"; $output .= "\n$indent<ul class=\" dropdown-menu\" role=\"menu\">\n";
} }
/** /**
* @see Walker::start_el() * @see Walker::start_el()
* @since 3.0.0 * @since 3.0.0
* *
* @param string $output Passed by reference. Used to append additional content. * @param string $output Passed by reference. Used to append additional content.
* @param object $item Menu item data object. * @param object $item Menu item data object.
* @param int $depth Depth of menu item. Used for padding. * @param int $depth Depth of menu item. Used for padding.
* @param int $current_page Menu item ID. * @param int $current_page Menu item ID.
* @param object $args * @param object $args
*/ */
public function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { public function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) {
$indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; $indent = ( $depth ) ? str_repeat( "\t", $depth ) : '';
/** /**
* Dividers, Headers or Disabled * Dividers, Headers or Disabled
* ============================= * =============================
* Determine whether the item is a Divider, Header, Disabled or regular * Determine whether the item is a Divider, Header, Disabled or regular
* menu item. To prevent errors we use the strcasecmp() function to so a * menu item. To prevent errors we use the strcasecmp() function to so a
* comparison that is not case sensitive. The strcasecmp() function returns * comparison that is not case sensitive. The strcasecmp() function returns
* a 0 if the strings are equal. * a 0 if the strings are equal.
*/ */
if ( strcasecmp( $item->attr_title, 'divider' ) == 0 && $depth === 1 ) { if ( strcasecmp( $item->attr_title, 'divider' ) == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="divider">'; $output .= $indent . '<li class="divider" role="presentation">';
} else if ( strcasecmp( $item->title, 'divider') == 0 && $depth === 1 ) { } else if ( strcasecmp( $item->title, 'divider') == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="divider">'; $output .= $indent . '<li class="divider" role="presentation">';
} else if ( strcasecmp( $item->attr_title, 'dropdown-header') == 0 && $depth === 1 ) { } else if ( strcasecmp( $item->attr_title, 'dropdown-header') == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="dropdown-header">' . esc_attr( $item->title ); $output .= $indent . '<li class="dropdown-header" role="presentation">' . esc_attr( $item->title );
} else if ( strcasecmp($item->attr_title, 'disabled' ) == 0 ) { } else if ( strcasecmp($item->attr_title, 'disabled' ) == 0 ) {
$output .= $indent . '<li role="presentation" class="disabled"><a href="#">' . esc_attr( $item->title ) . '</a>'; $output .= $indent . '<li class="disabled" role="presentation"><a href="#">' . esc_attr( $item->title ) . '</a>';
} else { } else {
$class_names = $value = ''; $class_names = $value = '';
$classes = empty( $item->classes ) ? array() : (array) $item->classes; $classes = empty( $item->classes ) ? array() : (array) $item->classes;
$classes[] = 'nav-item menu-item-' . $item->ID; $classes[] = 'nav-item menu-item-' . $item->ID;
$class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) ); $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) );
/* /*
if ( $args->has_children ) if ( $args->has_children )
$class_names .= ' dropdown'; $class_names .= ' dropdown';
*/ */
if($args->has_children && $depth === 0) { $class_names .= ' dropdown'; } elseif($args->has_children && $depth > 0) { $class_names .= ' dropdown-submenu'; } if($args->has_children && $depth === 0) { $class_names .= ' dropdown'; } elseif($args->has_children && $depth > 0) { $class_names .= ' dropdown-submenu'; }
if ( in_array( 'current-menu-item', $classes ) ) if ( in_array( 'current-menu-item', $classes ) )
$class_names .= ' active'; $class_names .= ' active';
// remove Font Awesome icon from classes array and save the icon // remove Font Awesome icon from classes array and save the icon
// we will add the icon back in via a <span> below so it aligns with // we will add the icon back in via a <span> below so it aligns with
// the menu item // the menu item
if ( in_array('fa', $classes)) { if ( in_array('fa', $classes)) {
$key = array_search('fa', $classes); $key = array_search('fa', $classes);
$icon = $classes[$key + 1]; $icon = $classes[$key + 1];
$class_names = str_replace($classes[$key+1], '', $class_names); $class_names = str_replace($classes[$key+1], '', $class_names);
$class_names = str_replace($classes[$key], '', $class_names); $class_names = str_replace($classes[$key], '', $class_names);
} }
$class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : '';
$id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args );
$id = $id ? ' id="' . esc_attr( $id ) . '"' : '';
$output .= $indent . '<li' . $id . $value . $class_names .'>';
$atts = array();
$atts['title'] = ! empty( $item->title ) ? $item->title : '';
$atts['target'] = ! empty( $item->target ) ? $item->target : '';
$atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
// If item has_children add atts to a.
if ( $args->has_children && $depth === 0 ) { $class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : '';
$atts['href'] = '#'; $id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args );
$atts['data-toggle'] = 'dropdown'; $id = $id ? ' id="' . esc_attr( $id ) . '"' : '';
$atts['class'] = 'nav-link dropdown-toggle'; $output .= $indent . '<li' . $id . $value . $class_names .'>';
} else { $atts = array();
$atts['href'] = ! empty( $item->url ) ? $item->url : ''; $atts['title'] = ! empty( $item->title ) ? $item->title : '';
$atts['class'] = 'nav-link'; $atts['target'] = ! empty( $item->target ) ? $item->target : '';
} $atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
$atts = apply_filters( 'nav_menu_link_attributes', $atts, $item, $args ); // If item has_children add atts to a.
$attributes = '';
foreach ( $atts as $attr => $value ) { if ( $args->has_children && $depth === 0 ) {
if ( ! empty( $value ) ) { $atts['href'] = '#';
$value = ( 'href' === $attr ) ? esc_url( $value ) : esc_attr( $value ); $atts['data-toggle'] = 'dropdown';
$attributes .= ' ' . $attr . '="' . $value . '"'; $atts['class'] = 'nav-link dropdown-toggle';
} } else {
} $atts['href'] = ! empty( $item->url ) ? $item->url : '';
$item_output = $args->before; $atts['class'] = 'nav-link';
// Font Awesome icons }
if ( ! empty( $icon ) ) $atts = apply_filters( 'nav_menu_link_attributes', $atts, $item, $args );
$item_output .= '<a'. $attributes .'><span class="fa ' . esc_attr( $icon ) . '"></span>&nbsp;'; $attributes = '';
else foreach ( $atts as $attr => $value ) {
$item_output .= '<a'. $attributes .'>'; if ( ! empty( $value ) ) {
$item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after; $value = ( 'href' === $attr ) ? esc_url( $value ) : esc_attr( $value );
$item_output .= ( $args->has_children && 0 === $depth ) ? ' <span class="caret"></span></a>' : '</a>'; $attributes .= ' ' . $attr . '="' . $value . '"';
$item_output .= $args->after; }
$output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args ); }
} $item_output = $args->before;
} // Font Awesome icons
/** if ( ! empty( $icon ) )
* Traverse elements to create list from elements. $item_output .= '<a'. $attributes .'><span class="fa ' . esc_attr( $icon ) . '"></span>&nbsp;';
* else
* Display one element if the element doesn't have any children otherwise, $item_output .= '<a'. $attributes .'>';
* display the element and its children. Will only traverse up to the max $item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after;
* depth and no ignore elements under that depth. $item_output .= ( $args->has_children && 0 === $depth ) ? ' <span class="caret"></span></a>' : '</a>';
* $item_output .= $args->after;
* This method shouldn't be called directly, use the walk() method instead. $output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
* }
* @see Walker::start_el() }
* @since 2.5.0 /**
* * Traverse elements to create list from elements.
* @param object $element Data object *
* @param array $children_elements List of elements to continue traversing. * Display one element if the element doesn't have any children otherwise,
* @param int $max_depth Max depth to traverse. * display the element and its children. Will only traverse up to the max
* @param int $depth Depth of current element. * depth and no ignore elements under that depth.
* @param array $args *
* @param string $output Passed by reference. Used to append additional content. * This method shouldn't be called directly, use the walk() method instead.
* @return null Null on failure with no changes to parameters. *
*/ * @see Walker::start_el()
public function display_element( $element, &$children_elements, $max_depth, $depth, $args, &$output ) { * @since 2.5.0
*
* @param object $element Data object
* @param array $children_elements List of elements to continue traversing.
* @param int $max_depth Max depth to traverse.
* @param int $depth Depth of current element.
* @param array $args
* @param string $output Passed by reference. Used to append additional content.
* @return null Null on failure with no changes to parameters.
*/
public function display_element( $element, &$children_elements, $max_depth, $depth, $args, &$output ) {
if ( ! $element ) if ( ! $element )
return; return;
$id_field = $this->db_fields['id']; $id_field = $this->db_fields['id'];
@ -146,41 +146,40 @@ class wp_bootstrap_navwalker extends Walker_Nav_Menu {
$args[0]->has_children = ! empty( $children_elements[ $element->$id_field ] ); $args[0]->has_children = ! empty( $children_elements[ $element->$id_field ] );
parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output ); parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output );
} }
/** /**
* Menu Fallback * Menu Fallback
* ============= * =============
* If this function is assigned to the wp_nav_menu's fallback_cb variable * If this function is assigned to the wp_nav_menu's fallback_cb variable
* and a manu has not been assigned to the theme location in the WordPress * and a manu has not been assigned to the theme location in the WordPress
* menu manager the function with display nothing to a non-logged in user, * menu manager the function with display nothing to a non-logged in user,
* and will add a link to the WordPress menu manager if logged in as an admin. * and will add a link to the WordPress menu manager if logged in as an admin.
* *
* @param array $args passed from the wp_nav_menu function. * @param array $args passed from the wp_nav_menu function.
* *
*/ */
public static function fallback( $args ) { public static function fallback( $args ) {
if ( current_user_can( 'manage_options' ) ) { if ( current_user_can( 'manage_options' ) ) {
extract( $args ); extract( $args );
$fb_output = null; $fb_output = null;
if ( $container ) { if ( $container ) {
$fb_output = '<' . $container; $fb_output = '<' . $container;
if ( $container_id ) if ( $container_class )
$fb_output .= ' id="' . $container_id . '"'; $fb_output .= ' class="' . $container_class . '"';
if ( $container_class ) if ( $container_id )
$fb_output .= ' class="' . $container_class . '"'; $fb_output .= ' id="' . $container_id . '"';
$fb_output .= '>'; $fb_output .= '>';
} }
$fb_output .= '<ul'; $fb_output .= '<ul';
if ( $menu_id ) if ( $menu_class )
$fb_output .= ' id="' . $menu_id . '"'; $fb_output .= ' class="' . $menu_class . '"';
if ( $menu_class ) if ( $menu_id )
$fb_output .= ' class="' . $menu_class . '"'; $fb_output .= ' id="' . $menu_id . '"';
$fb_output .= '>'; $fb_output .= '>';
$fb_output .= '<li><a href="' . admin_url( 'nav-menus.php' ) . '">Add a menu</a></li>'; $fb_output .= '<li><a href="' . admin_url( 'nav-menus.php' ) . '">Add a menu</a></li>';
$fb_output .= '</ul>'; $fb_output .= '</ul>';
if ( $container ) if ( $container )
$fb_output .= '</' . $container . '>'; $fb_output .= '</' . $container . '>';
echo $fb_output; echo $fb_output;
} }
} }
} }

View File

@ -23,7 +23,7 @@
function bootstrap3_comment_form( $args ) { function bootstrap3_comment_form( $args ) {
$args['comment_field'] = '<div class="form-group comment-form-comment"> $args['comment_field'] = '<div class="form-group comment-form-comment">
<label for="comment">' . _x( 'Comment', 'noun', 'understrap' ) . ( ' <span class="required">*</span>' ) . '</label> <label for="comment">' . _x( 'Comment', 'noun', 'understrap' ) . ( ' <span class="required">*</span>' ) . '</label>
<textarea class="form-control" id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea> <textarea class="form-control" id="comment" name="comment" aria-required="true" cols="45" rows="8"></textarea>
</div>'; </div>';
$args['class_submit'] = 'btn btn-secondary'; // since WP 4.1 $args['class_submit'] = 'btn btn-secondary'; // since WP 4.1
return $args; return $args;

View File

@ -24,13 +24,13 @@
<div class="wrapper" id="wrapper-index"> <div class="wrapper" id="wrapper-index">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php if ( have_posts() ) : ?> <?php if ( have_posts() ) : ?>

View File

@ -9,7 +9,7 @@
?> ?>
<article id="post-0" class="post no-results not-found"> <article class="post no-results not-found" id="post-0">
<header class="page-header"> <header class="page-header">

View File

@ -6,7 +6,7 @@
*/ */
?> ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header"> <header class="entry-header">

View File

@ -4,7 +4,7 @@
*/ */
?> ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header"> <header class="entry-header">

View File

@ -4,7 +4,7 @@
*/ */
?> ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header"> <header class="entry-header">
@ -18,7 +18,7 @@
</header><!-- .entry-header --> </header><!-- .entry-header -->
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?> <?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="entry-content"> <div class="entry-content">

View File

@ -8,7 +8,7 @@
<?php global $post ?> <?php global $post ?>
<article id="<?php echo strtolower( $post->post_title ); ?>" <?php post_class(); ?>> <article <?php post_class(); ?> id="<?php echo strtolower( $post->post_title ); ?>">
<header class="entry-header"> <header class="entry-header">

View File

@ -4,7 +4,7 @@
*/ */
?> ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header"> <header class="entry-header">

View File

@ -12,11 +12,11 @@
<div class="wrapper" id="full-width-page-wrapper"> <div class="wrapper" id="full-width-page-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div id="primary" class="col-md-12 content-area"> <div class="col-md-12 content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?> <?php while ( have_posts() ) : the_post(); ?>

View File

@ -28,11 +28,11 @@
<div class="wrapper" id="full-width-page-wrapper"> <div class="wrapper" id="full-width-page-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div id="primary" class="col-md-12 content-area"> <div class="col-md-12 content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php if ( have_posts() ): while ( $qry->have_posts() ): $qry->the_post() ?> <?php if ( have_posts() ): while ( $qry->have_posts() ): $qry->the_post() ?>
<div class="page"> <div class="page">

View File

@ -15,13 +15,13 @@
<div class="wrapper" id="page-wrapper"> <div class="wrapper" id="page-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?> <?php while ( have_posts() ) : the_post(); ?>

View File

@ -13,9 +13,9 @@
<div class="row"> <div class="row">
<section id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <section class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php if ( have_posts() ) : ?> <?php if ( have_posts() ) : ?>

View File

@ -7,11 +7,11 @@
?> ?>
<form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>" role="search"> <form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>" role="search">
<label for="s" class="assistive-text"><?php _e( 'Search', 'understrap' ); ?></label> <label class="assistive-text" for="s"><?php _e( 'Search', 'understrap' ); ?></label>
<div class="input-group"> <div class="input-group">
<input type="text" class="field form-control" name="s" id="s" placeholder="<?php esc_attr_e( 'Search &hellip;', 'understrap' ); ?>"> <input class="field form-control" id="s" name="s" type="text" placeholder="<?php esc_attr_e( 'Search &hellip;', 'understrap' ); ?>">
<span class="input-group-btn"> <span class="input-group-btn">
<input type="submit" class="submit btn btn-primary" name="submit" id="searchsubmit" value="<?php esc_attr_e( 'Search', 'understrap' ); ?>"> <input class="submit btn btn-primary" id="searchsubmit" name="submit" type="submit" value="<?php esc_attr_e( 'Search', 'understrap' ); ?>">
</span> </span>
</div> </div>
</form> </form>

View File

@ -10,7 +10,7 @@ if ( ! is_active_sidebar( 'sidebar-1' ) ) {
} }
?> ?>
<div id="secondary" class="col-md-4 widget-area" role="complementary"> <div class="col-md-4 widget-area" id="secondary" role="complementary">
<?php dynamic_sidebar( 'sidebar-1' ); ?> <?php dynamic_sidebar( 'sidebar-1' ); ?>

View File

@ -9,13 +9,13 @@
?> ?>
<div class="wrapper" id="single-wrapper"> <div class="wrapper" id="single-wrapper">
<div id="content" class="container"> <div class="container" id="content">
<div class="row"> <div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?> <?php while ( have_posts() ) : the_post(); ?>

View File

@ -17,9 +17,9 @@
<div class="container"> <div class="container">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"> <div class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area" id="primary">
<main id="main" class="site-main" role="main"> <main class="site-main" id="main" role="main">
<!-- The WooCommerce loop --> <!-- The WooCommerce loop -->