. add_theme_support( 'automatic-feed-links' ); // This theme uses wp_nav_menu() in one location. register_nav_menu( 'primary', __( 'Primary Menu', 'musicthemebysg' ) ); // Add support for a variety of post formats add_theme_support( 'post-formats', array( 'aside', 'link', 'gallery', 'status', 'quote', 'image' ) ); $default_background_color = ''; // Add support for custom backgrounds. add_theme_support( 'custom-background', array( // Let WordPress know what our default background color is. // This is dependent on our current color scheme. 'default-color' => $default_background_color, ) ); // This theme uses Featured Images (also known as post thumbnails) for per-post/per-page Custom Header images add_theme_support( 'post-thumbnails' ); // Add support for custom headers. $custom_header_support = array( // The default header text color. 'default-text-color' => '000', // The height and width of our custom header. 'width' => apply_filters( 'musicthemebysg_header_image_width', 1000 ), 'height' => apply_filters( 'musicthemebysg_header_image_height', 288 ), // Support flexible heights. 'flex-height' => true, // Random image rotation by default. 'random-default' => true, // Callback for styling the header. 'wp-head-callback' => 'musicthemebysg_header_style', // Callback for styling the header preview in the admin. 'admin-head-callback' => 'musicthemebysg_admin_header_style', // Callback used to display the header preview in the admin. 'admin-preview-callback' => 'musicthemebysg_admin_header_image', ); add_theme_support( 'custom-header', $custom_header_support ); // We'll be using post thumbnails for custom header images on posts and pages. // We want them to be the size of the header image that we just defined // Larger images will be auto-cropped to fit, smaller ones will be ignored. See header.php. set_post_thumbnail_size( $custom_header_support['width'], $custom_header_support['height'], true ); // Add Music Theme by SiteGround's custom image sizes. // Used for large feature (header) images. add_image_size( 'large-feature', $custom_header_support['width'], $custom_header_support['height'], true ); // Used for featured posts if a large-feature doesn't exist. add_image_size( 'small-feature', 500, 300 ); } endif; // musicthemebysg_setup if ( ! function_exists( 'musicthemebysg_header_style' ) ) : /** * Styles the header image and text displayed on the blog * * @since Music Theme by SiteGround */ function musicthemebysg_header_style() { $text_color = get_header_textcolor(); // If no custom options for text are set, let's bail. if ( $text_color == HEADER_TEXTCOLOR ) return; // If we get this far, we have custom styles. Let's do this. ?> Header admin panel. * * Referenced via add_theme_support('custom-header') in musicthemebysg_setup(). * * @since Music Theme by SiteGround */ function musicthemebysg_admin_header_style() { ?> Header admin panel. * * Referenced via add_theme_support('custom-header') in musicthemebysg_setup(). * * @since Music Theme by SiteGround */ function musicthemebysg_admin_header_image() { ?>

onclick="return false;" href="">

>
' . __( 'Continue reading ', 'musicthemebysg' ) . ''; } endif; // musicthemebysg_continue_reading_link /** * Replaces "[...]" (appended to automatically generated excerpts) with an ellipsis and musicthemebysg_continue_reading_link(). * * To override this in a child theme, remove the filter and add your own * function tied to the excerpt_more filter hook. */ function musicthemebysg_auto_excerpt_more( $more ) { return ' …' . musicthemebysg_continue_reading_link(); } add_filter( 'excerpt_more', 'musicthemebysg_auto_excerpt_more' ); /** * Adds a pretty "Continue Reading" link to custom post excerpts. * * To override this link in a child theme, remove the filter and add your own * function tied to the get_the_excerpt filter hook. */ function musicthemebysg_custom_excerpt_more( $output ) { if ( has_excerpt() && ! is_attachment() ) { $output .= musicthemebysg_continue_reading_link(); } return $output; } add_filter( 'get_the_excerpt', 'musicthemebysg_custom_excerpt_more' ); /** * Get our wp_nav_menu() fallback, wp_page_menu(), to show a home link. */ function musicthemebysg_page_menu_args( $args ) { if ( ! isset( $args['show_home'] ) ) $args['show_home'] = true; return $args; } add_filter( 'wp_page_menu_args', 'musicthemebysg_page_menu_args' ); /** * Register our sidebars and widgetized areas. Also register the default Epherma widget. * * @since Music Theme by SiteGround */ function musicthemebysg_widgets_init() { register_sidebar( array( 'name' => __( 'Main Sidebar', 'musicthemebysg' ), 'id' => 'sidebar-1', 'before_widget' => '", 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => __( 'Showcase Sidebar', 'musicthemebysg' ), 'id' => 'sidebar-2', 'description' => __( 'The sidebar for the optional Showcase Template', 'musicthemebysg' ), 'before_widget' => '", 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => __( 'Footer Area One', 'musicthemebysg' ), 'id' => 'sidebar-3', 'description' => __( 'An optional widget area for your site footer', 'musicthemebysg' ), 'before_widget' => '", 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => __( 'Footer Area Two', 'musicthemebysg' ), 'id' => 'sidebar-4', 'description' => __( 'An optional widget area for your site footer', 'musicthemebysg' ), 'before_widget' => '", 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => __( 'Footer Area Three', 'musicthemebysg' ), 'id' => 'sidebar-5', 'description' => __( 'An optional widget area for your site footer', 'musicthemebysg' ), 'before_widget' => '", 'before_title' => '

', 'after_title' => '

', ) ); } add_action( 'widgets_init', 'musicthemebysg_widgets_init' ); if ( ! function_exists( 'musicthemebysg_content_nav' ) ) : /** * Display navigation to next/previous pages when applicable */ function musicthemebysg_content_nav( $html_id ) { global $wp_query; if ( $wp_query->max_num_pages > 1 ) : ?> ]*?href=[\'"](.+?)[\'"]/is', get_the_content(), $matches ) ) return false; return esc_url_raw( $matches[1] ); } /** * Count the number of footer sidebars to enable dynamic classes for the footer */ function musicthemebysg_footer_sidebar_class() { $count = 0; if ( is_active_sidebar( 'sidebar-3' ) ) $count++; if ( is_active_sidebar( 'sidebar-4' ) ) $count++; if ( is_active_sidebar( 'sidebar-5' ) ) $count++; $class = ''; switch ( $count ) { case '1': $class = 'one'; break; case '2': $class = 'two'; break; case '3': $class = 'three'; break; } if ( $class ) echo 'class="' . $class . '"'; } if ( ! function_exists( 'musicthemebysg_comment' ) ) : /** * Template for comments and pingbacks. * * To override this walker in a child theme without modifying the comments template * simply create your own musicthemebysg_comment(), and that function will be used instead. * * Used as a callback by wp_list_comments() for displaying the comments. * * @since Music Theme by SiteGround */ function musicthemebysg_comment( $comment, $args, $depth ) { $GLOBALS['comment'] = $comment; switch ( $comment->comment_type ) : case 'pingback' : case 'trackback' : ?>
  • ', '' ); ?>

  • id="li-comment-">
    comment_parent ) $avatar_size = 39; echo get_avatar( $comment, $avatar_size ); /* translators: 1: comment author, 2: date and time */ printf( __( '%1$s on %2$s said:', 'musicthemebysg' ), sprintf( '%s', get_comment_author_link() ), sprintf( '', esc_url( get_comment_link( $comment->comment_ID ) ), get_comment_time( 'c' ), /* translators: 1: date, 2: time */ sprintf( __( '%1$s at %2$s', 'musicthemebysg' ), get_comment_date(), get_comment_time() ) ) ); ?> ', '' ); ?>
    comment_approved == '0' ) : ?>
    __( 'Reply ', 'musicthemebysg' ), 'depth' => $depth, 'max_depth' => $args['max_depth'] ) ) ); ?>
    Posted on by ', 'musicthemebysg' ), esc_url( get_permalink() ), esc_attr( get_the_time() ), esc_attr( get_the_date( 'c' ) ), esc_html( get_the_date() ), esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), esc_attr( sprintf( __( 'View all posts by %s', 'musicthemebysg' ), get_the_author() ) ), get_the_author() ); } endif; /** * Adds two classes to the array of body classes. * The first is if the site has only had one author with published posts. * The second is if a singular post being displayed * * @since Music Theme by SiteGround */ function musicthemebysg_body_classes( $classes ) { if ( function_exists( 'is_multi_author' ) && ! is_multi_author() ) $classes[] = 'single-author'; if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) ) $classes[] = 'singular'; return $classes; } add_filter( 'body_class', 'musicthemebysg_body_classes' ); function musicthemebysg_head_title( $title, $sep ) { global $page, $paged; $out = $title; // Add the blog name. $out .= get_bloginfo( 'name' ); // Add the blog description for the home/front page. $site_description = get_bloginfo( 'description', 'display' ); if ( $site_description && ( is_home() || is_front_page() ) ) $out .= " | $site_description"; // Add a page number if necessary: if ( $paged >= 2 || $page >= 2 ) $out .= ' | ' . sprintf( __( 'Page %s', 'musicthemebysg' ), max( $paged, $page ) ); return $out; } add_filter( 'wp_title', 'musicthemebysg_head_title', 10, 2 ); function musicthemebysg_enqueue_scripts_styles() { wp_enqueue_style( 'music-style', get_stylesheet_uri() ); if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) wp_enqueue_script( 'comment-reply' ); } add_action( 'wp_enqueue_scripts', 'musicthemebysg_enqueue_scripts_styles' );