145 lines
5.5 KiB
PHP
145 lines
5.5 KiB
PHP
|
<?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
|
||
|
}
|