62 lines
2.1 KiB
PHP
62 lines
2.1 KiB
PHP
<?php
|
|
/**
|
|
* Scripts and stylesheets
|
|
*
|
|
* Enqueue stylesheets in the following order:
|
|
* 1. /theme/assets/css/main.min.css
|
|
*
|
|
* Enqueue scripts in the following order:
|
|
* 1. jquery-1.9.1.min.js via Google CDN
|
|
* 2. /theme/assets/js/vendor/modernizr-2.6.2.min.js
|
|
* 3. /theme/assets/js/scripts.min.js
|
|
*/
|
|
|
|
function roots_scripts() {
|
|
wp_enqueue_style('roots_main', get_template_directory_uri() . '/assets/css/main.min.css', false, '78911fc28d7ea4e9571fa2f37ad1bfd2');
|
|
|
|
// Load style.css from child theme
|
|
if (is_child_theme()) {
|
|
wp_enqueue_style('roots_child', get_stylesheet_uri(), false, null);
|
|
}
|
|
|
|
// jQuery is loaded using the same method from HTML5 Boilerplate:
|
|
// Grab Google CDN's latest jQuery with a protocol relative URL; fallback to local if offline
|
|
// It's kept in the header instead of footer to avoid conflicts with plugins.
|
|
if (!is_admin()) {
|
|
wp_deregister_script('jquery');
|
|
wp_register_script('jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js', false, null, false);
|
|
}
|
|
|
|
if (is_single() && comments_open() && get_option('thread_comments')) {
|
|
wp_enqueue_script('comment-reply');
|
|
}
|
|
|
|
wp_register_script('modernizr', get_template_directory_uri() . '/assets/js/vendor/modernizr-2.6.2.min.js', false, null, false);
|
|
wp_register_script('roots_scripts', get_template_directory_uri() . '/assets/js/scripts.min.js', false, 'c40d165aabf0bf4734675f9fc726f3e6', true);
|
|
wp_enqueue_script('modernizr');
|
|
wp_enqueue_script('jquery');
|
|
wp_enqueue_script('roots_scripts');
|
|
}
|
|
|
|
add_action('wp_enqueue_scripts', 'roots_scripts', 100);
|
|
|
|
// http://wordpress.stackexchange.com/a/12450
|
|
function roots_jquery_local_fallback($src, $handle) {
|
|
static $add_jquery_fallback = false;
|
|
|
|
if ($add_jquery_fallback) {
|
|
echo '<script>window.jQuery || document.write(\'<script src="' . get_template_directory_uri() . '/assets/js/vendor/jquery-1.9.1.min.js"><\/script>\')</script>' . "\n";
|
|
$add_jquery_fallback = false;
|
|
}
|
|
|
|
if ($handle === 'jquery') {
|
|
$add_jquery_fallback = true;
|
|
}
|
|
|
|
return $src;
|
|
}
|
|
|
|
if (!is_admin()) {
|
|
add_filter('script_loader_src', 'roots_jquery_local_fallback', 10, 2);
|
|
}
|