300,
'width' => 300,
'flex-height' => true,
'flex-width' => true,
) );
/*
* Enable support for custom menus.
*/
register_nav_menus( array(
'main-menu' => esc_html__( 'Main Menu', 'profile-lite' ),
'social-menu' => esc_html__( 'Social Menu', 'profile-lite' ),
));
/*
* Enable support for custom header.
*/
register_default_headers( array(
'default' => array(
'url' => get_template_directory_uri() . '/images/default-header.jpg',
'thumbnail_url' => get_template_directory_uri() . '/images/default-header.jpg',
'description' => esc_html__( 'Default Custom Header', 'profile-lite' ),
),
));
$defaults = array(
'video' => true,
'width' => 2400,
'height' => 1600,
'flex-height' => true,
'flex-width' => true,
'default-image' => get_template_directory_uri() . '/images/default-header.jpg',
'header-text' => false,
'uploads' => true,
);
add_theme_support( 'custom-header', $defaults );
/*
* Enable support for custom background.
*/
$defaults = array(
'default-color' => 'f9f9f9',
);
add_theme_support( 'custom-background', $defaults );
}
endif; // End function profile_lite_setup.
add_action( 'after_setup_theme', 'profile_lite_setup' );
/*
-------------------------------------------------------------------------------------------------------
Register Scripts
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_enqueue_scripts' ) ) {
/** Function profile_lite_enqueue_scripts */
function profile_lite_enqueue_scripts() {
// Enqueue Styles.
wp_enqueue_style( 'profile-lite-style', get_stylesheet_uri(), '', '1.0' );
wp_enqueue_style( 'profile-lite-style-conditionals', get_template_directory_uri() . '/css/style-conditionals.css', array( 'profile-lite-style' ), '1.0' );
wp_enqueue_style( 'profile-lite-style-mobile', get_template_directory_uri() . '/css/style-mobile.css', array( 'profile-lite-style' ), '1.0' );
wp_enqueue_style( 'font-awesome', get_template_directory_uri() . '/css/font-awesome.css', array( 'profile-lite-style' ), '1.0' );
// Resgister Scripts.
wp_register_script( 'jquery-sidr', get_template_directory_uri() . '/js/jquery.sidr.js', array( 'jquery' ), '1.0', true );
wp_register_script( 'jquery-fitvids', get_template_directory_uri() . '/js/jquery.fitvids.js', array( 'jquery' ), '1.0', true );
wp_register_script( 'jquery-brightness', get_template_directory_uri() . '/js/jquery.bgBrightness.js', array( 'jquery' ), '1.0', true );
// Enqueue Scripts.
wp_enqueue_script( 'profile-lite-custom', get_template_directory_uri() . '/js/jquery.custom.js', array( 'jquery', 'jquery-sidr', 'jquery-fitvids', 'jquery-brightness' ), '1.0', true );
// Load single scripts only on single pages.
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
}
add_action( 'wp_enqueue_scripts', 'profile_lite_enqueue_scripts' );
/*
-------------------------------------------------------------------------------------------------------
Gutenberg Editor Styles
-------------------------------------------------------------------------------------------------------
*/
/**
* Enqueue WordPress theme styles within Gutenberg.
*/
function profile_lite_gutenberg_styles() {
// Load the theme styles within Gutenberg.
wp_enqueue_style(
'profile-lite-gutenberg',
get_theme_file_uri( '/css/gutenberg.css' ),
false,
'1.0',
'all'
);
}
add_action( 'enqueue_block_editor_assets', 'profile_lite_gutenberg_styles' );
/*
-------------------------------------------------------------------------------------------------------
Admin Support and Upgrade Link
-------------------------------------------------------------------------------------------------------
*/
function profile_lite_support_link() {
global $submenu;
$support_link = esc_url( 'https://organicthemes.com/support/' );
$submenu['themes.php'][] = array( __( 'Theme Support', 'profile-lite' ), 'manage_options', $support_link );
}
add_action( 'admin_menu', 'profile_lite_support_link' );
function profile_lite_upgrade_link() {
global $submenu;
$upgrade_link = esc_url( 'https://organicthemes.com/theme/profile-theme/?utm_source=lite_upgrade' );
$submenu['themes.php'][] = array( __( 'Theme Upgrade', 'profile-lite' ), 'manage_options', $upgrade_link );
}
add_action( 'admin_menu', 'profile_lite_upgrade_link' );
/*
-------------------------------------------------------------------------------------------------------
Admin Notice
-------------------------------------------------------------------------------------------------------
*/
/** Function profile_lite_admin_notice */
function profile_lite_admin_notice() {
if ( ! PAnD::is_admin_notice_active( 'notice-profile-lite-forever' ) ) {
return;
}
?>
Organic Themes. For instructions please refer to our theme setup guide . Upgrade to premium version for more options and support.', 'profile-lite' ), 'https://organicthemes.com/themes/', 'https://organicthemes.com/profile-lite-free-personal-theme/', 'https://organicthemes.com/theme/profile-theme/' ); ?>
cat_name;
}
endif;
/*
-------------------------------------------------------------------------------------------------------
Register Sidebars
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_widgets_init' ) ) :
/** Function profile_lite_widgets_init */
function profile_lite_widgets_init() {
register_sidebar( array(
'name' => esc_html__( 'Default Sidebar', 'profile-lite' ),
'id' => 'sidebar-1',
'before_widget' => '',
'before_title' => '',
));
if ( class_exists( 'Organic_Widgets_Pro' ) || class_exists( 'Organic_Widgets' ) ) {
register_sidebar(array(
'name' => esc_html__( 'Home Page Widgets', 'profile-lite' ),
'id' => 'home-widgets',
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
register_sidebar(array(
'name' => esc_html__( 'Footer Widgets', 'profile-lite' ),
'id' => 'footer-widgets',
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
));
}
}
endif;
add_action( 'widgets_init', 'profile_lite_widgets_init' );
/*
-------------------------------------------------------------------------------------------------------
Posted On Function
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_posted_on' ) ) :
/** Function profile_lite_posted_on */
function profile_lite_posted_on() {
$time_string = '%2$s ';
if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) {
$time_string = '%2$s %4$s ';
}
$time_string = sprintf( $time_string,
esc_attr( get_the_date( DATE_W3C ) ),
esc_html( get_the_date() ),
esc_attr( get_the_modified_date( DATE_W3C ) ),
esc_html( get_the_modified_date() )
);
$posted_on = sprintf(
/* translators: %s: post date. */
esc_html_x( 'Posted: %s', 'post date', 'profile-lite' ),
'' . $time_string . ' '
);
echo '' . $posted_on . ' '; // WPCS: XSS OK.
}
endif;
/*
------------------------------------------------------------------------------------------------------
Content Width
------------------------------------------------------------------------------------------------------
*/
if ( ! isset( $content_width ) ) {
$content_width = 760;
}
if ( ! function_exists( 'profile_lite_content_width' ) ) :
/** Function profile_lite_content_width */
function profile_lite_content_width() {
$GLOBALS['content_width'] = apply_filters( 'profile_lite_content_width', 760 );
}
endif;
add_action( 'after_setup_theme', 'profile_lite_content_width', 0 );
/*
-------------------------------------------------------------------------------------------------------
Comments Function
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_comment' ) ) :
/**
* Setup our comments for the theme.
*
* @param array $comment IDs for categories.
* @param array $args Comment arguments.
* @param array $depth Level of replies.
*/
function profile_lite_comment( $comment, $args, $depth ) {
switch ( $comment->comment_type ) :
case 'pingback':
case 'trackback':
?>
', '' ); ?>
id="">
%2$s ',
esc_url( get_permalink( get_the_ID() ) ),
/* translators: %s: Name of current post */
sprintf( __( 'Continue reading "%s" ', 'profile-lite' ), get_the_title( get_the_ID() ) )
);
return ' … ' . $link;
}
add_filter( 'excerpt_more', 'profile_lite_excerpt_more' );
/**
* Adds line break before Read More tag.
*
* @since Profile Lite 1.0
*
* @param string $more_link The anchor for rendering the more tag.
* @param string $more_link_text The text for the more tag.
*/
function profile_lite_more_link( $more_link, $more_link_text ) {
return '' . $more_link_text . '
';
}
add_filter( 'the_content_more_link', 'profile_lite_more_link', 10, 2 );
/*
-------------------------------------------------------------------------------------------------------
Add Excerpt To Pages
-------------------------------------------------------------------------------------------------------
*/
/**
* Add excerpt to pages.
*/
function profile_lite_page_excerpts() {
add_post_type_support( 'page', 'excerpt' );
}
add_action( 'init', 'profile_lite_page_excerpts' );
/*
-------------------------------------------------------------------------------------------------------
Custom Page Links
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_wp_link_pages_args_prevnext_add' ) ) :
/**
* Adds custom page links to pages.
*
* @param array $args for page links.
* @return array
*/
function profile_lite_wp_link_pages_args_prevnext_add( $args ) {
global $page, $numpages, $more, $pagenow;
if ( 'next_and_number' != $args['next_or_number'] ) {
return $args; }
$args['next_or_number'] = 'number'; // Keep numbering for the main part.
if ( ! $more ) {
return $args; }
if ( $page - 1 ) { // There is a previous page.
$args['before'] .= _wp_link_page( $page - 1 )
. $args['link_before'] . $args['previouspagelink'] . $args['link_after'] . ''; }
if ( $page < $numpages ) { // There is a next page.
$args['after'] = _wp_link_page( $page + 1 )
. $args['link_before'] . $args['nextpagelink'] . $args['link_after'] . ''
. $args['after']; }
return $args;
}
endif;
add_filter( 'wp_link_pages_args', 'profile_lite_wp_link_pages_args_prevnext_add' );
/*
-------------------------------------------------------------------------------------------------------
Body Class
-------------------------------------------------------------------------------------------------------
*/
if ( ! function_exists( 'profile_lite_body_class' ) ) :
/**
* Adds custom classes to the array of body classes.
*
* @param array $classes Classes for the body element.
* @return array
*/
function profile_lite_body_class( $classes ) {
$header_image = get_header_image();
$post_pages = is_home() || is_archive() || is_search() || is_attachment();
if ( function_exists( 'the_custom_logo' ) && has_custom_logo() ) {
$classes[] = 'profile-has-logo'; }
if ( is_page_template( 'template-slideshow.php' ) ) {
$classes[] = 'profile-slideshow'; }
if ( 'blank' != get_theme_mod( 'profile_lite_site_tagline' ) ) {
$classes[] = 'profile-desc-active';
} else {
$classes[] = 'profile-desc-inactive';
}
if ( has_nav_menu( 'social-menu' ) ) {
$classes[] = 'profile-has-social-menu';
} else {
$classes[] = 'profile-no-social-menu';
}
if ( is_singular() && ! has_post_thumbnail() || is_home() && ! has_custom_header() || is_archive() && ! has_custom_header() ) {
$classes[] = 'profile-no-img'; }
if ( is_singular() && has_post_thumbnail() ) {
$classes[] = 'profile-has-img'; }
if ( $post_pages && ! empty( $header_image ) || is_page() && ! has_post_thumbnail() && ! empty( $header_image ) || is_single() && ! has_post_thumbnail() && ! empty( $header_image ) ) {
$classes[] = 'profile-header-active';
} else {
$classes[] = 'profile-header-inactive';
}
if ( is_header_video_active() && has_header_video() ) {
$classes[] = 'profile-header-video-active';
} else {
$classes[] = 'profile-header-video-inactive';
}
if ( is_singular() ) {
$classes[] = 'profile-singular';
}
if ( is_active_sidebar( 'sidebar-1' ) ) {
$classes[] = 'profile-sidebar-1';
}
if ( is_active_sidebar( 'sidebar-1' ) && ! is_page_template( 'template-full.php' ) && ! is_page_template( 'template-home.php' ) ) {
$classes[] = 'profile-sidebar-active';
} else {
$classes[] = 'profile-sidebar-inactive';
}
if ( '' != get_theme_mod( 'background_image' ) ) {
// This class will render when a background image is set
// regardless of whether the user has set a color as well.
$classes[] = 'profile-background-image';
} else if ( ! in_array( get_background_color(), array( '', get_theme_support( 'custom-background', 'default-color' ) ), true ) ) {
// This class will render when a background color is set
// but no image is set. In the case the content text will
// Adjust relative to the background color.
$classes[] = 'profile-relative-text';
}
return $classes;
}
endif;
add_action( 'body_class', 'profile_lite_body_class' );
/*
-------------------------------------------------------------------------------------------------------
Includes
-------------------------------------------------------------------------------------------------------
*/
require_once( get_template_directory() . '/customizer/customizer.php' );
require_once( get_template_directory() . '/includes/style-options.php' );
require_once( get_template_directory() . '/includes/typefaces.php' );
require_once( get_template_directory() . '/includes/plugin-activation.php' );
require_once( get_template_directory() . '/includes/plugin-activation-class.php' );
require_once( get_template_directory() . '/includes/aria-walker-nav-menu.php' );