diff -r 490d5cc509ed -r cf61fcea0001 wp/wp-content/themes/twentytwelve/functions.php
--- a/wp/wp-content/themes/twentytwelve/functions.php Tue Jun 09 11:14:17 2015 +0000
+++ b/wp/wp-content/themes/twentytwelve/functions.php Mon Oct 14 17:39:30 2019 +0200
@@ -23,8 +23,9 @@
*/
// Set up the content width value based on the theme's design and stylesheet.
-if ( ! isset( $content_width ) )
+if ( ! isset( $content_width ) ) {
$content_width = 625;
+}
/**
* Twenty Twelve setup.
@@ -35,7 +36,7 @@
* @uses load_theme_textdomain() For translation/localization support.
* @uses add_editor_style() To add a Visual Editor stylesheet.
* @uses add_theme_support() To add support for post thumbnails, automatic feed links,
- * custom background, and post formats.
+ * custom background, and post formats.
* @uses register_nav_menu() To add support for navigation menus.
* @uses set_post_thumbnail_size() To set a custom post thumbnail size.
*
@@ -45,11 +46,11 @@
/*
* Makes Twenty Twelve available for translation.
*
- * Translations can be added to the /languages/ directory.
+ * Translations can be filed at WordPress.org. See: https://translate.wordpress.org/projects/wp-themes/twentytwelve
* If you're building a theme based on Twenty Twelve, use a find and replace
* to change 'twentytwelve' to the name of your theme in all the template files.
*/
- load_theme_textdomain( 'twentytwelve', get_template_directory() . '/languages' );
+ load_theme_textdomain( 'twentytwelve' );
// This theme styles the visual editor with editor-style.css to match the theme style.
add_editor_style();
@@ -67,13 +68,18 @@
* This theme supports custom background color and image,
* and here we also set up the default background color.
*/
- add_theme_support( 'custom-background', array(
- 'default-color' => 'e6e6e6',
- ) );
+ add_theme_support(
+ 'custom-background', array(
+ 'default-color' => 'e6e6e6',
+ )
+ );
// This theme uses a custom image size for featured images, displayed on "standard" posts.
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 624, 9999 ); // Unlimited height, soft crop
+
+ // Indicate widget sidebars can use selective refresh in the Customizer.
+ add_theme_support( 'customize-selective-refresh-widgets' );
}
add_action( 'after_setup_theme', 'twentytwelve_setup' );
@@ -106,26 +112,26 @@
*/
$subset = _x( 'no-subset', 'Open Sans font: add new subset (greek, cyrillic, vietnamese)', 'twentytwelve' );
- if ( 'cyrillic' == $subset )
+ if ( 'cyrillic' == $subset ) {
$subsets .= ',cyrillic,cyrillic-ext';
- elseif ( 'greek' == $subset )
+ } elseif ( 'greek' == $subset ) {
$subsets .= ',greek,greek-ext';
- elseif ( 'vietnamese' == $subset )
+ } elseif ( 'vietnamese' == $subset ) {
$subsets .= ',vietnamese';
+ }
- $protocol = is_ssl() ? 'https' : 'http';
$query_args = array(
'family' => 'Open+Sans:400italic,700italic,400,700',
'subset' => $subsets,
);
- $font_url = add_query_arg( $query_args, "$protocol://fonts.googleapis.com/css" );
+ $font_url = add_query_arg( $query_args, 'https://fonts.googleapis.com/css' );
}
return $font_url;
}
/**
- * Enqueue scripts and styles for front-end.
+ * Enqueue scripts and styles for front end.
*
* @since Twenty Twelve 1.0
*/
@@ -136,15 +142,17 @@
* Adds JavaScript to pages with the comment form to support
* sites with threaded comments (when in use).
*/
- if ( is_singular() && comments_open() && get_option( 'thread_comments' ) )
+ if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
+ }
// Adds JavaScript for handling the navigation menu hide-and-show behavior.
wp_enqueue_script( 'twentytwelve-navigation', get_template_directory_uri() . '/js/navigation.js', array( 'jquery' ), '20140711', true );
$font_url = twentytwelve_get_font_url();
- if ( ! empty( $font_url ) )
+ if ( ! empty( $font_url ) ) {
wp_enqueue_style( 'twentytwelve-fonts', esc_url_raw( $font_url ), array(), null );
+ }
// Loads our main stylesheet.
wp_enqueue_style( 'twentytwelve-style', get_stylesheet_uri() );
@@ -156,6 +164,31 @@
add_action( 'wp_enqueue_scripts', 'twentytwelve_scripts_styles' );
/**
+ * Add preconnect for Google Fonts.
+ *
+ * @since Twenty Twelve 2.2
+ *
+ * @param array $urls URLs to print for resource hints.
+ * @param string $relation_type The relation type the URLs are printed.
+ * @return array URLs to print for resource hints.
+ */
+function twentytwelve_resource_hints( $urls, $relation_type ) {
+ if ( wp_style_is( 'twentytwelve-fonts', 'queue' ) && 'preconnect' === $relation_type ) {
+ if ( version_compare( $GLOBALS['wp_version'], '4.7-alpha', '>=' ) ) {
+ $urls[] = array(
+ 'href' => 'https://fonts.gstatic.com',
+ 'crossorigin',
+ );
+ } else {
+ $urls[] = 'https://fonts.gstatic.com';
+ }
+ }
+
+ return $urls;
+}
+add_filter( 'wp_resource_hints', 'twentytwelve_resource_hints', 10, 2 );
+
+/**
* Filter TinyMCE CSS path to include Google Fonts.
*
* Adds additional stylesheets to the TinyMCE editor if needed.
@@ -170,11 +203,13 @@
function twentytwelve_mce_css( $mce_css ) {
$font_url = twentytwelve_get_font_url();
- if ( empty( $font_url ) )
+ if ( empty( $font_url ) ) {
return $mce_css;
+ }
- if ( ! empty( $mce_css ) )
+ if ( ! empty( $mce_css ) ) {
$mce_css .= ',';
+ }
$mce_css .= esc_url_raw( str_replace( ',', '%2C', $font_url ) );
@@ -197,20 +232,23 @@
function twentytwelve_wp_title( $title, $sep ) {
global $paged, $page;
- if ( is_feed() )
+ if ( is_feed() ) {
return $title;
+ }
// Add the site name.
$title .= get_bloginfo( 'name', 'display' );
// Add the site description for the home/front page.
$site_description = get_bloginfo( 'description', 'display' );
- if ( $site_description && ( is_home() || is_front_page() ) )
+ if ( $site_description && ( is_home() || is_front_page() ) ) {
$title = "$title $sep $site_description";
+ }
// Add a page number if necessary.
- if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() )
+ if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() ) {
$title = "$title $sep " . sprintf( __( 'Page %s', 'twentytwelve' ), max( $paged, $page ) );
+ }
return $title;
}
@@ -224,8 +262,9 @@
* @since Twenty Twelve 1.0
*/
function twentytwelve_page_menu_args( $args ) {
- if ( ! isset( $args['show_home'] ) )
+ if ( ! isset( $args['show_home'] ) ) {
$args['show_home'] = true;
+ }
return $args;
}
add_filter( 'wp_page_menu_args', 'twentytwelve_page_menu_args' );
@@ -238,168 +277,190 @@
* @since Twenty Twelve 1.0
*/
function twentytwelve_widgets_init() {
- register_sidebar( array(
- 'name' => __( 'Main Sidebar', 'twentytwelve' ),
- 'id' => 'sidebar-1',
- 'description' => __( 'Appears on posts and pages except the optional Front Page template, which has its own widgets', 'twentytwelve' ),
- 'before_widget' => '',
- 'before_title' => '
',
- 'after_title' => '
',
- ) );
+ register_sidebar(
+ array(
+ 'name' => __( 'Main Sidebar', 'twentytwelve' ),
+ 'id' => 'sidebar-1',
+ 'description' => __( 'Appears on posts and pages except the optional Front Page template, which has its own widgets', 'twentytwelve' ),
+ 'before_widget' => '',
+ 'before_title' => '
',
+ 'after_title' => '
',
+ )
+ );
- register_sidebar( array(
- 'name' => __( 'First Front Page Widget Area', 'twentytwelve' ),
- 'id' => 'sidebar-2',
- 'description' => __( 'Appears when using the optional Front Page template with a page set as Static Front Page', 'twentytwelve' ),
- 'before_widget' => '',
- 'before_title' => '
',
- 'after_title' => '
',
- ) );
+ register_sidebar(
+ array(
+ 'name' => __( 'First Front Page Widget Area', 'twentytwelve' ),
+ 'id' => 'sidebar-2',
+ 'description' => __( 'Appears when using the optional Front Page template with a page set as Static Front Page', 'twentytwelve' ),
+ 'before_widget' => '',
+ 'before_title' => '
',
+ 'after_title' => '
',
+ )
+ );
- register_sidebar( array(
- 'name' => __( 'Second Front Page Widget Area', 'twentytwelve' ),
- 'id' => 'sidebar-3',
- 'description' => __( 'Appears when using the optional Front Page template with a page set as Static Front Page', 'twentytwelve' ),
- 'before_widget' => '',
- 'before_title' => '
',
- 'after_title' => '
',
- ) );
+ register_sidebar(
+ array(
+ 'name' => __( 'Second Front Page Widget Area', 'twentytwelve' ),
+ 'id' => 'sidebar-3',
+ 'description' => __( 'Appears when using the optional Front Page template with a page set as Static Front Page', 'twentytwelve' ),
+ 'before_widget' => '',
+ 'before_title' => '
',
+ 'after_title' => '
',
+ )
+ );
}
add_action( 'widgets_init', 'twentytwelve_widgets_init' );
if ( ! function_exists( 'twentytwelve_content_nav' ) ) :
-/**
- * Displays navigation to next/previous pages when applicable.
- *
- * @since Twenty Twelve 1.0
- */
-function twentytwelve_content_nav( $html_id ) {
- global $wp_query;
+ /**
+ * Displays navigation to next/previous pages when applicable.
+ *
+ * @since Twenty Twelve 1.0
+ */
+ function twentytwelve_content_nav( $html_id ) {
+ global $wp_query;
- if ( $wp_query->max_num_pages > 1 ) : ?>
-
- max_num_pages > 1 ) : ?>
+
+ comment_type ) :
- case 'pingback' :
- case 'trackback' :
- // Display trackbacks differently than normal comments.
- ?>
-
id="comment-">
+ /**
+ * Template for comments and pingbacks.
+ *
+ * To override this walker in a child theme without modifying the comments template
+ * simply create your own twentytwelve_comment(), and that function will be used instead.
+ *
+ * Used as a callback by wp_list_comments() for displaying the comments.
+ *
+ * @since Twenty Twelve 1.0
+ */
+ function twentytwelve_comment( $comment, $args, $depth ) {
+ $GLOBALS['comment'] = $comment;
+ switch ( $comment->comment_type ) :
+ case 'pingback':
+ case 'trackback':
+ // Display trackbacks differently than normal comments.
+ ?>
+
id="comment-">
', '' ); ?>
-
id="li-comment-">
+ break;
+ default:
+ // Proceed with normal comments.
+ global $post;
+ ?>
+
id="li-comment-">
%1$s %2$s',
+ printf(
+ '%1$s %2$s',
get_comment_author_link(),
// If current post author is also comment author, make it known visually.
( $comment->user_id === $post->post_author ) ? '' . __( 'Post author', 'twentytwelve' ) . '' : ''
);
- printf( '',
+ printf(
+ '',
esc_url( get_comment_link( $comment->comment_ID ) ),
get_comment_time( 'c' ),
/* translators: 1: date, 2: time */
sprintf( __( '%1$s at %2$s', 'twentytwelve' ), get_comment_date(), get_comment_time() )
);
- ?>
-
+ ?>
+
- comment_approved ) : ?>
+ comment_approved ) : ?>
-
+
', '' ); ?>
-
+
-