WordPress.org

Make WordPress Themes

Changes from museum/0.1.5 at r84221 to museum/0.1.6 at r84221


Ignore:
Location:
museum
Files:
2 added
1 deleted
25 edited

Legend:

Unmodified
Added
Removed
  • museum/0.1.6/archive.php

    r84221 r84221  
    1616 
    1717            <header class="page-header"> 
    18                 <h1 class="page-title"> 
    19                     <?php 
    20                         if ( is_category() ) : 
    21                             single_cat_title(); 
     18                <?php 
     19                    if ( is_author() ) { 
     20                        printf( '<h1 class="page-title"><span class="author-image">%s</span><span class="vcard">%s</span></h1>', get_avatar( get_the_author_meta( 'ID' ), 128 ), get_the_author() ); 
    2221 
    23                         elseif ( is_tag() ) : 
    24                             single_tag_title(); 
    25  
    26                         elseif ( is_author() ) : 
    27                             printf( '<span class="author-image">%s</span><span class="vcard">%s</span>', get_avatar( get_the_author_meta( 'ID' ), 128 ), get_the_author() ); 
    28  
    29                         elseif ( is_day() ) : 
    30                             printf( __( 'Day: %s', 'museum' ), '<span>' . get_the_date() . '</span>' ); 
    31  
    32                         elseif ( is_month() ) : 
    33                             printf( __( 'Month: %s', 'museum' ), '<span>' . get_the_date( _x( 'F Y', 'monthly archives date format', 'museum' ) ) . '</span>' ); 
    34  
    35                         elseif ( is_year() ) : 
    36                             printf( __( 'Year: %s', 'museum' ), '<span>' . get_the_date( _x( 'Y', 'yearly archives date format', 'museum' ) ) . '</span>' ); 
    37  
    38                         elseif ( is_tax( 'post_format', 'post-format-aside' ) ) : 
    39                             _e( 'Asides', 'museum' ); 
    40  
    41                         elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) : 
    42                             _e( 'Galleries', 'museum'); 
    43  
    44                         elseif ( is_tax( 'post_format', 'post-format-image' ) ) : 
    45                             _e( 'Images', 'museum'); 
    46  
    47                         elseif ( is_tax( 'post_format', 'post-format-video' ) ) : 
    48                             _e( 'Videos', 'museum' ); 
    49  
    50                         elseif ( is_tax( 'post_format', 'post-format-quote' ) ) : 
    51                             _e( 'Quotes', 'museum' ); 
    52  
    53                         elseif ( is_tax( 'post_format', 'post-format-link' ) ) : 
    54                             _e( 'Links', 'museum' ); 
    55  
    56                         elseif ( is_tax( 'post_format', 'post-format-status' ) ) : 
    57                             _e( 'Statuses', 'museum' ); 
    58  
    59                         elseif ( is_tax( 'post_format', 'post-format-audio' ) ) : 
    60                             _e( 'Audios', 'museum' ); 
    61  
    62                         elseif ( is_tax( 'post_format', 'post-format-chat' ) ) : 
    63                             _e( 'Chats', 'museum' ); 
    64  
    65                         else : 
    66                             _e( 'Archives', 'museum' ); 
    67  
    68                         endif; 
    69                     ?> 
    70                 </h1> 
    71                 <?php 
    72                     // Show an optional term description. 
    73                     $term_description = term_description(); 
    74                     if ( ! empty( $term_description ) ) : 
    75                         printf( '<div class="taxonomy-description">%s</div>', $term_description ); 
    76                     endif; 
    77  
    78                     $bio = get_the_author_meta( 'description', get_the_author_meta( 'ID' ) ); 
    79                     if ( ! empty( $bio ) ): 
    80                         printf( '<div class="author-description">%s</div>', apply_filters( 'the_content', $bio ) ); 
    81                     endif; 
     22                        $bio = get_the_author_meta( 'description', get_the_author_meta( 'ID' ) ); 
     23                        if ( ! empty( $bio ) ) { 
     24                            printf( '<div class="author-description">%s</div>', apply_filters( 'the_content', $bio ) ); 
     25                        } 
     26                    } else { 
     27                        the_archive_title( '<h1 class="page-title">', '</h1>' ); 
     28                        the_archive_description( '<div class="taxonomy-description">', '</div>' ); 
     29                    } 
    8230                ?> 
    8331            </header><!-- .page-header --> 
     
    9644            <?php endwhile; ?> 
    9745 
    98             <?php museum_paging_nav(); ?> 
     46            <?php the_posts_navigation( array( 'next_text' => __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'museum' ), 'prev_text' => __( '<span class="meta-nav">&larr;</span> Older posts', 'museum' ) ) ); ?> 
    9947 
    10048        <?php else : ?> 
  • museum/0.1.6/assets/js/customizer.js

    r84221 r84221  
    1717        } ); 
    1818    } ); 
    19     // Header text color. 
    20     wp.customize( 'header_textcolor', function( value ) { 
    21         value.bind( function( to ) { 
    22             if ( 'blank' === to ) { 
    23                 $( '.site-title, .site-description' ).css( { 
    24                     'clip': 'rect(1px, 1px, 1px, 1px)', 
    25                     'position': 'absolute' 
    26                 } ); 
    27             } else { 
    28                 $( '.site-title, .site-description' ).css( { 
    29                     'clip': 'auto', 
    30                     'color': to, 
    31                     'position': 'relative' 
    32                 } ); 
    33             } 
    34         } ); 
    35     } ); 
    3619} )( jQuery ); 
  • museum/0.1.6/assets/js/navigation.js

    r84221 r84221  
    55 */ 
    66( function( $ ) { 
     7    var navigationWrapper, 
     8        linksList = []; 
     9 
     10    // Fix child menus for touch devices. 
     11    function fixMenuTouchTaps( linksList ) { 
     12        var touchStartFn; 
     13 
     14        if ( 'ontouchstart' in window ) { 
     15            touchStartFn = function( e ) { 
     16                var menuItem = this.parentNode; 
     17                if ( ! menuItem.classList.contains( 'focus' ) ) { 
     18                    e.preventDefault(); 
     19                    for( var i = 0; i < menuItem.parentNode.children.length; ++i ) { 
     20                        if ( menuItem === menuItem.parentNode.children[i] ) { 
     21                            continue; 
     22                        } 
     23                        menuItem.parentNode.children[i].classList.remove( 'focus' ); 
     24                    } 
     25                    menuItem.classList.add( 'focus' ); 
     26                } else { 
     27                    menuItem.classList.remove( 'focus' ); 
     28                } 
     29            }; 
     30            for ( var i = 0; i < linksList.length; ++i ) { 
     31                linksList[i].addEventListener( 'touchstart', touchStartFn, false ) 
     32            } 
     33        } 
     34    } 
     35 
     36    navigationWrapper = document.getElementById( 'site-navigation' ); 
     37    linksList = navigationWrapper.querySelectorAll( '.menu-item-has-children > a, .page_item_has_children > a' ); 
     38    fixMenuTouchTaps( linksList ); 
     39 
     40    postsWrapper = document.getElementById( 'main' ); 
     41    if ( postsWrapper ) { 
     42        linksList = postsWrapper.querySelectorAll( '.with-image > a' ); 
     43        fixMenuTouchTaps( linksList ); 
     44    } 
     45 
    746    var container, button, menu; 
    8  
    947    container = document.getElementById( 'site-navigation' ); 
    10     if ( ! container ) 
     48    if ( ! container ) { 
    1149        return; 
    12  
    13     button = container.getElementsByTagName( 'h1' )[0]; 
    14     if ( 'undefined' === typeof button ) 
     50    } 
     51    button = container.getElementsByTagName( 'button' )[0]; 
     52    if ( 'undefined' === typeof button ) { 
    1553        return; 
    16  
     54    } 
    1755    menu = container.getElementsByTagName( 'ul' )[0]; 
    18  
    1956    // Hide menu toggle button if menu is empty and return early. 
    2057    if ( 'undefined' === typeof menu ) { 
     
    2360    } 
    2461 
    25     if ( -1 === menu.className.indexOf( 'nav-menu' ) ) 
     62    menu.setAttribute( 'aria-expanded', 'false' ); 
     63    if ( -1 === menu.className.indexOf( 'nav-menu' ) ) { 
    2664        menu.className += ' nav-menu'; 
     65    } 
    2766 
    2867    button.onclick = function() { 
    29         if ( -1 !== container.className.indexOf( 'toggled' ) ) 
     68        if ( -1 !== container.className.indexOf( 'toggled' ) ) { 
    3069            container.className = container.className.replace( ' toggled', '' ); 
    31         else 
     70            button.setAttribute( 'aria-expanded', 'false' ); 
     71            menu.setAttribute( 'aria-expanded', 'false' ); 
     72        } else { 
    3273            container.className += ' toggled'; 
     74            button.setAttribute( 'aria-expanded', 'true' ); 
     75            menu.setAttribute( 'aria-expanded', 'true' ); 
     76        } 
    3377    }; 
    3478 
    35     // make dropdowns functional on focus 
     79    // make dropdowns functional on focus (keyboard) 
    3680    $( '.nav-wrapper' ).find( 'a' ).on( 'focus blur', function() { 
    3781        $( this ).parents('li').toggleClass( 'focus' ); 
    3882    } ); 
     83 
    3984} )( jQuery ); 
  • museum/0.1.6/attachment.php

    r84221 r84221  
    1515            <?php get_template_part( 'content', 'attachment' ); ?> 
    1616 
    17             <?php museum_post_nav(); ?> 
     17            <?php the_post_navigation(); ?> 
    1818 
    1919            <?php 
  • museum/0.1.6/comments.php

    r84221 r84221  
    4141                 * See museum_comment() in inc/template-tags.php for more. 
    4242                 */ 
    43                 wp_list_comments( array( 'callback' => 'museum_comment', 'avatar_size' => 65 ) ); 
     43                wp_list_comments( array( 'avatar_size' => 65 ) ); 
    4444            ?> 
    4545        </ol><!-- .comment-list --> 
     
    6363 
    6464    <?php comment_form( array( 
    65         'title_reply'=> __( 'Comment on this post', 'museum' ), 
     65        'title_reply'    => __( 'Comment on this post', 'museum' ), 
    6666        'title_reply_to' => __( 'Reply to %', 'museum' ), 
    6767    ) ); ?> 
  • museum/0.1.6/content-attachment.php

    r84221 r84221  
    1313<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> 
    1414    <header class="entry-header"> 
    15         <h1 class="entry-title"><?php the_title(); ?></h1> 
     15        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?> 
    1616    </header><!-- .entry-header --> 
    1717 
    1818    <div class="entry-content"> 
    19         <?php 
    20             $caption = get_the_excerpt(); 
    21             if ( $caption ) echo '<div class="wp-caption">'; 
    22  
    23             if ( wp_attachment_is_image() ) { 
    24                 echo wp_get_attachment_link( 0, 'post-thumbnail', false ); 
    25             } elseif ( 0 === strpos( $post->post_mime_type, 'video' ) ) { 
    26                 $meta = wp_get_attachment_metadata( get_the_ID() ); 
    27                 $atts = array( 'src' => wp_get_attachment_url() ); 
    28                 if ( ! empty( $meta['width'] ) && ! empty( $meta['height'] ) ) { 
    29                     $atts['width'] = (int) $meta['width']; 
    30                     $atts['height'] = (int) $meta['height']; 
    31                 } 
    32                 echo wp_video_shortcode( $atts ); 
    33             } elseif ( 0 === strpos( $post->post_mime_type, 'audio' ) ) { 
    34                 echo wp_audio_shortcode( array( 'src' => wp_get_attachment_url() ) ); 
    35             } 
    36  
    37             if ( $caption ) { 
    38                 printf( '<p class="wp-caption-text">%s</p>', $caption ); 
    39                 echo '</div>'; 
    40             } 
    41  
    42         ?> 
     19        <?php museum_attachment_media(); ?> 
    4320 
    4421        <?php the_content(); ?> 
  • museum/0.1.6/content-page.php

    r84221 r84221  
    77?> 
    88 
     9<?php if ( has_post_thumbnail() ): ?> 
     10<div class="entry-image"> 
     11    <?php the_post_thumbnail( 'single' ); ?> 
     12</div><!-- .entry-image --> 
     13<?php endif; ?> 
     14 
    915<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> 
    1016    <header class="entry-header"> 
    11         <h1 class="entry-title"><?php the_title(); ?></h1> 
     17        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?> 
    1218    </header><!-- .entry-header --> 
    1319 
  • museum/0.1.6/content-single.php

    r84221 r84221  
    1313<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> 
    1414    <header class="entry-header"> 
    15         <h1 class="entry-title"><?php the_title(); ?></h1> 
     15        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?> 
    1616    </header><!-- .entry-header --> 
    1717 
     
    3030        <div class="entry-author"><?php museum_posted_on(); ?></div> 
    3131 
    32         <?php if ( 'post' == get_post_type() ) : ?> 
    3332        <div class="entry-taxes"><?php 
    3433            /* translators: used between list items, there is a space after the comma */ 
     
    4544                    $meta_text = ''; 
    4645                } 
    47  
    4846            } else { 
    4947                // But this blog has loads of categories so we should probably display them here 
     
    5351                    $meta_text = __( '<span class="entry-categories"><div class="genericon genericon-category"></div> %1$s</span>', 'museum' ); 
    5452                } 
    55  
    5653            } // end check for categories on this blog 
    5754 
     
    6259            ); 
    6360        ?></div> 
    64         <?php endif; ?> 
    6561 
    6662    </footer><!-- .entry-meta --> 
  • museum/0.1.6/content.php

    r84221 r84221  
    77<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> 
    88    <a href="<?php the_permalink(); ?>" rel="bookmark" class="post-link"> 
    9         <?php if ( ! is_search() ) : ?> 
    10             <?php if ( has_post_thumbnail() ): ?> 
    11             <div class="entry-image"> 
    12                 <?php the_post_thumbnail(); ?> 
    13             </div><!-- .entry-image --> 
    14             <?php else: ?> 
    15             <div class="entry-image"> 
    16                 <div class="format-icon <?php echo get_post_format() ?>-icon"></div> 
    17             </div><!-- .entry-image --> 
    18             <?php endif; ?> 
     9 
     10        <?php if ( has_post_thumbnail() ): ?> 
     11        <div class="entry-image"> 
     12            <?php the_post_thumbnail(); ?> 
     13        </div><!-- .entry-image --> 
    1914        <?php endif; ?> 
    2015 
    2116        <header class="entry-header"> 
    2217            <span class="read-more"><?php echo __( 'Read Post', 'museum' ); ?> &rsaquo;</span> 
    23             <?php if ( get_the_title() ) : ?> 
    24                 <h2 class="entry-title"><?php the_title(); ?></h2> 
    25                 <div class="entry-excerpt"><?php the_excerpt(); ?></div> 
    26             <?php else: ?> 
    27                 <div class="entry-excerpt no-title"><?php the_excerpt(); ?></div> 
    28             <?php endif; ?> 
     18            <?php the_title( '<h2 class="entry-title">', '</h2>' ); ?> 
     19            <div class="entry-excerpt"><?php the_excerpt(); ?></div> 
    2920        </header><!-- .entry-header --> 
    3021    </a> 
  • museum/0.1.6/editor-style.css

    r84221 r84221  
    166166select, 
    167167textarea { 
    168   font-family: 'Quattrocento Sans'; 
    169   font-size: 16px; 
    170   font-size: 1.6rem; 
    171   line-height: 1.5; 
    172   color: #444444; 
    173168  -webkit-font-smoothing: antialiased; 
    174169  -moz-osx-font-smoothing: grayscale; 
     
    940935  font-style: normal; 
    941936} 
    942 body { 
    943   font-family: 'Quattrocento Sans'; 
     937body, 
     938button, 
     939input, 
     940select, 
     941textarea { 
     942  font-family: 'Quattrocento Sans', sans-serif; 
    944943  font-size: 16px; 
    945944  font-size: 1rem; 
     945  line-height: 1.5; 
     946  color: #444444; 
    946947} 
    947948/* Headings */ 
     
    952953h5, 
    953954h6 { 
    954   font-family: 'Playfair Display'; 
     955  font-family: 'Playfair Display', georgia, serif; 
    955956  font-size: 16px; 
    956957  font-size: 1rem; 
     
    978979} 
    979980blockquote { 
    980   font-family: 'Playfair Display'; 
     981  font-family: 'Playfair Display', georgia, serif; 
    981982  font-style: italic; 
    982983  font-size: 20px; 
  • museum/0.1.6/functions.php

    r84221 r84221  
    2222 */ 
    2323function museum_setup() { 
    24     global $content_width; 
    25  
    2624    /* 
    2725     * Make theme available for translation. 
     
    3634 
    3735    /* 
     36     * Let WordPress manage the document title. 
     37     * By adding theme support, we declare that this theme does not use a 
     38     * hard-coded <title> tag in the document head, and expect WordPress to 
     39     * provide it for us. 
     40     */ 
     41    add_theme_support( 'title-tag' ); 
     42 
     43    /* 
    3844     * Enable support for Post Thumbnails on posts, pages, and audio/video attachments 
    3945     * 
     
    4450    add_post_type_support( 'attachment:video', 'thumbnail' ); 
    4551    add_theme_support( 'post-thumbnails', array( 'post', 'page', 'attachment:audio', 'attachment:video' ) ); 
    46     add_image_size( 'single', $content_width * 2 ); 
    47     set_post_thumbnail_size( $content_width, $content_width, true ); 
     52    add_image_size( 'single', 1840, 9999 ); 
     53    set_post_thumbnail_size( 920, 920, true ); 
    4854 
    4955    // This theme uses wp_nav_menu() in one location. 
     
    5965    add_theme_support( 'html5', array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption' ) ); 
    6066 
    61     add_editor_style(); 
     67    // Adds additional stylesheets to the TinyMCE editor if needed. 
     68    add_editor_style( array( 'editor-style.css', museum_fonts_url() ) ); 
    6269 
    6370    // Remove default gallery styles 
     
    113120 * font, the font can be disabled. 
    114121 * 
    115  * @since Museum 1.0 
    116  * 
    117122 * @return string Font stylesheet or empty string if disabled. 
    118123 */ 
     
    136141 
    137142        if ( 'off' !== $quattrocento_sans ) 
    138             $font_families[] = 'Quattrocento+Sans:400,700'; 
     143            $font_families[] = urlencode( 'Quattrocento Sans:400,700' ); 
    139144 
    140145        if ( 'off' !== $playfair_display ) 
    141             $font_families[] = 'Playfair+Display:400,400italic,700italic'; 
     146            $font_families[] = urlencode( 'Playfair Display:400,400italic,700italic' ); 
    142147 
    143148        $protocol = is_ssl() ? 'https' : 'http'; 
    144         $query_args = array( 
    145             'family' => implode( '|', $font_families ), 
    146             'subset' => 'latin,latin-ext', 
    147         ); 
    148         $fonts_url = add_query_arg( $query_args, "$protocol://fonts.googleapis.com/css" ); 
     149        $fonts_url = add_query_arg( 'family', implode( '|', $font_families ), "$protocol://fonts.googleapis.com/css" ); 
    149150    } 
    150151 
     
    173174 
    174175/** 
    175  * Adds additional stylesheets to the TinyMCE editor if needed. 
    176  * 
    177  * @uses museum_fonts_url() to get the Google Font stylesheet URL. 
    178  * 
    179  * @since Museum 1.0 
    180  * 
    181  * @param string $mce_css CSS path to load in TinyMCE. 
    182  * @return string 
    183  */ 
    184 function museum_mce_css( $mce_css ) { 
    185     $fonts_url = museum_fonts_url(); 
    186  
    187     if ( empty( $fonts_url ) ) 
    188         return $mce_css; 
    189  
    190     if ( ! empty( $mce_css ) ) 
    191         $mce_css .= ','; 
    192  
    193     $mce_css .= esc_url_raw( str_replace( ',', '%2C', $fonts_url ) ); 
    194  
    195     return $mce_css; 
    196 } 
    197 add_filter( 'mce_css', 'museum_mce_css' ); 
    198  
    199  
    200 /** 
    201  * Count the number of footer sidebars to enable dynamic classes for the footer. 
    202  * 
    203  * @since Museum 1.0 
    204  */ 
    205 function museum_footer_class() { 
    206     $count = 0; 
    207  
    208     if ( is_active_sidebar( 'sidebar-1' ) ) 
    209         $count++; 
    210  
    211     if ( is_active_sidebar( 'sidebar-2' ) ) 
    212         $count++; 
    213  
    214     $class = ''; 
    215  
    216     switch ( $count ) { 
    217         case '1': 
    218             $class = 'one-column'; 
    219             break; 
    220         case '2': 
    221             $class = 'two-column'; 
    222             break; 
    223     } 
    224  
    225     if ( $class ) 
    226         echo $class; 
    227 } 
    228  
    229  
    230 /** 
    231176 * Implement the Custom Header feature. 
    232177 */ 
  • museum/0.1.6/header.php

    r84221 r84221  
    1212<meta charset="<?php bloginfo( 'charset' ); ?>"> 
    1313<meta name="viewport" content="width=device-width, initial-scale=1"> 
    14 <title><?php wp_title( '|', true, 'right' ); ?></title> 
    1514<link rel="profile" href="http://gmpg.org/xfn/11"> 
    1615<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>"> 
     
    1817<?php wp_head(); ?> 
    1918<!--[if lt IE 9]> 
    20 <script src="<?php echo get_template_directory_uri(); ?>/assets/js/html5shiv.js"></script> 
     19<script src="<?php echo esc_url( get_template_directory_uri(). '/assets/js/html5shiv.js' ); ?>"></script> 
    2120<![endif]--> 
    2221 
     
    2726 
    2827    <nav id="site-navigation" class="main-navigation" role="navigation"> 
    29         <h1 class="menu-toggle"><?php _e( 'Menu', 'museum' ); ?></h1> 
     28        <button class="menu-toggle"><?php _e( 'Menu', 'museum' ); ?></button> 
    3029        <a class="skip-link screen-reader-text" href="#content"><?php _e( 'Skip to content', 'museum' ); ?></a> 
    31         <div class="nav-wrapper"> 
    32             <?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'main-menu' ) ); ?> 
    33             <?php wp_nav_menu( array( 'theme_location' => 'social', 'menu_class' => 'social-menu' ) ); ?> 
     30        <div class="nav-wrapper <?php museum_menu_class(); ?>"> 
     31            <?php 
     32                wp_nav_menu( array( 
     33                    'theme_location'  => 'primary', 
     34                    'container_class' => 'main-menu' 
     35                ) ); 
     36 
     37                wp_nav_menu( array( 
     38                    'theme_location'  => 'social', 
     39                    'container_class' => 'social-menu', 
     40                    'fallback_cb' => false 
     41                ) ); 
     42            ?> 
    3443        </div> 
    3544    </nav><!-- #site-navigation --> 
     
    3746    <header id="masthead" class="site-header" role="banner"> 
    3847        <?php $header_position = get_theme_mod( 'header_position', 'right' ); ?> 
    39         <div class="site-branding text-<?php echo $header_position; ?>"> 
     48        <div class="site-branding text-<?php echo esc_attr( $header_position ); ?>"> 
    4049 
    4150            <?php if ( get_header_image() ) : ?> 
    4251            <div class="site-logo"> 
    4352                <a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"> 
    44                 <img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>"> 
     53                <img src="<?php header_image(); ?>" width="<?php echo absint( get_custom_header()->width ); ?>" height="<?php echo absint( get_custom_header()->height ); ?>"> 
    4554                </a> 
    4655            </div> 
  • museum/0.1.6/inc/custom-header.php

    r84221 r84221  
    9191        .site-title a, 
    9292        .site-description { 
    93             color: #<?php echo $header_text_color; ?>; 
     93            color: #<?php echo esc_attr( $header_text_color ); ?>; 
    9494        } 
    9595    <?php endif; ?> 
     
    103103 * Styles the header image displayed on the Appearance > Header admin panel. 
    104104 * 
    105  * Also saves the header position.  
     105 * Also saves the header position. 
    106106 * @todo do via JS/ajax to remove unrelated functionality here, and auto-update preview 
    107107 * 
     
    153153 */ 
    154154function museum_admin_header_image() { 
    155     $style = sprintf( ' style="color:#%s;"', get_header_textcolor() ); 
     155    $style = sprintf( ' style="color:#%s;"', esc_attr( get_header_textcolor() ) ); 
    156156    $header_position = get_theme_mod( 'header_position', 'right' ); 
    157157?> 
    158     <div id="headimg" class="site-branding text-<?php echo $header_position; ?>"> 
     158    <div id="headimg" class="site-branding text-<?php echo esc_attr( $header_position ); ?>"> 
    159159 
    160160        <?php if ( get_header_image() ) : ?> 
    161161        <div class="site-logo"> 
    162             <img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>"> 
     162            <img src="<?php header_image(); ?>" width="<?php echo absint( get_custom_header()->width ); ?>" height="<?php echo absint( get_custom_header()->height ); ?>"> 
    163163        </div> 
    164164        <?php endif; // End header image check. ?> 
  • museum/0.1.6/inc/customizer.php

    r84221 r84221  
    1414    $wp_customize->get_setting( 'blogname' )->transport         = 'postMessage'; 
    1515    $wp_customize->get_setting( 'blogdescription' )->transport  = 'postMessage'; 
    16     $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; 
    1716} 
    1817add_action( 'customize_register', 'museum_customize_register' ); 
  • museum/0.1.6/inc/extras.php

    r84221 r84221  
    3737 
    3838/** 
    39  * Filters wp_title to print a neat <title> tag based on what is being viewed. 
    40  * 
    41  * @param string $title Default title text for current view. 
    42  * @param string $sep Optional separator. 
    43  * @return string The filtered title. 
    44  */ 
    45 function museum_wp_title( $title, $sep ) { 
    46     global $page, $paged; 
    47  
    48     if ( is_feed() ) { 
    49         return $title; 
    50     } 
    51  
    52     // Add the blog name 
    53     $title .= get_bloginfo( 'name' ); 
    54  
    55     // Add the blog description for the home/front page. 
    56     $site_description = get_bloginfo( 'description', 'display' ); 
    57     if ( $site_description && ( is_home() || is_front_page() ) ) { 
    58         $title .= " $sep $site_description"; 
    59     } 
    60  
    61     // Add a page number if necessary: 
    62     if ( $paged >= 2 || $page >= 2 ) { 
    63         $title .= " $sep " . sprintf( __( 'Page %s', 'museum' ), max( $paged, $page ) ); 
    64     } 
    65  
    66     return $title; 
    67 } 
    68 add_filter( 'wp_title', 'museum_wp_title', 10, 2 ); 
    69  
    70 /** 
    7139 * Add some custom classes to the post container. 
    7240 * 
     
    7543 */ 
    7644function museum_post_class( $classes, $class, $post_id ) { 
    77     if ( !is_singular() && has_post_thumbnail( $post_id ) ) 
    78         $classes[] = 'with-image'; 
    79     elseif ( !is_singular() && !has_post_thumbnail( $post_id ) ) 
    80         $classes[] = 'no-image'; 
     45    if ( ! is_singular() ) { 
     46        if ( has_post_thumbnail( $post_id ) ) { 
     47            $classes[] = 'with-image'; 
     48        } elseif ( ! has_post_thumbnail( $post_id ) ) { 
     49            $classes[] = 'no-image'; 
     50        } 
     51 
     52        if ( get_the_title( $post_id ) ) { 
     53            $classes[] = 'with-title'; 
     54        } elseif ( ! get_the_title( $post_id ) ) { 
     55            $classes[] = 'no-title'; 
     56        } 
     57    } 
    8158 
    8259    return $classes; 
     
    10885} 
    10986add_filter( 'the_password_form', 'museum_password_form' ); 
     87 
     88 
     89if ( version_compare( $GLOBALS['wp_version'], '4.1', '<' ) ) : 
     90    /** 
     91     * Filters wp_title to print a neat `title` tag based on what is being viewed. 
     92     * 
     93     * @param string $title Default title text for current view. 
     94     * @param string $sep Optional separator. 
     95     * @return string The filtered title. 
     96     */ 
     97    function museum_wp_title( $title, $sep ) { 
     98        if ( is_feed() ) { 
     99            return $title; 
     100        } 
     101 
     102        global $page, $paged; 
     103 
     104        // Add the blog name 
     105        $title .= get_bloginfo( 'name', 'display' ); 
     106 
     107        // Add the blog description for the home/front page. 
     108        $site_description = get_bloginfo( 'description', 'display' ); 
     109        if ( $site_description && ( is_home() || is_front_page() ) ) { 
     110            $title .= " $sep $site_description"; 
     111        } 
     112 
     113        // Add a page number if necessary: 
     114        if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() ) { 
     115            $title .= " $sep " . sprintf( __( 'Page %s', 'museum' ), max( $paged, $page ) ); 
     116        } 
     117 
     118        return $title; 
     119    } 
     120    add_filter( 'wp_title', 'museum_wp_title', 10, 2 ); 
     121 
     122    /** 
     123     * Title shim for sites older than WordPress 4.1. 
     124     * 
     125     * @link https://make.wordpress.org/core/2014/10/29/title-tags-in-4-1/ 
     126     * @todo Remove this function when WordPress 4.3 is released. 
     127     */ 
     128    function museum_render_title() { 
     129        ?> 
     130        <title><?php wp_title( '|', true, 'right' ); ?></title> 
     131        <?php 
     132    } 
     133    add_action( 'wp_head', 'museum_render_title' ); 
     134endif; 
  • museum/0.1.6/inc/template-tags.php

    r84221 r84221  
    88 */ 
    99 
    10 if ( ! function_exists( 'museum_paging_nav' ) ) : 
    11 /** 
    12  * Display navigation to next/previous set of posts when applicable. 
    13  * 
    14  * @return void 
    15  */ 
    16 function museum_paging_nav() { 
    17     // Don't print empty markup if there's only one page. 
    18     if ( $GLOBALS['wp_query']->max_num_pages < 2 ) { 
    19         return; 
    20     } 
    21     if ( get_next_posts_link() && get_previous_posts_link() ){ 
    22         $class = 'both-links'; 
    23     } else { 
    24         $class = 'one-link'; 
    25     } 
    26     ?> 
    27     <nav class="navigation paging-navigation <?php echo $class; ?>" role="navigation"> 
    28         <h1 class="screen-reader-text"><?php _e( 'Posts navigation', 'museum' ); ?></h1> 
    29         <div class="nav-links"> 
    30  
    31             <?php if ( get_next_posts_link() ) : ?> 
    32             <div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'museum' ) ); ?></div> 
    33             <?php endif; ?> 
    34  
    35             <?php if ( get_previous_posts_link() ) : ?> 
    36             <div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'museum' ) ); ?></div> 
    37             <?php endif; ?> 
    38  
    39         </div><!-- .nav-links --> 
    40     </nav><!-- .navigation --> 
    41     <?php 
    42 } 
    43 endif; 
    44  
    45 if ( ! function_exists( 'museum_post_nav' ) ) : 
    46 /** 
    47  * Display navigation to next/previous post when applicable. 
    48  * 
    49  * @return void 
    50  */ 
    51 function museum_post_nav() { 
    52     // Don't print empty markup if there's nowhere to navigate. 
    53     $previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true ); 
    54     $next     = get_adjacent_post( false, '', false ); 
    55  
    56     if ( ! $next && ! $previous ) { 
    57         return; 
    58     } 
    59     ?> 
    60     <nav class="navigation post-navigation" role="navigation"> 
    61         <h1 class="screen-reader-text"><?php _e( 'Post navigation', 'museum' ); ?></h1> 
    62         <div class="nav-links"> 
    63  
    64             <?php previous_post_link( '%link', _x( '<span class="meta-nav">&laquo;</span> %title', 'Previous post link', 'museum' ) ); ?> 
    65             <?php next_post_link(     '%link', _x( '%title <span class="meta-nav">&raquo;</span>', 'Next post link',     'museum' ) ); ?> 
    66  
    67         </div><!-- .nav-links --> 
    68     </nav><!-- .navigation --> 
    69     <?php 
    70 } 
    71 endif; 
    72  
    73 if ( ! function_exists( 'museum_comment' ) ) : 
    74 /** 
    75  * Template for comments and pingbacks. 
    76  * 
    77  * Used as a callback by wp_list_comments() for displaying the comments. 
    78  */ 
    79 function museum_comment( $comment, $args, $depth ) { 
    80     $GLOBALS['comment'] = $comment; 
    81  
    82     if ( 'pingback' == $comment->comment_type || 'trackback' == $comment->comment_type ) : ?> 
    83  
    84     <li id="comment-<?php comment_ID(); ?>" <?php comment_class(); ?>> 
    85         <div class="comment-body"> 
    86             <?php _e( 'Pingback:', 'museum' ); ?> <?php comment_author_link(); ?> <?php edit_comment_link( __( 'Edit', 'museum' ), '<span class="edit-link">', '</span>' ); ?> 
    87         </div> 
    88  
    89     <?php else : ?> 
    90  
    91     <li id="comment-<?php comment_ID(); ?>" <?php comment_class( empty( $args['has_children'] ) ? '' : 'parent' ); ?>> 
    92         <article id="div-comment-<?php comment_ID(); ?>" class="comment-body"> 
    93             <footer class="comment-meta"> 
    94                 <?php if ( 0 != $args['avatar_size'] ) { echo get_avatar( $comment, $args['avatar_size'] ); } ?> 
    95  
    96                 <div class="comment-author vcard"> 
    97                     <?php printf( __( 'Comment by %s', 'museum' ), sprintf( '<cite class="fn">%s</cite>', get_comment_author_link() ) ); ?> 
    98                 </div><!-- .comment-author --> 
    99  
    100                 <div class="comment-metadata"> 
    101                     <a href="<?php echo esc_url( get_comment_link( $comment->comment_ID ) ); ?>"> 
    102                         <time datetime="<?php comment_time( 'c' ); ?>"> 
    103                             <?php printf( _x( '%1$s at %2$s', '1: date, 2: time', 'museum' ), get_comment_date(), get_comment_time() ); ?> 
    104                         </time> 
    105                     </a> 
    106                 </div><!-- .comment-metadata --> 
    107  
    108                 <?php if ( '0' == $comment->comment_approved ) : ?> 
    109                 <p class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', 'museum' ); ?></p> 
    110                 <?php endif; ?> 
    111             </footer><!-- .comment-meta --> 
    112  
    113             <div class="comment-content"> 
    114                 <?php comment_text(); ?> 
    115             </div><!-- .comment-content --> 
    116  
    117             <?php 
    118                 comment_reply_link( array_merge( $args, array( 
    119                     'add_below' => 'div-comment', 
    120                     'depth'     => $depth, 
    121                     'max_depth' => $args['max_depth'], 
    122                     'before'    => '<div class="reply">', 
    123                     'after'     => '</div>', 
    124                 ) ) ); 
    125             ?> 
    126         </article><!-- .comment-body --> 
    127  
    128     <?php 
    129     endif; 
    130 } 
    131 endif; // ends check for museum_comment() 
     10if ( ! function_exists( 'museum_footer_class' ) ) : 
     11/** 
     12 * Count the number of footer sidebars to enable dynamic classes for the footer. 
     13 */ 
     14function museum_footer_class() { 
     15    $class = 'one-column'; 
     16 
     17    if ( is_active_sidebar( 'sidebar-1' ) && is_active_sidebar( 'sidebar-2' ) ) { 
     18        $class = 'two-column'; 
     19    } 
     20 
     21    echo esc_attr( $class ); 
     22} 
     23endif; 
     24 
     25if ( ! function_exists( 'museum_menu_class' ) ) : 
     26/** 
     27 * Add dynamic class to nav wrapper contingent on social nav menu being active. 
     28 */ 
     29function museum_menu_class() { 
     30    $class = ''; 
     31 
     32    if ( has_nav_menu( 'social' ) ) { 
     33        $class = 'has-social-menu'; 
     34    } 
     35 
     36    echo esc_attr( $class ); 
     37} 
     38endif; 
     39 
     40if ( ! function_exists( 'museum_attachment_media' ) ) : 
     41/** 
     42 * Display attachment media 
     43 */ 
     44function museum_attachment_media() { 
     45    $caption = get_the_excerpt(); 
     46    if ( $caption ) echo '<div class="wp-caption">'; 
     47 
     48    if ( wp_attachment_is_image() ) { 
     49        echo wp_get_attachment_link( 0, 'post-thumbnail', false ); 
     50    } elseif ( 0 === strpos( $post->post_mime_type, 'video' ) ) { 
     51        $meta = wp_get_attachment_metadata( get_the_ID() ); 
     52        $atts = array( 'src' => wp_get_attachment_url() ); 
     53        if ( ! empty( $meta['width'] ) && ! empty( $meta['height'] ) ) { 
     54            $atts['width'] = ( int ) $meta['width']; 
     55            $atts['height'] = ( int ) $meta['height']; 
     56        } 
     57        echo wp_video_shortcode( $atts ); 
     58    } elseif ( 0 === strpos( $post->post_mime_type, 'audio' ) ) { 
     59        echo wp_audio_shortcode( array( 'src' => wp_get_attachment_url() ) ); 
     60    } 
     61 
     62    if ( $caption ) { 
     63        printf( '<p class="wp-caption-text">%s</p>', $caption ); 
     64        echo '</div>'; 
     65    } 
     66} 
     67endif; 
    13268 
    13369if ( ! function_exists( 'museum_posted_on' ) ) : 
     
    14884    ); 
    14985 
    150     printf( __( '<span class="byline">by %2$s</span><span class="posted-on"> on %1$s</span>', 'museum' ), 
     86    printf( '<span class="byline">' . __( 'by %1$s', 'museum' ) . '</span><span class="posted-on">' . __( ' on %2$s', 'museum' ) . '</span>', 
     87        sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s">%2$s</a></span>', 
     88            esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), 
     89            esc_html( get_the_author() ) 
     90        ), 
    15191        sprintf( '<a href="%1$s" rel="bookmark">%2$s</a>', 
    15292            esc_url( get_permalink() ), 
    15393            $time_string 
    154         ), 
    155         sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s">%2$s</a></span>', 
    156             esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), 
    157             esc_html( get_the_author() ) 
    15894        ) 
    15995    ); 
     96} 
     97endif; 
     98 
     99if ( ! function_exists( 'the_archive_title' ) ) : 
     100/** 
     101 * Shim for `the_archive_title()`. 
     102 * 
     103 * Display the archive title based on the queried object. 
     104 * 
     105 * @todo Remove this function when WordPress 4.3 is released. 
     106 * 
     107 * @param string $before Optional. Content to prepend to the title. Default empty. 
     108 * @param string $after  Optional. Content to append to the title. Default empty. 
     109 */ 
     110function the_archive_title( $before = '', $after = '' ) { 
     111    if ( is_category() ) { 
     112        $title = sprintf( __( 'Category: %s', 'museum' ), single_cat_title( '', false ) ); 
     113    } elseif ( is_tag() ) { 
     114        $title = sprintf( __( 'Tag: %s', 'museum' ), single_tag_title( '', false ) ); 
     115    } elseif ( is_author() ) { 
     116        $title = sprintf( __( 'Author: %s', 'museum' ), '<span class="vcard">' . get_the_author() . '</span>' ); 
     117    } elseif ( is_year() ) { 
     118        $title = sprintf( __( 'Year: %s', 'museum' ), get_the_date( _x( 'Y', 'yearly archives date format', 'museum' ) ) ); 
     119    } elseif ( is_month() ) { 
     120        $title = sprintf( __( 'Month: %s', 'museum' ), get_the_date( _x( 'F Y', 'monthly archives date format', 'museum' ) ) ); 
     121    } elseif ( is_day() ) { 
     122        $title = sprintf( __( 'Day: %s', 'museum' ), get_the_date( _x( 'F j, Y', 'daily archives date format', 'museum' ) ) ); 
     123    } elseif ( is_tax( 'post_format' ) ) { 
     124        if ( is_tax( 'post_format', 'post-format-aside' ) ) { 
     125            $title = _x( 'Asides', 'post format archive title', 'museum' ); 
     126        } elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) { 
     127            $title = _x( 'Galleries', 'post format archive title', 'museum' ); 
     128        } elseif ( is_tax( 'post_format', 'post-format-image' ) ) { 
     129            $title = _x( 'Images', 'post format archive title', 'museum' ); 
     130        } elseif ( is_tax( 'post_format', 'post-format-video' ) ) { 
     131            $title = _x( 'Videos', 'post format archive title', 'museum' ); 
     132        } elseif ( is_tax( 'post_format', 'post-format-quote' ) ) { 
     133            $title = _x( 'Quotes', 'post format archive title', 'museum' ); 
     134        } elseif ( is_tax( 'post_format', 'post-format-link' ) ) { 
     135            $title = _x( 'Links', 'post format archive title', 'museum' ); 
     136        } elseif ( is_tax( 'post_format', 'post-format-status' ) ) { 
     137            $title = _x( 'Statuses', 'post format archive title', 'museum' ); 
     138        } elseif ( is_tax( 'post_format', 'post-format-audio' ) ) { 
     139            $title = _x( 'Audio', 'post format archive title', 'museum' ); 
     140        } elseif ( is_tax( 'post_format', 'post-format-chat' ) ) { 
     141            $title = _x( 'Chats', 'post format archive title', 'museum' ); 
     142        } 
     143    } elseif ( is_post_type_archive() ) { 
     144        $title = sprintf( __( 'Archives: %s', 'museum' ), post_type_archive_title( '', false ) ); 
     145    } elseif ( is_tax() ) { 
     146        $tax = get_taxonomy( get_queried_object()->taxonomy ); 
     147        /* translators: 1: Taxonomy singular name, 2: Current taxonomy term */ 
     148        $title = sprintf( __( '%1$s: %2$s', 'museum' ), $tax->labels->singular_name, single_term_title( '', false ) ); 
     149    } else { 
     150        $title = __( 'Archives', 'museum' ); 
     151    } 
     152 
     153    /** 
     154     * Filter the archive title. 
     155     * 
     156     * @param string $title Archive title to be displayed. 
     157     */ 
     158    $title = apply_filters( 'get_the_archive_title', $title ); 
     159 
     160    if ( ! empty( $title ) ) { 
     161        echo $before . $title . $after; 
     162    } 
     163} 
     164endif; 
     165 
     166if ( ! function_exists( 'the_archive_description' ) ) : 
     167/** 
     168 * Shim for `the_archive_description()`. 
     169 * 
     170 * Display category, tag, or term description. 
     171 * 
     172 * @todo Remove this function when WordPress 4.3 is released. 
     173 * 
     174 * @param string $before Optional. Content to prepend to the description. Default empty. 
     175 * @param string $after  Optional. Content to append to the description. Default empty. 
     176 */ 
     177function the_archive_description( $before = '', $after = '' ) { 
     178    $description = apply_filters( 'get_the_archive_description', term_description() ); 
     179 
     180    if ( ! empty( $description ) ) { 
     181        /** 
     182         * Filter the archive description. 
     183         * 
     184         * @see term_description() 
     185         * 
     186         * @param string $description Archive description to be displayed. 
     187         */ 
     188        echo $before . $description . $after; 
     189    } 
     190} 
     191endif; 
     192 
     193if ( ! function_exists( 'the_posts_navigation' ) ) : 
     194/** 
     195 * Display navigation to next/previous set of posts when applicable. 
     196 * 
     197 * @todo Remove this function when WordPress 4.3 is released. 
     198 */ 
     199function the_posts_navigation( $args = array() ) { 
     200    // Don't print empty markup if there's only one page. 
     201    if ( $GLOBALS['wp_query']->max_num_pages < 2 ) { 
     202        return; 
     203    } 
     204    ?> 
     205    <nav class="navigation posts-navigation" role="navigation"> 
     206        <h2 class="screen-reader-text"><?php _e( 'Posts navigation', 'museum' ); ?></h2> 
     207        <div class="nav-links"> 
     208 
     209            <?php if ( get_next_posts_link() ) : ?> 
     210            <div class="nav-previous"><?php next_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'museum' ) ); ?></div> 
     211            <?php endif; ?> 
     212 
     213            <?php if ( get_previous_posts_link() ) : ?> 
     214            <div class="nav-next"><?php previous_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'museum' ) ); ?></div> 
     215            <?php endif; ?> 
     216 
     217        </div><!-- .nav-links --> 
     218    </nav><!-- .navigation --> 
     219    <?php 
     220} 
     221endif; 
     222 
     223if ( ! function_exists( 'the_post_navigation' ) ) : 
     224/** 
     225 * Display navigation to next/previous post when applicable. 
     226 * 
     227 * @todo Remove this function when WordPress 4.3 is released. 
     228 */ 
     229function the_post_navigation( $args = array() ) { 
     230    // Don't print empty markup if there's nowhere to navigate. 
     231    $previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true ); 
     232    $next     = get_adjacent_post( false, '', false ); 
     233 
     234    if ( ! $next && ! $previous ) { 
     235        return; 
     236    } 
     237    ?> 
     238    <nav class="navigation post-navigation" role="navigation"> 
     239        <h2 class="screen-reader-text"><?php _e( 'Post navigation', 'museum' ); ?></h2> 
     240        <div class="nav-links"> 
     241            <?php 
     242                previous_post_link( '<div class="nav-previous">%link</div>', '%title' ); 
     243                next_post_link( '<div class="nav-next">%link</div>', '%title' ); 
     244            ?> 
     245        </div><!-- .nav-links --> 
     246    </nav><!-- .navigation --> 
     247    <?php 
    160248} 
    161249endif; 
  • museum/0.1.6/index.php

    r84221 r84221  
    3232            <?php endwhile; ?> 
    3333 
    34             <?php museum_paging_nav(); ?> 
     34            <?php the_posts_navigation( array( 'next_text' => __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'museum' ), 'prev_text' => __( '<span class="meta-nav">&larr;</span> Older posts', 'museum' ) ) ); ?> 
    3535 
    3636        <?php else : ?> 
  • museum/0.1.6/search.php

    r84221 r84221  
    2525            <?php endwhile; ?> 
    2626 
    27             <?php museum_paging_nav(); ?> 
     27            <?php the_posts_navigation( array( 'next_text' => __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'museum' ), 'prev_text' => __( '<span class="meta-nav">&larr;</span> Older posts', 'museum' ) ) ); ?> 
    2828 
    2929        <?php else : ?> 
  • museum/0.1.6/sidebar.php

    r84221 r84221  
    66 */ 
    77 
     8if ( ! is_active_sidebar( 'sidebar-1' ) && ! is_active_sidebar( 'sidebar-2' ) ) { 
     9    return; 
     10} 
    811?> 
    912<div id="secondary" class="widget-area <?php museum_footer_class(); ?>" role="complementary"> 
  • museum/0.1.6/single.php

    r84221 r84221  
    1515            <?php get_template_part( 'content', 'single' ); ?> 
    1616 
    17             <?php museum_post_nav(); ?> 
     17            <?php the_post_navigation(); ?> 
    1818 
    1919            <?php 
  • museum/0.1.6/style.css

    r84221 r84221  
    55Author URI: http://themes.redradar.net 
    66Description: Museum is a theme crafted to showcase all of your best photographs, drawings, or illustrations. Featuring elegant, museum-inspired typography and ample room for your images, Museum pays special attention to category and media attachment pages to help your collections shine. 
    7 Version: 0.1.5 
     7Version: 0.1.6 
    88License: GNU General Public License 
    99License URI: license.txt 
     
    189189select, 
    190190textarea { 
    191   font-family: 'Quattrocento Sans'; 
    192   font-size: 16px; 
    193   font-size: 1.6rem; 
    194   line-height: 1.5; 
    195   color: #444444; 
    196191  -webkit-font-smoothing: antialiased; 
    197192  -moz-osx-font-smoothing: grayscale; 
     
    963958  font-style: normal; 
    964959} 
    965 body { 
    966   font-family: 'Quattrocento Sans'; 
     960body, 
     961button, 
     962input, 
     963select, 
     964textarea { 
     965  font-family: 'Quattrocento Sans', sans-serif; 
    967966  font-size: 16px; 
    968967  font-size: 1rem; 
     968  line-height: 1.5; 
     969  color: #444444; 
    969970} 
    970971/* Headings */ 
     
    975976h5, 
    976977h6 { 
    977   font-family: 'Playfair Display'; 
     978  font-family: 'Playfair Display', georgia, serif; 
    978979  font-size: 16px; 
    979980  font-size: 1rem; 
     
    10011002} 
    10021003blockquote { 
    1003   font-family: 'Playfair Display'; 
     1004  font-family: 'Playfair Display', georgia, serif; 
    10041005  font-style: italic; 
    10051006  font-size: 20px; 
     
    10901091} 
    10911092.navigation, 
    1092 #secondary { 
     1093.widget-area { 
    10931094  clear: both; 
    10941095} 
    1095 #secondary { 
     1096.widget-area { 
    10961097  color: #ffffff; 
    10971098  background: #a52020; 
     
    11881189  display: none; 
    11891190  padding: 20px; 
     1191  width: 100%; 
    11901192  text-align: center; 
     1193  font-family: "Playfair Display", serif; 
     1194  font-size: 30px; 
     1195  font-size: 1.875rem; 
     1196  font-weight: normal; 
     1197  line-height: 1.5; 
     1198  background: transparent; 
     1199  border: 0; 
    11911200  color: #ffffff; 
    1192   cursor: pointer; 
     1201} 
     1202.menu-toggle:focus { 
     1203  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); 
     1204  outline: none; 
    11931205} 
    11941206/* Social menu */ 
     
    12311243  background-color: transparent !important; 
    12321244} 
    1233 .social-menu a[href*="github"]:before { 
     1245.social-menu a[href*="github.com"]:before, 
     1246.social-menu a[href*="github.io"]:before { 
    12341247  content: '\f200'; 
    12351248} 
    1236 .social-menu a[href*="dribbble"]:before, 
     1249.social-menu a[href*="dribbble.com"]:before, 
    12371250.social-menu a[href*="drbl.in"]:before { 
    12381251  content: '\f201'; 
    12391252} 
    1240 .social-menu a[href*="twitter"]:before { 
     1253.social-menu a[href*="twitter.com"]:before, 
     1254.social-menu a[href*="t.co"]:before { 
    12411255  content: '\f202'; 
    12421256} 
    1243 .social-menu a[href*="facebook"]:before { 
     1257.social-menu a[href*="facebook.com"]:before, 
     1258.social-menu a[href*="fb.me"]:before { 
    12441259  content: '\f203'; 
    12451260} 
    1246 .social-menu a[href*="wordpress"]:before { 
     1261.social-menu a[href*="wordpress.org"]:before, 
     1262.social-menu a[href*="wordpress.com"]:before, 
     1263.social-menu a[href*="wp.me"]:before { 
    12471264  content: '\f205'; 
    12481265} 
    1249 .social-menu a[href*="googleplus"]:before { 
     1266.social-menu a[href*="plus.google.com"]:before { 
    12501267  content: '\f206'; 
    12511268} 
    1252 .social-menu a[href*="linkedin"]:before, 
     1269.social-menu a[href*="linkedin.com"]:before, 
    12531270.social-menu a[href*="lnkd.in"]:before { 
    12541271  content: '\f207'; 
    12551272} 
    1256 .social-menu a[href*="pinterest"]:before { 
     1273.social-menu a[href*="pinterest.com"]:before { 
    12571274  content: '\f209'; 
    12581275} 
    1259 .social-menu a[href*="flickr"]:before { 
     1276.social-menu a[href*="flickr.com"]:before { 
    12601277  content: '\f211'; 
    12611278} 
    1262 .social-menu a[href*="vimeo"]:before { 
     1279.social-menu a[href*="vimeo.com"]:before { 
    12631280  content: '\f212'; 
    12641281} 
    1265 .social-menu a[href*="youtube"]:before, 
     1282.social-menu a[href*="youtube.com"]:before, 
    12661283.social-menu a[href*="youtu.be"]:before { 
    12671284  content: '\f213'; 
    12681285} 
    1269 .social-menu a[href*="tumblr"]:before { 
     1286.social-menu a[href*="tumblr.com"]:before { 
    12701287  content: '\f214'; 
    12711288} 
    1272 .social-menu a[href*="instagram"]:before { 
     1289.social-menu a[href*="instagram.com"]:before { 
    12731290  content: '\f215'; 
    12741291} 
    1275 .social-menu a[href*="codepen"]:before { 
     1292.social-menu a[href*="codepen.io"]:before { 
    12761293  content: '\f216'; 
    12771294} 
    1278 .social-menu a[href*="polldaddy"]:before { 
     1295.social-menu a[href*="polldaddy.com"]:before { 
    12791296  content: '\f217'; 
    12801297} 
    1281 .social-menu a[href*="path"]:before { 
     1298.social-menu a[href*="path.com"]:before { 
    12821299  content: '\f219'; 
    12831300} 
    1284 .social-menu a[href*="skype"]:before { 
     1301.social-menu a[href*="skype:"]:before { 
    12851302  content: '\f220'; 
    12861303} 
    1287 .social-menu a[href*="digg"]:before { 
     1304.social-menu a[href*="digg.com"]:before { 
    12881305  content: '\f221'; 
    12891306} 
    1290 .social-menu a[href*="reddit"]:before { 
     1307.social-menu a[href*="reddit.com"]:before { 
    12911308  content: '\f222'; 
    12921309} 
    1293 .social-menu a[href*="stumbleupon"]:before { 
     1310.social-menu a[href*="stumbleupon.com"]:before { 
    12941311  content: '\f223'; 
    12951312} 
    1296 .social-menu a[href*="pocket"]:before { 
     1313.social-menu a[href*="getpocket.com"]:before { 
    12971314  content: '\f224'; 
    12981315} 
    1299 .social-menu a[href*="dropbox"]:before { 
     1316.social-menu a[href*="dropbox.com"]:before { 
    13001317  content: '\f225'; 
    13011318} 
     
    13311348/* =Content 
    13321349----------------------------------------------- */ 
    1333 #masthead { 
     1350.site-header { 
    13341351  clear: both; 
    13351352  text-align: center; 
     
    13721389  margin: 10px 0 0; 
    13731390} 
    1374 .entry-header .no-title p { 
     1391.entry-header .read-more + p { 
    13751392  margin-top: 0; 
    13761393} 
     
    14031420.entry-meta { 
    14041421  margin: 20px 0 0; 
    1405   font-family: 'Playfair Display'; 
     1422  font-family: 'Playfair Display', georgia, serif; 
    14061423  font-style: italic; 
    14071424  font-size: 14px; 
     
    14331450  margin-left: 20px; 
    14341451} 
    1435 .format-icon { 
    1436   /* Add format-icon styles here, once they exist */ 
    1437 } 
    1438 .video-icon { 
    1439   /* Add the video icon (image? svg?) */ 
    1440 } 
    14411452.read-more { 
    14421453  display: none; 
    14431454  float: right; 
    1444   font-family: 'Playfair Display'; 
     1455  font-family: 'Playfair Display', georgia, serif; 
    14451456  font-size: 16px; 
    14461457  font-size: 1rem; 
     
    14801491  /* initial ratio of 1:1*/ 
    14811492} 
    1482 body.blog .hentry .post-link, 
    1483 body.archive .hentry .post-link { 
     1493body.blog .hentry:nth-of-type(even), 
     1494body.archive .hentry:nth-of-type(even) { 
     1495  float: right; 
     1496  clear: none; 
     1497} 
     1498body.blog .hentry:nth-of-type(odd), 
     1499body.archive .hentry:nth-of-type(odd) { 
     1500  float: left; 
     1501  clear: both; 
     1502} 
     1503body.blog .post-link, 
     1504body.archive .post-link { 
     1505  display: block; 
    14841506  position: absolute; 
    14851507  top: 0; 
     
    14871509  left: 0; 
    14881510  right: 0; 
     1511  padding: 20px; 
    14891512  overflow: hidden; 
    14901513} 
    1491 body.blog .hentry .post-link:focus, 
    1492 body.archive .hentry .post-link:focus { 
     1514body.blog .post-link:focus, 
     1515body.archive .post-link:focus, 
     1516body.blog .focus .post-link, 
     1517body.archive .focus .post-link { 
    14931518  outline: none; 
    14941519  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); 
    14951520} 
    1496 body.blog .hentry .post-link:focus .entry-header, 
    1497 body.archive .hentry .post-link:focus .entry-header { 
     1521body.blog .post-link:focus .entry-header, 
     1522body.archive .post-link:focus .entry-header, 
     1523body.blog .focus .post-link .entry-header, 
     1524body.archive .focus .post-link .entry-header { 
    14981525  opacity: 1; 
    14991526} 
    1500 body.blog .hentry .entry-image, 
    1501 body.archive .hentry .entry-image { 
     1527body.blog .entry-image, 
     1528body.archive .entry-image { 
    15021529  position: absolute; 
    15031530  top: 0; 
     
    15061533  right: 0; 
    15071534} 
    1508 body.blog .hentry .entry-image img, 
    1509 body.archive .hentry .entry-image img { 
     1535body.blog .entry-image img, 
     1536body.archive .entry-image img { 
    15101537  height: 100%; 
    15111538  -webkit-transition: -webkit-transform 0.35s; 
     
    15161543body.blog .hentry:hover .entry-image img, 
    15171544body.archive .hentry:hover .entry-image img, 
    1518 body.blog .hentry a:focus .entry-image img, 
    1519 body.archive .hentry a:focus .entry-image img { 
     1545body.blog .focus .entry-image img, 
     1546body.archive .focus .entry-image img, 
     1547body.blog a:focus .entry-image img, 
     1548body.archive a:focus .entry-image img { 
    15201549  -webkit-transform: scale(1); 
    15211550  transform: scale(1); 
    15221551} 
    1523 body.blog .hentry:nth-of-type(even), 
    1524 body.archive .hentry:nth-of-type(even) { 
    1525   float: right; 
    1526   clear: none; 
    1527 } 
    1528 body.blog .hentry:nth-of-type(odd), 
    1529 body.archive .hentry:nth-of-type(odd) { 
    1530   float: left; 
    1531   clear: both; 
    1532 } 
    1533 body.blog .hentry .entry-header, 
    1534 body.archive .hentry .entry-header { 
     1552body.blog .entry-header, 
     1553body.archive .entry-header { 
    15351554  position: absolute; 
    15361555  overflow: hidden; 
     
    15431562  transition: opacity .25s; 
    15441563} 
    1545 body.blog .hentry .entry-header a, 
    1546 body.archive .hentry .entry-header a { 
     1564body.blog .entry-header a, 
     1565body.archive .entry-header a { 
    15471566  color: #ffffff; 
    15481567} 
    1549 body.blog.home:not(.paged) .hentry:first-of-type, 
    1550 body.archive.home:not(.paged) .hentry:first-of-type { 
     1568body.blog .with-image .entry-header, 
     1569body.archive .with-image .entry-header { 
     1570  opacity: 0; 
     1571} 
     1572body.blog .with-image .entry-header .entry-title:after, 
     1573body.archive .with-image .entry-header .entry-title:after { 
     1574  content: ' \203A'; 
     1575} 
     1576body.blog .with-image.with-title:hover .entry-header, 
     1577body.archive .with-image.with-title:hover .entry-header { 
     1578  opacity: 1; 
     1579} 
     1580body.blog .with-image .entry-excerpt, 
     1581body.archive .with-image .entry-excerpt { 
     1582  display: none; 
     1583} 
     1584body.home:not(.paged) .hentry:first-of-type { 
    15511585  float: none; 
    15521586  height: auto; 
    15531587  width: 100%; 
    15541588} 
    1555 body.blog.home:not(.paged) .hentry:first-of-type .entry-header, 
    1556 body.archive.home:not(.paged) .hentry:first-of-type .entry-header { 
     1589body.home:not(.paged) .hentry:first-of-type .entry-header { 
    15571590  opacity: 1; 
    15581591} 
    1559 body.blog.home:not(.paged) .hentry:first-of-type .entry-title, 
    1560 body.archive.home:not(.paged) .hentry:first-of-type .entry-title { 
     1592body.home:not(.paged) .hentry:first-of-type .entry-title { 
    15611593  font-size: 30px; 
    15621594  font-size: 1.875rem; 
    15631595} 
    1564 body.blog.home:not(.paged) .hentry:first-of-type .entry-excerpt, 
    1565 body.archive.home:not(.paged) .hentry:first-of-type .entry-excerpt, 
    1566 body.blog.home:not(.paged) .hentry:first-of-type .read-more, 
    1567 body.archive.home:not(.paged) .hentry:first-of-type .read-more { 
     1596body.home:not(.paged) .hentry:first-of-type .entry-excerpt, 
     1597body.home:not(.paged) .hentry:first-of-type .read-more { 
    15681598  display: block; 
    15691599} 
    1570 body.blog.home:not(.paged) .hentry:first-of-type img, 
    1571 body.archive.home:not(.paged) .hentry:first-of-type img { 
     1600body.home:not(.paged) .hentry:first-of-type img { 
    15721601  -webkit-transform: scale(1.05); 
    15731602  transform: scale(1.05); 
    15741603} 
    1575 body.blog.home:not(.paged) .hentry:first-of-type:hover .entry-image img, 
    1576 body.archive.home:not(.paged) .hentry:first-of-type:hover .entry-image img, 
    1577 body.blog.home:not(.paged) .hentry:first-of-type a:focus .entry-image img, 
    1578 body.archive.home:not(.paged) .hentry:first-of-type a:focus .entry-image img { 
     1604body.home:not(.paged) .hentry:first-of-type:hover .entry-image img, 
     1605body.home:not(.paged) .hentry:first-of-type a:focus .entry-image img { 
    15791606  -webkit-transform: scale(1); 
    15801607  transform: scale(1); 
    15811608} 
    1582 body.blog.home:not(.paged) .hentry:first-of-type.no-image, 
    1583 body.archive.home:not(.paged) .hentry:first-of-type.no-image { 
    1584   padding: 20px; 
    1585 } 
    1586 body.blog.home:not(.paged) .hentry:first-of-type.no-image:before, 
    1587 body.archive.home:not(.paged) .hentry:first-of-type.no-image:before { 
     1609body.home:not(.paged) .hentry:first-of-type.no-image:before { 
    15881610  padding-top: 0; 
    15891611} 
    1590 body.blog.home:not(.paged) .hentry:first-of-type.no-image .post-link, 
    1591 body.archive.home:not(.paged) .hentry:first-of-type.no-image .post-link, 
    1592 body.blog.home:not(.paged) .hentry:first-of-type.no-image .entry-header, 
    1593 body.archive.home:not(.paged) .hentry:first-of-type.no-image .entry-header { 
     1612body.home:not(.paged) .hentry:first-of-type.no-image .post-link, 
     1613body.home:not(.paged) .hentry:first-of-type.no-image .entry-header { 
    15941614  position: relative; 
    15951615  top: auto; 
     
    15981618  right: auto; 
    15991619} 
    1600 body.blog.home:not(.paged) .hentry:nth-of-type(even), 
    1601 body.archive.home:not(.paged) .hentry:nth-of-type(even) { 
     1620body.home:not(.paged) .hentry:nth-of-type(even) { 
    16021621  float: left; 
    16031622  clear: both; 
    16041623} 
    1605 body.blog.home:not(.paged) .hentry:nth-of-type(odd), 
    1606 body.archive.home:not(.paged) .hentry:nth-of-type(odd) { 
     1624body.home:not(.paged) .hentry:nth-of-type(odd) { 
    16071625  float: right; 
    16081626  clear: none; 
    16091627} 
    1610 body.blog .with-image .entry-header, 
    1611 body.archive .with-image .entry-header { 
    1612   opacity: 0; 
    1613 } 
    1614 body.blog .with-image .entry-header .entry-title:after, 
    1615 body.archive .with-image .entry-header .entry-title:after { 
    1616   content: ' \203A'; 
    1617 } 
    1618 body.blog .with-image:hover .entry-header, 
    1619 body.archive .with-image:hover .entry-header { 
    1620   opacity: 1; 
    1621 } 
    1622 body.blog .with-image .entry-excerpt, 
    1623 body.archive .with-image .entry-excerpt { 
    1624   display: none; 
     1628body.home.page .hentry { 
     1629  float: none !important; 
     1630  width: auto !important; 
     1631} 
     1632body.home.page .entry-title { 
     1633  font-size: 36px !important; 
     1634  font-size: 2.25rem !important; 
    16251635} 
    16261636/* @end */ 
     
    18321842.post-password-form label { 
    18331843  display: block; 
    1834   font-family: 'Playfair Display'; 
     1844  font-family: 'Playfair Display', georgia, serif; 
    18351845  font-style: italic; 
    18361846} 
     
    18511861} 
    18521862.comment-form label { 
    1853   font-family: 'Playfair Display'; 
     1863  font-family: 'Playfair Display', georgia, serif; 
    18541864  font-style: italic; 
    18551865  font-size: 14px; 
     
    19021912  background: #f5f5f5; 
    19031913} 
     1914.single .navigation .nav-next, 
     1915.single .navigation .nav-previous { 
     1916  padding: 0; 
     1917  text-transform: none; 
     1918  background-color: transparent; 
     1919} 
    19041920.navigation.both-links .nav-previous { 
    19051921  float: left; 
     
    19131929.page .navigation { 
    19141930  margin: 20px 130px 60px; 
    1915   font-family: 'Playfair Display'; 
     1931  font-family: 'Playfair Display', georgia, serif; 
    19161932  font-style: italic; 
    19171933  font-size: 14px; 
     
    19491965.comment-navigation { 
    19501966  margin: 0 0 20px; 
    1951   font-family: 'Playfair Display'; 
     1967  font-family: 'Playfair Display', georgia, serif; 
    19521968  font-style: italic; 
    19531969  font-size: 14px; 
     
    19771993  /*! Not used in this theme. */ 
    19781994} 
    1979 #comments { 
     1995.comments-area { 
    19801996  border-top: 1px solid #eee; 
    19811997} 
    19821998.comments-title, 
    1983 #reply-title { 
     1999.comment-reply-title { 
    19842000  margin: 60px 0 40px; 
    19852001  color: #a52020; 
     
    19872003  font-size: 1.875rem; 
    19882004} 
    1989 #reply-title { 
     2005.comment-reply-title { 
    19902006  margin-bottom: 20px; 
    19912007} 
     
    20082024  margin-bottom: 20px; 
    20092025} 
    2010 li.comment article .comment-meta .avatar { 
     2026li.comment article .avatar { 
    20112027  float: left; 
    20122028  margin: 0 20px 20px 0; 
    20132029} 
    2014 li.comment article .comment-meta .comment-metadata { 
    2015   font-family: 'Playfair Display'; 
     2030li.comment article .comment-metadata { 
     2031  font-family: 'Playfair Display', georgia, serif; 
    20162032  font-style: italic; 
    20172033  font-size: 14px; 
     
    20212037  font-size: 0.75rem; 
    20222038} 
    2023 li.comment article .comment-meta .comment-metadata a { 
     2039li.comment article .comment-metadata a { 
    20242040  color: #a52020; 
    20252041} 
    2026 li.comment article .comment-meta .comment-metadata a:hover, 
    2027 li.comment article .comment-meta .comment-metadata a:active, 
    2028 li.comment article .comment-meta .comment-metadata a:focus { 
     2042li.comment article .comment-metadata a:hover, 
     2043li.comment article .comment-metadata a:active, 
     2044li.comment article .comment-metadata a:focus { 
    20292045  color: #500f0f; 
    20302046} 
    2031 li.comment article .comment-meta .comment-metadata a { 
     2047li.comment article .comment-metadata a { 
    20322048  color: #444444; 
    20332049} 
    2034 li.comment article .comment-meta .comment-author { 
     2050li.comment article .comment-author { 
    20352051  font-weight: 700; 
    20362052} 
    2037 li.comment article .comment-meta .comment-author cite { 
     2053li.comment article .comment-author cite { 
    20382054  font-style: normal; 
    20392055} 
    2040 li.comment article .comment-meta .comment-author a { 
     2056li.comment article .comment-author a { 
    20412057  color: #444444; 
    20422058} 
     
    20532069  background-color: #f2f2f2; 
    20542070  font-weight: 700; 
    2055   font-family: 'Playfair Display'; 
     2071  font-family: 'Playfair Display', georgia, serif; 
    20562072  font-style: italic; 
    20572073  font-size: 14px; 
     
    20882104  background-color: #f2f2f2; 
    20892105} 
    2090 li.comment .comment-respond #reply-title { 
     2106li.comment .comment-reply-title { 
    20912107  margin-top: 40px; 
    20922108} 
     
    20982114  padding: 20px; 
    20992115  background-color: #fafafa; 
    2100   font-family: 'Playfair Display'; 
     2116  font-family: 'Playfair Display', georgia, serif; 
    21012117  font-style: italic; 
    21022118  font-size: 14px; 
     
    21112127  color: #500f0f; 
    21122128} 
    2113 .comment-respond #cancel-comment-reply-link { 
    2114   font-family: 'Playfair Display'; 
     2129.comment-respond .comment-reply-title a { 
     2130  font-family: 'Playfair Display', georgia, serif; 
    21152131  font-style: italic; 
    21162132  font-size: 14px; 
     
    21202136  font-size: 1rem; 
    21212137} 
    2122 .comment-respond #cancel-comment-reply-link a { 
     2138.comment-respond .comment-reply-title a a { 
    21232139  color: #a52020; 
    21242140} 
    2125 .comment-respond #cancel-comment-reply-link a:hover, 
    2126 .comment-respond #cancel-comment-reply-link a:active, 
    2127 .comment-respond #cancel-comment-reply-link a:focus { 
     2141.comment-respond .comment-reply-title a a:hover, 
     2142.comment-respond .comment-reply-title a a:active, 
     2143.comment-respond .comment-reply-title a a:focus { 
    21282144  color: #500f0f; 
    21292145} 
     
    21422158.comment-notes { 
    21432159  margin-bottom: 20px; 
    2144   font-family: 'Playfair Display'; 
     2160  font-family: 'Playfair Display', georgia, serif; 
    21452161  font-style: italic; 
    21462162  font-size: 14px; 
     
    21982214} 
    21992215/* Globally hidden elements when Infinite Scroll is supported and in use. */ 
    2200 .infinite-scroll .paging-navigation, 
     2216.infinite-scroll .posts-navigation, 
    22012217.infinite-scroll.neverending .site-footer { 
    22022218  /* Theme Footer (when set to scrolling) */ 
     
    22332249} 
    22342250@media screen and (max-width: 700px) { 
    2235   body.blog .hentry.no-image, 
    2236   body.archive .hentry.no-image { 
    2237     padding: 20px; 
    2238   } 
    2239   body.blog .hentry.no-image:before, 
    2240   body.archive .hentry.no-image:before { 
     2251  body.blog .no-image:before, 
     2252  body.archive .no-image:before { 
    22412253    padding-top: 0; 
    22422254  } 
    2243   body.blog .hentry.no-image .post-link, 
    2244   body.archive .hentry.no-image .post-link, 
    2245   body.blog .hentry.no-image .entry-header, 
    2246   body.archive .hentry.no-image .entry-header { 
     2255  body.blog .no-image .post-link, 
     2256  body.archive .no-image .post-link, 
     2257  body.blog .no-image .entry-header, 
     2258  body.archive .no-image .entry-header { 
    22472259    position: relative; 
    22482260    top: auto; 
     
    23282340  } 
    23292341  .comments-title, 
    2330   #reply-title { 
     2342  .comment-reply-title { 
    23312343    font-size: 22px; 
    23322344    font-size: 1.375rem; 
Note: See TracChangeset for help on using the changeset viewer.