tag in the document head, and expect WordPress to
* provide it for us.
*/
add_theme_support( 'title-tag' );
/*
* Enable support for Post Thumbnails on posts and pages.
*
* @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/
*/
add_theme_support( 'post-thumbnails' );
// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => esc_html__( 'Primary Menu', 'easymag' ),
'top-bar-menu' => esc_html__( 'Top-bar Menu', 'easymag' ),
) );
/*
* 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',
) );
/*
* Enable support for Post Formats.
* See https://developer.wordpress.org/themes/functionality/post-formats/
*/
add_theme_support( 'post-formats', array(
'aside',
'image',
'video',
'quote',
'link',
) );
// Set up the WordPress core custom background feature.
add_theme_support( 'custom-background', apply_filters( 'easymag_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
/**
* Add editor style
*/
add_editor_style( 'css/custom-editor-style.css' );
}
endif; // easymag_setup
add_action( 'after_setup_theme', 'easymag_setup' );
/**
* Set the content width in pixels, based on the theme's design and stylesheet.
*
* Priority 0 to make it available to lower priority callbacks.
*
* @global int $content_width
*/
function easymag_content_width() {
$GLOBALS['content_width'] = apply_filters( 'easymag_content_width', 640 );
}
add_action( 'after_setup_theme', 'easymag_content_width', 0 );
/**
* Enqueue scripts and styles.
*/
function easymag_scripts() {
// Enqueue Bootstrap Grid
wp_enqueue_style( 'bootstrap', get_template_directory_uri() . '/css/bootstrap.min.css', array(), '3.3.5', '' );
// Enqueue FontAwesome
wp_enqueue_style( 'font-awesome', get_template_directory_uri() . '/css/font-awesome.min.css', array(), '4.4.0', '' );
// Enqueue Swiper.css
wp_enqueue_style( 'swiper', get_template_directory_uri() . '/css/swiper.min.css', array(), '3.2.5', '' );
// Enqueue Google fonts
wp_enqueue_style( 'easymag-roboto', '//fonts.googleapis.com/css?family=Roboto:400,300,500,700,900' );
// Stylesheet
wp_enqueue_style( 'easymag-style', get_stylesheet_uri() );
// Enqueue Swiper
wp_enqueue_script( 'swiper', get_template_directory_uri() . '/js/swiper.jquery.min.js', array( 'jquery' ), '3.2.5', '' );
//News Ticker
wp_enqueue_script( 'newsticker', get_template_directory_uri() . '/js/jquery.newsticker.min.js', array( 'jquery' ), '', true );
// Custom JS
wp_enqueue_script( 'easymag-custom', get_template_directory_uri() . '/js/custom.js', array( 'jquery' ), '', true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
add_action( 'wp_enqueue_scripts', 'easymag_scripts' );
/**
* Implement the Custom Header feature.
*/
require get_template_directory() . '/inc/custom-header.php';
/**
* Custom template tags for this theme.
*/
require get_template_directory() . '/inc/template-tags.php';
/**
* Custom functions that act independently of the theme templates.
*/
require get_template_directory() . '/inc/extras.php';
/**
* Customizer additions.
*/
require get_template_directory() . '/inc/customizer.php';
/**
* Load Widgets file
*/
require get_template_directory() . '/inc/widgets/widgets.php';
/**
* Limit Content
*/
function easymag_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;
}
function easymag_content( $limit ) {
$content = explode( ' ', get_the_content(), $limit );
if ( count( $content ) >= $limit ) {
array_pop( $content );
$content = implode( " ", $content ).'...';
} else {
$content = implode( " ",$content );
}
$content = preg_replace( '/\[.+\]/','', $content );
$content = apply_filters( 'the_content', $content );
$content = str_replace( ']]>', ']]>', $content );
return $content;
}
/**
* Convert hexdec color string to rgb(a) string
*/
function easymag_hex2rgba( $color, $opacity = false ) {
$default = 'rgb(0,0,0)';
//Return default if no color provided
if( empty( $color ) )
return $default;
//Sanitize $color if "#" is provided
if ( $color[0] == '#' ) {
$color = substr( $color, 1 );
}
//Check if color has 6 or 3 characters and get values
if ( strlen( $color ) == 6 ) {
$hex = array( $color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5] );
} elseif ( strlen( $color ) == 3 ) {
$hex = array( $color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2] );
} else {
return $default;
}
//Convert hexadec to rgb
$rgb = array_map( 'hexdec', $hex );
//Check if opacity is set(rgba or rgb)
if( $opacity ){
if( abs( $opacity ) > 1 )
$opacity = 1.0;
$output = 'rgba( '.implode( ",",$rgb ).','.$opacity.' )';
} else {
$output = 'rgb( '.implode( ",",$rgb ).' )';
}
//Return rgb(a) color string
return $output;
}
/**
* Get First Image from Post
*/
function easymag_post_img( $num ) {
global $more;
$more = 1;
$link = esc_url( get_permalink() );
$content = esc_attr( get_the_content() );
$count = substr_count( $content, '' );
$postOutput = substr( $post, 0, $imgEnd+1 );
$postOutput = preg_replace( '/width="([0-9]*)" height="([0-9]*)"/', '', $postOutput );
$image[$i] = $postOutput;
$start = $imgEnd+1;
}
if( $count!='' ) {
if( stristr( $image[$num],''.$image[$num].""; }
$more = 0;
} else {
//display default static image
echo '';
}
}