for posts and comments.
add_theme_support( 'automatic-feed-links' );
/*
* Let WordPress manage the document title.
* By adding theme support, we declare that this theme does not use a
* hard-coded
tag in the document head, and expect WordPress to
* provide it for us.
*/
add_theme_support( 'title-tag' );
// Add support for custom background
$liveblog_bg_defaults = array(
'default-color' => 'ffffff',
'default-image' => get_template_directory_uri() . '/assets/images/bg.png',
);
add_theme_support( 'custom-background', $liveblog_bg_defaults );
// Add support for custom header
add_theme_support( 'custom-header' );
// Remove Header Text Color Option from Customizer
define( 'NO_HEADER_TEXT', true );
// This theme supports the following post formats.
add_theme_support( 'post-formats', array( 'gallery', 'link', 'quote', 'audio', 'video', 'image', 'status' ) );
// Register WordPress Custom Menus
register_nav_menu( 'main-menu', __( 'Main Menu', 'liveblog' ) );
// Register Post Thumbnails
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 150, 150, true );
add_image_size( 'liveblog-featured', 723, 334, true );
add_image_size( 'liveblog-slider', 1170, 470, true );
add_image_size( 'liveblog-featured390', 390, 210, true );
add_image_size( 'liveblog-related', 240, 185, true );
add_image_size( 'liveblog-widgetthumb', 90, 90, true );
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'search-form', 'comment-form', 'comment-list', 'gallery', 'caption'
) );
// Load Localization Files
$lang_dir = get_template_directory() . '/lang';
load_theme_textdomain('liveblog', $lang_dir);
/*
* This theme styles the visual editor to resemble the theme style,
* specifically font, colors, icons, and column width.
*/
add_editor_style( array( 'assets/css/editor-style.css' ) );
}
endif;
add_action( 'after_setup_theme', 'liveblog_theme_setup' );
/*-----------------------------------------------------------------------------------*/
/* Stylesheets and Scripts
/*-----------------------------------------------------------------------------------*/
function liveblog_stylesheets_scripts() {
/*-----------------------------------------------------------------------------------*/
/* Add Stylesheets
/*-----------------------------------------------------------------------------------*/
// Default Stylesheet
wp_enqueue_style( 'liveblog-style', get_stylesheet_uri() );
// Font-Awesome CSS
wp_register_style( 'liveblog-font-awesome', get_template_directory_uri() . '/assets/css/font-awesome.min.css' );
wp_enqueue_style( 'liveblog-font-awesome' );
if ( get_theme_mod( 'responsive_layout', '1' ) ) {
// Responsive
wp_register_style( 'liveblog-responsive', get_template_directory_uri() . '/assets/css/responsive.css' );
wp_enqueue_style( 'liveblog-responsive' );
}
/*-----------------------------------------------------------------------------------*/
/* Add JavaScripts
/*-----------------------------------------------------------------------------------*/
if ( is_singular() ) wp_enqueue_script( 'comment-reply' );
// Sticky Menu
$liveblog_sticky_menu = get_theme_mod( 'sticky_menu' );
if ( $liveblog_sticky_menu == 'enable' ) {
wp_register_script( 'liveblog-stickymenu', get_template_directory_uri() . '/assets/js/stickymenu.js', array( 'jquery' ), '1.0', true );
wp_enqueue_script( 'liveblog-stickymenu' );
}
// Masonry
$liveblog_masonry_array = array(
'clayout',
'gslayout',
'sglayout',
'glayout',
);
if(in_array(get_theme_mod('main_layout'),$liveblog_masonry_array) || in_array(get_theme_mod('archive_layout'),$liveblog_masonry_array)) {
wp_enqueue_script( 'masonry' );
wp_register_script( 'liveblog-imagesLoaded', get_template_directory_uri() . '/assets/js/imagesLoaded.js', array( 'jquery' ), '3.1.4', true );
wp_enqueue_script( 'liveblog-imagesLoaded' );
}
// Required jQuery Scripts
wp_register_script( 'liveblog-theme-scripts', get_template_directory_uri() . '/assets/js/theme-scripts.js', array( 'jquery' ), '1.0', true );
wp_enqueue_script( 'liveblog-theme-scripts' );
}
add_action( 'wp_enqueue_scripts', 'liveblog_stylesheets_scripts' );
/*-----------------------------------------------------------------------------------*/
/* Add Admin Scripts
/*-----------------------------------------------------------------------------------*/
function liveblog_admin_scripts() {
if ( is_customize_preview() ) {
wp_register_style( 'liveblog-admin-css', get_template_directory_uri() . '/assets/css/admin-styles.css' );
wp_enqueue_style( 'liveblog-admin-css' );
}
}
add_action( 'admin_enqueue_scripts', 'liveblog_admin_scripts' );
/*-----------------------------------------------------------------------------------*/
/* Load Widgets
/*-----------------------------------------------------------------------------------*/
// Theme Functions
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-ad300.php"; // 300x250 Ad Widget
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-ad125.php"; // 125x125 Ad Widget
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-popular-posts.php"; // Popular Posts
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-cat-posts.php"; // Category Posts
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-random-posts.php"; // Random Posts
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-recent-posts.php"; // Recent Posts
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-social.php"; // Social Widget
include trailingslashit( get_template_directory() ) . "inc/widgets/widget-tabs.php"; // Tabs Widget
/*-----------------------------------------------------------------------------------*/
/* Exceprt Length
/*-----------------------------------------------------------------------------------*/
// Limit the Length of Excerpt
function liveblog_excerpt_length( $length ) {
if ( get_theme_mod( 'liveblog_excerpt_length' ) ) {
$excerpt_length = get_theme_mod( 'liveblog_excerpt_length', '40' );
} else {
$excerpt_length = '40';
}
return intval($excerpt_length);
}
add_filter( 'excerpt_length', 'liveblog_excerpt_length', 999 );
function liveblog_excerpt($limit) {
$excerpt = explode(' ', get_the_excerpt(), $limit);
if (count($excerpt)>=$limit) {
array_pop($excerpt);
$excerpt = implode(" ",$excerpt).'...';
} else {
$excerpt = implode(" ",$excerpt);
}
$excerpt = preg_replace('`[[^]]*]`','',$excerpt);
return $excerpt;
}
// Remove […] string
function liveblog_excerpt_more( $more ) {
return '';
}
add_filter('excerpt_more', 'liveblog_excerpt_more');
/*-----------------------------------------------------------------------------------*/
/* Register Theme Widgets
/*-----------------------------------------------------------------------------------*/
function liveblog_widgets_init() {
register_sidebar(array(
'name' => __('Primary Sidebar', 'liveblog'),
'id' => 'sidebar-1',
'before_widget' => '',
'before_title' => '',
));
if ( get_theme_mod( 'footer_layout','f4c' ) == 'f4c' ) {
$liveblog_sidebars = array( 1, 2, 3, 4 );
foreach( $liveblog_sidebars as $number ) {
register_sidebar( array(
'name' => sprintf( __( 'Footer %s','liveblog' ), $number ),
'id' => 'footer-' . $number,
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
}
} elseif (get_theme_mod( 'footer_layout') == 'f3c' ) {
$liveblog_sidebars = array(1, 2, 3);
foreach( $liveblog_sidebars as $number ) {
register_sidebar( array(
'name' => sprintf( __( 'Footer %s','liveblog' ), $number ),
'id' => 'footer-' . $number,
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
}
} elseif (get_theme_mod( 'footer_layout') == 'f2c' ) {
$liveblog_sidebars = array(1, 2);
foreach( $liveblog_sidebars as $number) {
register_sidebar( array(
'name' => sprintf( __( 'Footer %s','liveblog' ), $number ),
'id' => 'footer-' . $number,
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
}
} else {
register_sidebar( array(
'name' => __('Footer', 'liveblog'),
'id' => 'footer-1',
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
}
}
add_action( 'widgets_init', 'liveblog_widgets_init' );
/*-----------------------------------------------------------------------------------*/
/* Breadcrumb
/*-----------------------------------------------------------------------------------*/
function liveblog_breadcrumb() {
if (!is_home()) {
echo ' ';
echo __( 'Home','liveblog' );
echo "";
if (is_category() || is_single()) {
echo " / ";
the_category(' • ');
if (is_single()) {
echo " / ";
the_title();
}
} elseif (is_page()) {
echo " / ";
echo the_title();
}
}
}
/*-----------------------------------------------------------------------------------*/
/* Comments Callback
/*-----------------------------------------------------------------------------------*/
function liveblog_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;
extract($args, EXTR_SKIP);
?>
id="comment-">