<?php /* * You can add your own functions here. You can also override functions that are * called from within the parent theme. For a complete list of function you can * override here, please see the docs: * * https://github.com/raamdev/independent-publisher#functions-you-can-override-in-a-child-theme * */ /* * Uncomment the following to add a favicon to your site. You need to add favicon * image to the images folder of Independent Publisher Child Theme for this to work. */ /* function blog_favicon() { echo '<link rel="Shortcut Icon" type="image/x-icon" href="'.get_bloginfo('stylesheet_directory').'/images/favicon.ico" />' . "\n"; } add_action('wp_head', 'blog_favicon'); */ /* * Add version number to main style.css file with version number that matches the * last modified time of the file. This helps when making frequent changes to the * CSS file as the browser will always load the newest version. */ /* function independent_publisher_stylesheet() { wp_enqueue_style( 'independent-publisher-style', get_stylesheet_uri(), '', filemtime( get_stylesheet_directory() . '/style.css') ); } */ /* * Modifies the default theme footer. * This also applies the changes to JetPack's Infinite Scroll footer, if you're using that module. */ /* function independent_publisher_footer_credits() { $my_custom_footer = 'This is my custom footer.'; return $my_custom_footer; } */ /* * * * * * * Authors * * * * * * */ function independent_publisher_posted_author() { /** * This function gets called outside the loop (in header.php), * so we need to figure out the post author ID and Nice Name manually. */ global $wp_query; if ( function_exists( 'get_coauthors') ) { $coauthors = get_coauthors( $wp_query->post->ID ); printf('<span class="byline">'); $i = 0; foreach($coauthors as $author) { $i++; // keep track of how many we've processed $post_author_id = $author->ID; $post_author_nice_name = get_the_author_meta( 'display_name', $post_author_id ); printf( '<span class="author p-author vcard h-card"><a class="u-url url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>', esc_url( get_author_posts_url( get_the_author_meta( 'ID', $post_author_id ) ) ), esc_attr( sprintf( __( 'View all posts by %s', 'independent-publisher' ), $post_author_nice_name ) ), esc_html( $post_author_nice_name ) ); if ( $i < (sizeof($coauthors) - 1) ) { // Add comma for all but last two authors. printf(', '); } else if ( $i == (sizeof($coauthors) - 1) ) { // Add "and" for second-last authors printf(' and '); } printf('Size: %$1d', sizeof($coauthors)); // if last author, do nothing } printf('</span>'); } else { $post_author_id = $wp_query->post->post_author; $post_author_nice_name = get_the_author_meta( 'display_name', $post_author_id ); printf( '<span class="byline"><span class="author p-author vcard h-card"><a class="u-url url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span></span>', esc_url( get_author_posts_url( get_the_author_meta( 'ID', $post_author_id ) ) ), esc_attr( sprintf( __( 'View all posts by %s', 'independent-publisher' ), $post_author_nice_name ) ), esc_html( $post_author_nice_name ) ); } } /* * * * * * * * * * Author cards * * * * * * * * * */ function independent_publisher_posted_author_card() { /** * This function gets called outside the loop (in header.php), * so we need to figure out the post author ID and Nice Name manually. */ global $wp_query; $post_author_id = $wp_query->post->post_author; $show_avatars = get_option( 'show_avatars' ); ?> <?php if ( ( !$show_avatars || $show_avatars === 0 ) && !independent_publisher_is_multi_author_mode() && get_header_image() ) : ?> <a class="site-logo" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"> <img class="no-grav" src="<?php echo esc_url( get_header_image() ); ?>" height="<?php echo absint( get_custom_header()->height ); ?>" width="<?php echo absint( get_custom_header()->width ); ?>" alt="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" /> </a> <?php else: ?> <a class="site-logo" href="<?php echo get_author_posts_url( get_the_author_meta( 'ID', $post_author_id ) ); ?>"> <?php echo get_avatar( get_the_author_meta( 'ID', $post_author_id ), 100 ); ?> </a> <?php endif; ?> <div class="site-title"><?php independent_publisher_posted_author(); ?></div> <div class="site-description"><?php the_author_meta( 'description', $post_author_id ) ?></div> <?php get_template_part( 'menu', 'social' ); ?> <div class="site-published-separator"></div> <h2 class="site-published"><?php _e( 'Published', 'independent-publisher' ); ?></h2> <h2 class="site-published-date"><?php independent_publisher_posted_on_date(); ?></h2> <?php /* Show last updated date if the post was modified AND Show Updated Date on Single Posts option is enabled AND 'independent_publisher_hide_updated_date' Custom Field is not present on this post */ ?> <?php if ( get_the_modified_date() !== get_the_date() && independent_publisher_show_updated_date_on_single() && !get_post_meta( get_the_ID(), 'independent_publisher_hide_updated_date', true ) ) : ?> <h2 class="site-published"><?php _e( 'Updated', 'independent-publisher' ); ?></h2> <h2 class="site-published-date"><?php independent_publisher_post_updated_date(); ?></h2> <?php endif; ?> <?php do_action( 'independent_publisher_after_post_published_date' ); ?> <?php }