2012-01-07 03:25:13 +00:00
|
|
|
<?php
|
|
|
|
/**
|
2016-09-27 06:21:19 +00:00
|
|
|
* _s functions and definitions
|
2015-07-01 15:21:44 +00:00
|
|
|
*
|
2015-08-22 03:19:26 +00:00
|
|
|
* @link https://developer.wordpress.org/themes/basics/theme-functions/
|
2012-01-07 03:25:13 +00:00
|
|
|
*
|
|
|
|
* @package _s
|
|
|
|
*/
|
|
|
|
|
2020-04-05 20:49:27 +00:00
|
|
|
if ( ! defined( '_S_VERSION' ) ) {
|
2020-04-06 21:26:57 +00:00
|
|
|
// Replace the version number of the theme on each release.
|
|
|
|
define( '_S_VERSION', '1.0.0' );
|
2020-04-05 20:49:27 +00:00
|
|
|
}
|
|
|
|
|
2012-11-03 22:02:36 +00:00
|
|
|
if ( ! function_exists( '_s_setup' ) ) :
|
2017-06-28 01:27:25 +00:00
|
|
|
/**
|
|
|
|
* Sets up theme defaults and registers support for various WordPress features.
|
|
|
|
*
|
|
|
|
* Note that this function is hooked into the after_setup_theme hook, which
|
|
|
|
* runs before the init hook. The init hook is too late for some features, such
|
|
|
|
* as indicating support for post thumbnails.
|
2012-01-07 03:25:13 +00:00
|
|
|
*/
|
2017-06-28 01:27:25 +00:00
|
|
|
function _s_setup() {
|
|
|
|
/*
|
|
|
|
* Make theme available for translation.
|
|
|
|
* Translations can be filed in the /languages/ directory.
|
|
|
|
* If you're building a theme based on _s, use a find and replace
|
|
|
|
* to change '_s' to the name of your theme in all the template files.
|
|
|
|
*/
|
|
|
|
load_theme_textdomain( '_s', get_template_directory() . '/languages' );
|
2012-01-07 03:25:13 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
// Add default posts and comments RSS feed links to head.
|
|
|
|
add_theme_support( 'automatic-feed-links' );
|
2012-01-07 03:25:13 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
/*
|
|
|
|
* Let WordPress manage the document title.
|
|
|
|
* By adding theme support, we declare that this theme does not use a
|
|
|
|
* hard-coded <title> tag in the document head, and expect WordPress to
|
|
|
|
* provide it for us.
|
|
|
|
*/
|
|
|
|
add_theme_support( 'title-tag' );
|
2014-11-11 14:41:10 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
/*
|
|
|
|
* 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' );
|
2012-03-20 11:39:41 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
// This theme uses wp_nav_menu() in one location.
|
2020-04-05 20:49:27 +00:00
|
|
|
register_nav_menus(
|
|
|
|
array(
|
|
|
|
'menu-1' => esc_html__( 'Primary', '_s' ),
|
|
|
|
)
|
|
|
|
);
|
2014-08-17 16:40:13 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
/*
|
|
|
|
* Switch default core markup for search form, comment form, and comments
|
|
|
|
* to output valid HTML5.
|
|
|
|
*/
|
2020-04-05 20:49:27 +00:00
|
|
|
add_theme_support(
|
|
|
|
'html5',
|
|
|
|
array(
|
|
|
|
'search-form',
|
|
|
|
'comment-form',
|
|
|
|
'comment-list',
|
|
|
|
'gallery',
|
|
|
|
'caption',
|
|
|
|
)
|
|
|
|
);
|
2012-01-07 03:25:13 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
// Set up the WordPress core custom background feature.
|
2020-04-05 20:49:27 +00:00
|
|
|
add_theme_support(
|
|
|
|
'custom-background',
|
|
|
|
apply_filters(
|
|
|
|
'_s_custom_background_args',
|
|
|
|
array(
|
|
|
|
'default-color' => 'ffffff',
|
|
|
|
'default-image' => '',
|
|
|
|
)
|
|
|
|
)
|
|
|
|
);
|
2016-11-26 16:42:28 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
// Add theme support for selective refresh for widgets.
|
|
|
|
add_theme_support( 'customize-selective-refresh-widgets' );
|
2017-06-26 22:47:12 +00:00
|
|
|
|
2017-06-28 01:27:25 +00:00
|
|
|
/**
|
|
|
|
* Add support for core custom logo.
|
|
|
|
*
|
|
|
|
* @link https://codex.wordpress.org/Theme_Logo
|
|
|
|
*/
|
2020-04-05 20:49:27 +00:00
|
|
|
add_theme_support(
|
|
|
|
'custom-logo',
|
|
|
|
array(
|
|
|
|
'height' => 250,
|
|
|
|
'width' => 250,
|
|
|
|
'flex-width' => true,
|
|
|
|
'flex-height' => true,
|
|
|
|
)
|
|
|
|
);
|
2017-06-28 01:27:25 +00:00
|
|
|
}
|
2015-12-15 02:05:14 +00:00
|
|
|
endif;
|
2013-06-27 14:14:12 +00:00
|
|
|
add_action( 'after_setup_theme', '_s_setup' );
|
2013-02-03 06:11:57 +00:00
|
|
|
|
2015-04-25 06:47:20 +00:00
|
|
|
/**
|
|
|
|
* 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 _s_content_width() {
|
2018-02-27 13:14:41 +00:00
|
|
|
// This variable is intended to be overruled from themes.
|
|
|
|
// Open WPCS issue: {@link https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/issues/1043}.
|
|
|
|
// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound
|
2015-04-25 06:47:20 +00:00
|
|
|
$GLOBALS['content_width'] = apply_filters( '_s_content_width', 640 );
|
|
|
|
}
|
|
|
|
add_action( 'after_setup_theme', '_s_content_width', 0 );
|
|
|
|
|
2012-01-07 03:25:13 +00:00
|
|
|
/**
|
2014-04-11 02:03:23 +00:00
|
|
|
* Register widget area.
|
|
|
|
*
|
2015-06-29 19:18:47 +00:00
|
|
|
* @link https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar
|
2012-01-07 03:25:13 +00:00
|
|
|
*/
|
|
|
|
function _s_widgets_init() {
|
2020-04-05 20:49:27 +00:00
|
|
|
register_sidebar(
|
|
|
|
array(
|
|
|
|
'name' => esc_html__( 'Sidebar', '_s' ),
|
|
|
|
'id' => 'sidebar-1',
|
|
|
|
'description' => esc_html__( 'Add widgets here.', '_s' ),
|
|
|
|
'before_widget' => '<section id="%1$s" class="widget %2$s">',
|
|
|
|
'after_widget' => '</section>',
|
|
|
|
'before_title' => '<h2 class="widget-title">',
|
|
|
|
'after_title' => '</h2>',
|
|
|
|
)
|
|
|
|
);
|
2012-01-07 03:25:13 +00:00
|
|
|
}
|
2012-02-13 16:03:39 +00:00
|
|
|
add_action( 'widgets_init', '_s_widgets_init' );
|
2012-02-06 16:40:54 +00:00
|
|
|
|
|
|
|
/**
|
2013-11-07 19:41:41 +00:00
|
|
|
* Enqueue scripts and styles.
|
2012-02-06 16:40:54 +00:00
|
|
|
*/
|
|
|
|
function _s_scripts() {
|
2020-04-05 20:49:27 +00:00
|
|
|
wp_enqueue_style( '_s-style', get_stylesheet_uri(), array(), _S_VERSION );
|
2020-04-11 21:23:54 +00:00
|
|
|
wp_style_add_data( '_s-style', 'rtl', 'replace' );
|
2012-02-14 16:55:40 +00:00
|
|
|
|
2020-04-05 20:49:27 +00:00
|
|
|
wp_enqueue_script( '_s-navigation', get_template_directory_uri() . '/js/navigation.js', array(), _S_VERSION, true );
|
2012-02-14 16:10:45 +00:00
|
|
|
|
2020-04-05 20:49:27 +00:00
|
|
|
wp_enqueue_script( '_s-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), _S_VERSION, true );
|
2013-01-22 00:01:53 +00:00
|
|
|
|
2013-11-14 12:49:50 +00:00
|
|
|
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
|
2012-02-14 16:10:45 +00:00
|
|
|
wp_enqueue_script( 'comment-reply' );
|
2013-11-14 12:49:50 +00:00
|
|
|
}
|
2012-02-06 16:40:54 +00:00
|
|
|
}
|
|
|
|
add_action( 'wp_enqueue_scripts', '_s_scripts' );
|
2012-02-10 20:36:53 +00:00
|
|
|
|
|
|
|
/**
|
2013-05-20 14:07:25 +00:00
|
|
|
* Implement the Custom Header feature.
|
2012-02-10 20:36:53 +00:00
|
|
|
*/
|
2015-05-27 17:49:01 +00:00
|
|
|
require get_template_directory() . '/inc/custom-header.php';
|
2013-05-20 14:07:25 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Custom template tags for this theme.
|
|
|
|
*/
|
2013-05-25 10:35:51 +00:00
|
|
|
require get_template_directory() . '/inc/template-tags.php';
|
2013-05-20 14:07:25 +00:00
|
|
|
|
|
|
|
/**
|
2017-06-30 21:05:45 +00:00
|
|
|
* Functions which enhance the theme by hooking into WordPress.
|
2013-05-20 14:07:25 +00:00
|
|
|
*/
|
2017-06-09 18:37:13 +00:00
|
|
|
require get_template_directory() . '/inc/template-functions.php';
|
2013-05-20 14:07:25 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Customizer additions.
|
|
|
|
*/
|
2013-05-25 10:35:51 +00:00
|
|
|
require get_template_directory() . '/inc/customizer.php';
|
2013-05-20 14:07:25 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Load Jetpack compatibility file.
|
|
|
|
*/
|
2017-07-14 16:37:12 +00:00
|
|
|
if ( defined( 'JETPACK__VERSION' ) ) {
|
|
|
|
require get_template_directory() . '/inc/jetpack.php';
|
|
|
|
}
|
2017-08-01 13:21:13 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Load WooCommerce compatibility file.
|
|
|
|
*/
|
|
|
|
if ( class_exists( 'WooCommerce' ) ) {
|
|
|
|
require get_template_directory() . '/inc/woocommerce.php';
|
2017-08-01 14:42:22 +00:00
|
|
|
}
|