did some sniff sniff

This commit is contained in:
2025-07-14 21:47:29 -07:00
parent c6bb1b7c7b
commit 0e9321b01a
44 changed files with 2557 additions and 2259 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
vendor
composer.lock

View File

@@ -44,11 +44,13 @@ get_header();
<?php <?php
// Archive pagination // Archive pagination
the_posts_pagination( array( the_posts_pagination(
array(
'prev_text' => __( 'Previous', 'sophia-after-dark' ), 'prev_text' => __( 'Previous', 'sophia-after-dark' ),
'next_text' => __( 'Next', 'sophia-after-dark' ), 'next_text' => __( 'Next', 'sophia-after-dark' ),
'before_page_number' => '<span class="screen-reader-text">' . esc_html__( 'Page', 'sophia-after-dark' ) . ' </span>', 'before_page_number' => '<span class="screen-reader-text">' . esc_html__( 'Page', 'sophia-after-dark' ) . ' </span>',
) ); )
);
?> ?>
<?php else : ?> <?php else : ?>

View File

@@ -99,11 +99,13 @@ add_action('comment_form', 'sophia_after_dark_modify_text_comment_form');
<ol class="comment-list"> <ol class="comment-list">
<?php <?php
wp_list_comments( array( wp_list_comments(
array(
'style' => 'ol', 'style' => 'ol',
'short_ping' => true, 'short_ping' => true,
'reply_text' => __( 'Reply', 'sophia-after-dark' ), 'reply_text' => __( 'Reply', 'sophia-after-dark' ),
) ); )
);
?> ?>
</ol> </ol>

13
composer.json Normal file
View File

@@ -0,0 +1,13 @@
{
"require-dev": {
"squizlabs/php_codesniffer": "^3.13",
"wp-coding-standards/wpcs": "^3.1",
"phpcsstandards/phpcsutils": "^1.1",
"dealerdirect/phpcodesniffer-composer-installer": "^1.1"
},
"config": {
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true
}
}
}

View File

@@ -49,23 +49,28 @@ if ( ! function_exists( 'sophia_after_dark_setup' ) ) :
add_image_size( 'sophia-after-dark-slider-post', 1200, 700, true ); add_image_size( 'sophia-after-dark-slider-post', 1200, 700, true );
// This theme uses wp_nav_menu() in one location. // This theme uses wp_nav_menu() in one location.
register_nav_menus( array( register_nav_menus(
array(
'top_header_menu' => esc_html__( 'Top Header', 'sophia-after-dark' ), 'top_header_menu' => esc_html__( 'Top Header', 'sophia-after-dark' ),
'primary_menu' => esc_html__( 'Primary', 'sophia-after-dark' ), 'primary_menu' => esc_html__( 'Primary', 'sophia-after-dark' ),
'footer_menu' => esc_html__( 'Footer', 'sophia-after-dark' ), 'footer_menu' => esc_html__( 'Footer', 'sophia-after-dark' ),
) ); )
);
/* /*
* Switch default core markup for search form, comment form, and comments * Switch default core markup for search form, comment form, and comments
* to output valid HTML5. * to output valid HTML5.
*/ */
add_theme_support( 'html5', array( add_theme_support(
'html5',
array(
'search-form', 'search-form',
'comment-form', 'comment-form',
'comment-list', 'comment-list',
'gallery', 'gallery',
'caption', 'caption',
) ); )
);
// Set up the WordPress core custom background feature. // Set up the WordPress core custom background feature.
// Disabled in V1.4.3 // Disabled in V1.4.3
@@ -82,12 +87,15 @@ if ( ! function_exists( 'sophia_after_dark_setup' ) ) :
* *
* @link https://codex.wordpress.org/Theme_Logo * @link https://codex.wordpress.org/Theme_Logo
*/ */
add_theme_support( 'custom-logo', array( add_theme_support(
'custom-logo',
array(
'height' => 250, 'height' => 250,
'width' => 250, 'width' => 250,
'flex-width' => true, 'flex-width' => true,
'flex-height' => true, 'flex-height' => true,
) ); )
);
/** /**
* Registers an editor stylesheet for the theme. * Registers an editor stylesheet for the theme.
@@ -135,7 +143,6 @@ add_action( 'after_setup_theme', 'sophia_after_dark_theme_version_info', 0 );
/** /**
* Function for displaying menu item description * Function for displaying menu item description
*
*/ */
function sophia_after_dark_nav_description( $item_output, $item, $depth, $menu_args ) { function sophia_after_dark_nav_description( $item_output, $item, $depth, $menu_args ) {
if ( ! empty( $item->description ) ) { if ( ! empty( $item->description ) ) {
@@ -204,7 +211,10 @@ if ( ! function_exists( 'breadcrumb_trail' ) ) {
function allow_images_in_comments( $comment_content ) { function allow_images_in_comments( $comment_content ) {
// Allow only specific HTML tags, including <img> // Allow only specific HTML tags, including <img>
$allowed_tags = array( $allowed_tags = array(
'a' => array('href' => array(), 'title' => array()), 'a' => array(
'href' => array(),
'title' => array(),
),
'em' => array(), 'em' => array(),
'strong' => array(), 'strong' => array(),
'img' => array( 'img' => array(

View File

@@ -4,7 +4,6 @@
* *
* You can add an optional custom header image to header.php like so ... * You can add an optional custom header image to header.php like so ...
* *
*
* @link https://developer.wordpress.org/themes/functionality/custom-headers/ * @link https://developer.wordpress.org/themes/functionality/custom-headers/
* *
* @package Sophia After Dark * @package Sophia After Dark
@@ -18,7 +17,11 @@
* @uses sophia_after_dark_header_style() * @uses sophia_after_dark_header_style()
*/ */
function sophia_after_dark_custom_header_setup() { function sophia_after_dark_custom_header_setup() {
add_theme_support( 'custom-header', apply_filters( 'sophia_after_dark_custom_header_args', array( add_theme_support(
'custom-header',
apply_filters(
'sophia_after_dark_custom_header_args',
array(
'default-image' => '', 'default-image' => '',
'default-text-color' => '000000', 'default-text-color' => '000000',
'width' => 1000, 'width' => 1000,
@@ -26,7 +29,9 @@ function sophia_after_dark_custom_header_setup() {
'flex-height' => true, 'flex-height' => true,
'flex-width' => true, 'flex-width' => true,
'wp-head-callback' => 'sophia_after_dark_header_style', 'wp-head-callback' => 'sophia_after_dark_header_style',
) ) ); )
)
);
} }
add_action( 'after_setup_theme', 'sophia_after_dark_custom_header_setup' ); add_action( 'after_setup_theme', 'sophia_after_dark_custom_header_setup' );

View File

@@ -8,7 +8,6 @@
add_action( 'customize_register', 'sophia_after_dark_customize_additinal_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_additinal_panels_sections_register' );
/** /**
* Add Additional panels in the theme customize * Add Additional panels in the theme customize
*
*/ */
function sophia_after_dark_customize_additinal_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_additinal_panels_sections_register( $wp_customize ) {
@@ -16,7 +15,8 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
/** /**
* Social Icons * Social Icons
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_social_icons', $wp_customize->add_section(
'sophia_after_dark_section_social_icons',
array( array(
'title' => esc_html__( 'Social Icons', 'sophia-after-dark' ), 'title' => esc_html__( 'Social Icons', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_additional_panel', 'panel' => 'sophia_after_dark_additional_panel',
@@ -33,7 +33,8 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
'sophia_after_dark_social_icons', 'sophia_after_dark_social_icons',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => json_encode( array( 'default' => json_encode(
array(
array( array(
'social_icon' => 'fa fa-twitter', 'social_icon' => 'fa fa-twitter',
'social_url' => '#', 'social_url' => '#',
@@ -41,13 +42,14 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
array( array(
'social_icon' => 'fa fa-pinterest', 'social_icon' => 'fa fa-pinterest',
'social_url' => '#', 'social_url' => '#',
) ),
) )
), ),
'sanitize_callback' => 'wp_kses_post' 'sanitize_callback' => 'wp_kses_post',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Repeater( $wp_customize->add_control(
new Sophia_After_Dark_Control_Repeater(
$wp_customize, $wp_customize,
'sophia_after_dark_social_icons', 'sophia_after_dark_social_icons',
array( array(
@@ -56,28 +58,30 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
'settings' => 'sophia_after_dark_social_icons', 'settings' => 'sophia_after_dark_social_icons',
'priority' => 5, 'priority' => 5,
'sophia_after_dark_box_label_text' => __( 'Social Media Icons', 'sophia-after-dark' ), 'sophia_after_dark_box_label_text' => __( 'Social Media Icons', 'sophia-after-dark' ),
'sophia_after_dark_box_add_control_text' => __( 'Add Icon','sophia-after-dark' ) 'sophia_after_dark_box_add_control_text' => __( 'Add Icon', 'sophia-after-dark' ),
), ),
array( array(
'social_icon' => array( 'social_icon' => array(
'type' => 'social_icon', 'type' => 'social_icon',
'label' => esc_html__( 'Social Icon', 'sophia-after-dark' ), 'label' => esc_html__( 'Social Icon', 'sophia-after-dark' ),
'description' => __( 'Choose social media icon.', 'sophia-after-dark' ) 'description' => __( 'Choose social media icon.', 'sophia-after-dark' ),
), ),
'social_url' => array( 'social_url' => array(
'type' => 'url', 'type' => 'url',
'label' => esc_html__( 'Social Link URL', 'sophia-after-dark' ), 'label' => esc_html__( 'Social Link URL', 'sophia-after-dark' ),
'description' => __( 'Enter social media url.', 'sophia-after-dark' ) 'description' => __( 'Enter social media url.', 'sophia-after-dark' ),
), ),
) )
) )
); );
/*------------------------------------------------ Breadcrumbs Section ------------------------------------------------* /*
------------------------------------------------ Breadcrumbs Section ------------------------------------------------*
/** /**
* Breadcrumbs * Breadcrumbs
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_breadcrumbs', $wp_customize->add_section(
'sophia_after_dark_section_breadcrumbs',
array( array(
'title' => esc_html__( 'Breadcrumbs', 'sophia-after-dark' ), 'title' => esc_html__( 'Breadcrumbs', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_additional_panel', 'panel' => 'sophia_after_dark_additional_panel',
@@ -89,18 +93,20 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
/** /**
* Toggle field for Enable/Disable breadcrumbs. * Toggle field for Enable/Disable breadcrumbs.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_breadcrumb_option', $wp_customize->add_setting(
'sophia_after_dark_enable_breadcrumb_option',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_breadcrumb_option', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_breadcrumb_option',
array( array(
'label' => __( 'Enable Breadcrumbs', 'sophia-after-dark' ), 'label' => __( 'Enable Breadcrumbs', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_breadcrumbs', 'section' => 'sophia_after_dark_section_breadcrumbs',
@@ -109,5 +115,4 @@ function sophia_after_dark_customize_additinal_panels_sections_register( $wp_cus
) )
) )
); );
} }

View File

@@ -290,8 +290,7 @@ if ( ! function_exists( 'sophia_after_dark_register_custom_controls' ) ) :
case 'select': case 'select':
$options = $field['options']; $options = $field['options'];
echo '<select data-default="' . esc_attr( $default ) . '" data-name="' . esc_attr( $key ) . '">'; echo '<select data-default="' . esc_attr( $default ) . '" data-name="' . esc_attr( $key ) . '">';
foreach ( $options as $option => $val ) foreach ( $options as $option => $val ) {
{
printf( '<option value="%1$s" %2$s>%3$s</option>', esc_attr( $option ), selected( $new_value, $option, false ), esc_html( $val ) ); printf( '<option value="%1$s" %2$s>%3$s</option>', esc_attr( $option ), selected( $new_value, $option, false ), esc_html( $val ) );
} }
echo '</select>'; echo '</select>';
@@ -310,7 +309,7 @@ if ( ! function_exists( 'sophia_after_dark_register_custom_controls' ) ) :
'echo' => '', 'echo' => '',
'show_option_none' => esc_html( $show_option_none ), 'show_option_none' => esc_html( $show_option_none ),
'option_none_value' => esc_attr( $option_none_value ), 'option_none_value' => esc_attr( $option_none_value ),
'selected' => esc_attr( $new_value ) 'selected' => esc_attr( $new_value ),
) )
); );
@@ -329,7 +328,7 @@ if ( ! function_exists( 'sophia_after_dark_register_custom_controls' ) ) :
* Upload field * Upload field
*/ */
case 'upload': case 'upload':
$image_class = ""; $image_class = '';
$upload_btn_label = esc_html__( 'Select Image', 'sophia-after-dark' ); $upload_btn_label = esc_html__( 'Select Image', 'sophia-after-dark' );
$remove_btn_label = esc_html__( 'Remove', 'sophia-after-dark' ); $remove_btn_label = esc_html__( 'Remove', 'sophia-after-dark' );
if ( $new_value ) { if ( $new_value ) {
@@ -349,8 +348,8 @@ if ( ! function_exists( 'sophia_after_dark_register_custom_controls' ) ) :
?> ?>
<div class="sad-clearfix sad-repeater-footer"> <div class="sad-clearfix sad-repeater-footer">
<div class="alignright"> <div class="alignright">
<a class="sad-repeater-field-remove" href="#remove"><?php esc_html_e( 'Delete', 'sophia-after-dark' ) ?></a> | <a class="sad-repeater-field-remove" href="#remove"><?php esc_html_e( 'Delete', 'sophia-after-dark' ); ?></a> |
<a class="sad-repeater-field-close" href="#close"><?php esc_html_e( 'Close', 'sophia-after-dark' ) ?></a> <a class="sad-repeater-field-close" href="#close"><?php esc_html_e( 'Close', 'sophia-after-dark' ); ?></a>
</div> </div>
</div> </div>
</div> </div>
@@ -361,7 +360,7 @@ if ( ! function_exists( 'sophia_after_dark_register_custom_controls' ) ) :
} }
} }
} }
}// Ends sophia_after_dark_register_custom_controls }//end sophia_after_dark_register_custom_controls()
endif; endif;
/*-----------------------------------------------------------------------------------------------------------------------------------------------------------*/ /*-----------------------------------------------------------------------------------------------------------------------------------------------------------*/

View File

@@ -9,15 +9,14 @@
add_action( 'customize_register', 'sophia_after_dark_customize_design_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_design_panels_sections_register' );
/** /**
* Add Additional panels in the theme customizer * Add Additional panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_design_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_design_panels_sections_register( $wp_customize ) {
/*------------------------------------------------ Archive Section ------------------------------------------------------------*/ /*------------------------------------------------ Archive Section ------------------------------------------------------------*/
/** /**
* Archive Settings * Archive Settings
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_archive_settings', $wp_customize->add_section(
'sophia_after_dark_section_archive_settings',
array( array(
'title' => esc_html__( 'Archive Settings', 'sophia-after-dark' ), 'title' => esc_html__( 'Archive Settings', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_design_panel', 'panel' => 'sophia_after_dark_design_panel',
@@ -30,14 +29,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Radio Image field for archive/blog sidebar layout. * Radio Image field for archive/blog sidebar layout.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_archive_sidebar_layout', $wp_customize->add_setting(
'sophia_after_dark_archive_sidebar_layout',
array( array(
'default' => 'no-sidebar', 'default' => 'no-sidebar',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_archive_sidebar_layout', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_archive_sidebar_layout',
array( array(
'label' => esc_html__( 'Archive/Blog Sidebar Layout', 'sophia-after-dark' ), 'label' => esc_html__( 'Archive/Blog Sidebar Layout', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_archive_settings', 'section' => 'sophia_after_dark_section_archive_settings',
@@ -47,7 +49,7 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png', 'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png',
'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png', 'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png',
'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png', 'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png',
'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png' 'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png',
), ),
) )
) )
@@ -56,14 +58,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Radio Image field for arvhive/blog style. * Radio Image field for arvhive/blog style.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_archive_style', $wp_customize->add_setting(
'sophia_after_dark_archive_style',
array( array(
'default' => 'sad-archive--masonry-style', 'default' => 'sad-archive--masonry-style',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_archive_style', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_archive_style',
array( array(
'label' => esc_html__( 'Archive/Blog Style', 'sophia-after-dark' ), 'label' => esc_html__( 'Archive/Blog Style', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_archive_settings', 'section' => 'sophia_after_dark_section_archive_settings',
@@ -80,15 +85,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Text field for archive read more button. * Text field for archive read more button.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_archive_read_more', $wp_customize->add_setting(
'sophia_after_dark_archive_read_more',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'Discover', 'sophia-after-dark' ), 'default' => esc_html__( 'Discover', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_archive_read_more', $wp_customize->add_control(
'sophia_after_dark_archive_read_more',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Read More Button', 'sophia-after-dark' ), 'label' => esc_html__( 'Read More Button', 'sophia-after-dark' ),
@@ -100,18 +107,20 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable title prefix at category pages. * Toggle field for Enable/Disable title prefix at category pages.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_archive_title_prefix', $wp_customize->add_setting(
'sophia_after_dark_enable_archive_title_prefix',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_archive_title_prefix', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_archive_title_prefix',
array( array(
'label' => __( 'Enable Title Prefix', 'sophia-after-dark' ), 'label' => __( 'Enable Title Prefix', 'sophia-after-dark' ),
'description' => esc_html__( 'Show/Hide title prefix in archive pages.', 'sophia-after-dark' ), 'description' => esc_html__( 'Show/Hide title prefix in archive pages.', 'sophia-after-dark' ),
@@ -126,7 +135,8 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* Post Settings * Post Settings
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_post_settings', $wp_customize->add_section(
'sophia_after_dark_section_post_settings',
array( array(
'title' => esc_html__( 'Post Settings', 'sophia-after-dark' ), 'title' => esc_html__( 'Post Settings', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_design_panel', 'panel' => 'sophia_after_dark_design_panel',
@@ -138,14 +148,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Radio Image field for single posts sidebar layout. * Radio Image field for single posts sidebar layout.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_posts_sidebar_layout', $wp_customize->add_setting(
'sophia_after_dark_posts_sidebar_layout',
array( array(
'default' => 'right-sidebar', 'default' => 'right-sidebar',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_posts_sidebar_layout', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_posts_sidebar_layout',
array( array(
'label' => esc_html__( 'Posts Sidebar Layout', 'sophia-after-dark' ), 'label' => esc_html__( 'Posts Sidebar Layout', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_post_settings', 'section' => 'sophia_after_dark_section_post_settings',
@@ -155,7 +168,7 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png', 'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png',
'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png', 'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png',
'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png', 'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png',
'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png' 'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png',
), ),
) )
) )
@@ -164,16 +177,19 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Toggle field for Enable/Disable related posts. * Toggle field for Enable/Disable related posts.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_related_posts', $wp_customize->add_setting(
'sophia_after_dark_enable_related_posts',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_related_posts', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_related_posts',
array( array(
'label' => esc_html__( 'Enable Related Posts', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Related Posts', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_post_settings', 'section' => 'sophia_after_dark_section_post_settings',
@@ -187,7 +203,8 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* Page Setting * Page Setting
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_page_settings', $wp_customize->add_section(
'sophia_after_dark_section_page_settings',
array( array(
'title' => esc_html__( 'Page Settings', 'sophia-after-dark' ), 'title' => esc_html__( 'Page Settings', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_design_panel', 'panel' => 'sophia_after_dark_design_panel',
@@ -200,14 +217,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/* /*
* Radio Image field for single page sidebar layout. * Radio Image field for single page sidebar layout.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_pages_sidebar_layout', $wp_customize->add_setting(
'sophia_after_dark_pages_sidebar_layout',
array( array(
'default' => 'right-sidebar', 'default' => 'right-sidebar',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_pages_sidebar_layout', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_pages_sidebar_layout',
array( array(
'label' => esc_html__( 'Pages Sidebar Layout', 'sophia-after-dark' ), 'label' => esc_html__( 'Pages Sidebar Layout', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_page_settings', 'section' => 'sophia_after_dark_section_page_settings',
@@ -217,7 +237,7 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png', 'left-sidebar' => get_template_directory_uri() . '/assets/images/left-sidebar.png',
'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png', 'right-sidebar' => get_template_directory_uri() . '/assets/images/right-sidebar.png',
'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png', 'no-sidebar' => get_template_directory_uri() . '/assets/images/no-sidebar.png',
'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png' 'no-sidebar-center' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png',
), ),
) )
) )
@@ -227,29 +247,33 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* 404 Page Settings * 404 Page Settings
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_pnf_settings', $wp_customize->add_section(
'sophia_after_dark_section_pnf_settings',
array( array(
'priority' => 20, 'priority' => 20,
'panel' => 'sophia_after_dark_design_panel', 'panel' => 'sophia_after_dark_design_panel',
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'theme_supports' => '', 'theme_supports' => '',
'title' => __( '404 Page Settings', 'sophia-after-dark' ) 'title' => __( '404 Page Settings', 'sophia-after-dark' ),
) )
); );
/** /**
* Toggle field for Enable/Disable latest posts section at 404 page * Toggle field for Enable/Disable latest posts section at 404 page
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_pnf_latest_posts', $wp_customize->add_setting(
'sophia_after_dark_enable_pnf_latest_posts',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_pnf_latest_posts', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_pnf_latest_posts',
array( array(
'label' => __( 'Enable Latest Posts', 'sophia-after-dark' ), 'label' => __( 'Enable Latest Posts', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_pnf_settings', 'section' => 'sophia_after_dark_section_pnf_settings',
@@ -262,15 +286,17 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* Text field for latest posts section title * Text field for latest posts section title
*/ */
$wp_customize->add_setting( 'sophia_after_dark_pnf_latest_title', $wp_customize->add_setting(
'sophia_after_dark_pnf_latest_title',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'You May Like', 'sophia-after-dark' ), 'default' => esc_html__( 'You May Like', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_pnf_latest_title', $wp_customize->add_control(
'sophia_after_dark_pnf_latest_title',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Section Title', 'sophia-after-dark' ), 'label' => esc_html__( 'Section Title', 'sophia-after-dark' ),
@@ -283,7 +309,8 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
/** /**
* Text field for latest posts count * Text field for latest posts count
*/ */
$wp_customize->add_setting( 'sophia_after_dark_pnf_latest_post_count', $wp_customize->add_setting(
'sophia_after_dark_pnf_latest_post_count',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => 3, 'default' => 3,
@@ -291,7 +318,8 @@ function sophia_after_dark_customize_design_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( 'sophia_after_dark_pnf_latest_post_count', $wp_customize->add_control(
'sophia_after_dark_pnf_latest_post_count',
array( array(
'type' => 'number', 'type' => 'number',
'label' => esc_html__( 'Post count', 'sophia-after-dark' ), 'label' => esc_html__( 'Post count', 'sophia-after-dark' ),

View File

@@ -9,14 +9,14 @@
add_action( 'customize_register', 'sophia_after_dark_customize_footer_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_footer_panels_sections_register' );
/** /**
* Add Additional panels in the theme customizer * Add Additional panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_footer_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_footer_panels_sections_register( $wp_customize ) {
/*------------------------------------------------------- Footer Widget Area Section --------------------------------------------------------------------------*/ /*------------------------------------------------------- Footer Widget Area Section --------------------------------------------------------------------------*/
/** /**
* Footer Widget Area * Footer Widget Area
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_footer_widget_area', $wp_customize->add_section(
'sophia_after_dark_section_footer_widget_area',
array( array(
'title' => esc_html__( 'Footer Widget Area', 'sophia-after-dark' ), 'title' => esc_html__( 'Footer Widget Area', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_footer_panel', 'panel' => 'sophia_after_dark_footer_panel',
@@ -29,16 +29,19 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable footer widget area. * Toggle field for Enable/Disable footer widget area.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_footer_widget_area', $wp_customize->add_setting(
'sophia_after_dark_enable_footer_widget_area',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_footer_widget_area', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_footer_widget_area',
array( array(
'label' => esc_html__( 'Enable Footer Widget Area', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Footer Widget Area', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_footer_widget_area', 'section' => 'sophia_after_dark_section_footer_widget_area',
@@ -51,14 +54,17 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
/** /**
* Radio Image field for Widget Area layout * Radio Image field for Widget Area layout
*/ */
$wp_customize->add_setting( 'sophia_after_dark_widget_area_layout', $wp_customize->add_setting(
'sophia_after_dark_widget_area_layout',
array( array(
'default' => 'column-three', 'default' => 'column-three',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_widget_area_layout', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_widget_area_layout',
array( array(
'label' => esc_html__( 'Widget Area Layout', 'sophia-after-dark' ), 'label' => esc_html__( 'Widget Area Layout', 'sophia-after-dark' ),
'description' => __( 'Choose widget layout from available layouts', 'sophia-after-dark' ), 'description' => __( 'Choose widget layout from available layouts', 'sophia-after-dark' ),
@@ -70,7 +76,7 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
'column-four' => get_template_directory_uri() . '/assets/images/footer-4.png', 'column-four' => get_template_directory_uri() . '/assets/images/footer-4.png',
'column-three' => get_template_directory_uri() . '/assets/images/footer-3.png', 'column-three' => get_template_directory_uri() . '/assets/images/footer-3.png',
'column-two' => get_template_directory_uri() . '/assets/images/footer-2.png', 'column-two' => get_template_directory_uri() . '/assets/images/footer-2.png',
'column-one' => get_template_directory_uri() . '/assets/images/footer-1.png' 'column-one' => get_template_directory_uri() . '/assets/images/footer-1.png',
), ),
) )
) )
@@ -80,7 +86,8 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
/** /**
* Bottom footer * Bottom footer
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_bottom_footer', $wp_customize->add_section(
'sophia_after_dark_section_bottom_footer',
array( array(
'title' => esc_html__( 'Bottom Footer', 'sophia-after-dark' ), 'title' => esc_html__( 'Bottom Footer', 'sophia-after-dark' ),
'panel' => 'sophia_after_dark_footer_panel', 'panel' => 'sophia_after_dark_footer_panel',
@@ -93,16 +100,19 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable footer menu. * Toggle field for Enable/Disable footer menu.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_footer_menu', $wp_customize->add_setting(
'sophia_after_dark_enable_footer_menu',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_footer_menu', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_footer_menu',
array( array(
'label' => esc_html__( 'Enable Footer Menu', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Footer Menu', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_bottom_footer', 'section' => 'sophia_after_dark_section_bottom_footer',
@@ -112,19 +122,20 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
) )
); );
/** /**
* Text filed for copyright * Text filed for copyright
*/ */
$wp_customize->add_setting( 'sophia_after_dark_footer_copyright', $wp_customize->add_setting(
'sophia_after_dark_footer_copyright',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( '&copy;1969 Sophia After Dark', 'sophia-after-dark' ), 'default' => esc_html__( '&copy;1969 Sophia After Dark', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_footer_copyright', $wp_customize->add_control(
'sophia_after_dark_footer_copyright',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Copyright Text', 'sophia-after-dark' ), 'label' => esc_html__( 'Copyright Text', 'sophia-after-dark' ),
@@ -136,15 +147,17 @@ function sophia_after_dark_customize_footer_panels_sections_register( $wp_custom
/** /**
* Text filed for disclaimer * Text filed for disclaimer
*/ */
$wp_customize->add_setting( 'sophia_after_dark_footer_disclaimer', $wp_customize->add_setting(
'sophia_after_dark_footer_disclaimer',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'All Trademarks are property of their respective owners', 'sophia-after-dark' ), 'default' => esc_html__( 'All Trademarks are property of their respective owners', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_footer_disclaimer', $wp_customize->add_control(
'sophia_after_dark_footer_disclaimer',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Disclaimer Text', 'sophia-after-dark' ), 'label' => esc_html__( 'Disclaimer Text', 'sophia-after-dark' ),

View File

@@ -9,7 +9,6 @@
add_action( 'customize_register', 'sophia_after_dark_customize_slider_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_slider_panels_sections_register' );
/** /**
* Add panels in the theme customizer * Add panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_slider_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_slider_panels_sections_register( $wp_customize ) {
@@ -17,30 +16,33 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Slider Settings * Slider Settings
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_slider', $wp_customize->add_section(
'sophia_after_dark_section_slider',
array( array(
'priority' => 10, 'priority' => 10,
'panel' => 'sophia_after_dark_front_section_panel', 'panel' => 'sophia_after_dark_front_section_panel',
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'theme_supports' => '', 'theme_supports' => '',
'title' => __( 'Slider Settings', 'sophia-after-dark' ) 'title' => __( 'Slider Settings', 'sophia-after-dark' ),
) )
); );
/** /**
* Toggle field for slider option * Toggle field for slider option
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_section_slider_option', $wp_customize->add_setting(
'sophia_after_dark_section_slider_option',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => false, 'default' => false,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_section_slider_option', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_section_slider_option',
array( array(
'label' => __( 'Enable Slider Section', 'sophia-after-dark' ), 'label' => __( 'Enable Slider Section', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_slider', 'section' => 'sophia_after_dark_section_slider',
@@ -52,9 +54,9 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Select field for slider cat select * Select field for slider cat select
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_section_slider_cat', $wp_customize->add_setting(
'sophia_after_dark_section_slider_cat',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => '', 'default' => '',
@@ -62,7 +64,8 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( 'sophia_after_dark_section_slider_cat', $wp_customize->add_control(
'sophia_after_dark_section_slider_cat',
array( array(
'type' => 'select', 'type' => 'select',
'label' => esc_html__( 'Slider category', 'sophia-after-dark' ), 'label' => esc_html__( 'Slider category', 'sophia-after-dark' ),
@@ -78,7 +81,8 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Image field for background image in slider section * Image field for background image in slider section
*/ */
$wp_customize->add_setting( 'sophia_after_dark_slider_bg_image', $wp_customize->add_setting(
'sophia_after_dark_slider_bg_image',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => '', 'default' => '',
@@ -86,14 +90,16 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_slider_bg_image', new WP_Customize_Image_Control(
$wp_customize,
'sophia_after_dark_slider_bg_image',
array( array(
'label' => __( 'Slider Section Background Image', 'sophia-after-dark' ), 'label' => __( 'Slider Section Background Image', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_slider', 'section' => 'sophia_after_dark_section_slider',
'settings' => 'sophia_after_dark_slider_bg_image', 'settings' => 'sophia_after_dark_slider_bg_image',
'priority' => 40, 'priority' => 40,
'active_callback' => 'sophia_after_dark_section_slider_option_active_callback' 'active_callback' => 'sophia_after_dark_section_slider_option_active_callback',
) )
) )
); );
@@ -102,7 +108,8 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Featured Slider Settings * Featured Slider Settings
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_top_featured_post', $wp_customize->add_section(
'sophia_after_dark_section_top_featured_post',
array( array(
'priority' => 20, 'priority' => 20,
'panel' => 'sophia_after_dark_front_section_panel', 'panel' => 'sophia_after_dark_front_section_panel',
@@ -114,18 +121,20 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Toggle field for featured slider option * Toggle field for featured slider option
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_section_top_featured_posts_option', $wp_customize->add_setting(
'sophia_after_dark_section_top_featured_posts_option',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_section_top_featured_posts_option', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_section_top_featured_posts_option',
array( array(
'label' => esc_html__( 'Enable Featured Posts Section', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Featured Posts Section', 'sophia-after-dark' ),
'description' => 'This section is displayed after the slider content at the right side minimizing the slider width.', 'description' => 'This section is displayed after the slider content at the right side minimizing the slider width.',
@@ -139,15 +148,17 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Text field for Featured Posts Title * Text field for Featured Posts Title
*/ */
$wp_customize->add_setting( 'sophia_after_dark_top_featured_posts_title', $wp_customize->add_setting(
'sophia_after_dark_top_featured_posts_title',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'Featured News', 'sophia-after-dark' ), 'default' => esc_html__( 'Featured News', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_top_featured_posts_title', $wp_customize->add_control(
'sophia_after_dark_top_featured_posts_title',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Featured News', 'sophia-after-dark' ), 'label' => esc_html__( 'Featured News', 'sophia-after-dark' ),
@@ -160,7 +171,8 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
/** /**
* Select field for featured posts type. * Select field for featured posts type.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_top_featured_post_order', $wp_customize->add_setting(
'sophia_after_dark_top_featured_post_order',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => 'default', 'default' => 'default',
@@ -168,7 +180,8 @@ function sophia_after_dark_customize_slider_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( 'sophia_after_dark_top_featured_post_order', $wp_customize->add_control(
'sophia_after_dark_top_featured_post_order',
array( array(
'type' => 'select', 'type' => 'select',
'label' => esc_html__( 'Featured Post Order', 'sophia-after-dark' ), 'label' => esc_html__( 'Featured Post Order', 'sophia-after-dark' ),

View File

@@ -9,38 +9,40 @@
add_action( 'customize_register', 'sophia_after_dark_customize_general_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_general_panels_sections_register' );
/** /**
* Add panels in the theme customizer * Add panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_general_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_general_panels_sections_register( $wp_customize ) {
/*------------------------------------------- Site Settings Section -----------------------------------------------*/ /*------------------------------------------- Site Settings Section -----------------------------------------------*/
/** /**
* Site Settings Section * Site Settings Section
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_site', $wp_customize->add_section(
'sophia_after_dark_section_site',
array( array(
'priority' => 40, 'priority' => 40,
'panel' => 'sophia_after_dark_general_panel', 'panel' => 'sophia_after_dark_general_panel',
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'theme_supports' => '', 'theme_supports' => '',
'title' => __( 'Site Settings', 'sophia-after-dark' ) 'title' => __( 'Site Settings', 'sophia-after-dark' ),
) )
); );
/** /**
* Toggle field for Enable/Disable wow animation. * Toggle field for Enable/Disable wow animation.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_wow_animation', $wp_customize->add_setting(
'sophia_after_dark_enable_wow_animation',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_wow_animation', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_wow_animation',
array( array(
'label' => __( 'Enable Wow Animation', 'sophia-after-dark' ), 'label' => __( 'Enable Wow Animation', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_site', 'section' => 'sophia_after_dark_section_site',
@@ -49,8 +51,11 @@ function sophia_after_dark_customize_general_panels_sections_register( $wp_custo
) )
) )
); );
$wp_customize->add_control(new WP_Customize_Image_control( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_home_og_image', array( new WP_Customize_Image_control(
$wp_customize,
'sophia_after_dark_home_og_image',
array(
'label' => __( 'Home Page Open Graph Image', 'sophia_after_dark' ), 'label' => __( 'Home Page Open Graph Image', 'sophia_after_dark' ),
'section' => 'sophia_after_dark_section_site', 'section' => 'sophia_after_dark_section_site',
'settings' => 'sophia_after_dark_home_og_image', 'settings' => 'sophia_after_dark_home_og_image',
@@ -64,7 +69,9 @@ function sophia_after_dark_customize_general_panels_sections_register( $wp_custo
foreach ( $users as $user ) { foreach ( $users as $user ) {
$user_choices[ $user->ID ] = $user->display_name; $user_choices[ $user->ID ] = $user->display_name;
} }
$wp_customize->add_control('sophia_after_dark_home_og_user', array( $wp_customize->add_control(
'sophia_after_dark_home_og_user',
array(
'label' => __( 'Select User for Open Graph Tags', 'sophia_after_dark' ), 'label' => __( 'Select User for Open Graph Tags', 'sophia_after_dark' ),
'section' => 'sophia_after_dark_section_site', 'section' => 'sophia_after_dark_section_site',
'settings' => 'sophia_after_dark_home_og_user', 'settings' => 'sophia_after_dark_home_og_user',
@@ -78,14 +85,17 @@ function sophia_after_dark_customize_general_panels_sections_register( $wp_custo
* *
* @since 1.0.0 * @since 1.0.0
*/ */
$wp_customize->add_setting( 'sophia_after_dark_site_layout', $wp_customize->add_setting(
'sophia_after_dark_site_layout',
array( array(
'default' => 'site-layout--wide', 'default' => 'site-layout--wide',
'sanitize_callback' => 'sanitize_key', 'sanitize_callback' => 'sanitize_key',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Radio_Image( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_site_layout', new Sophia_After_Dark_Control_Radio_Image(
$wp_customize,
'sophia_after_dark_site_layout',
array( array(
'label' => __( 'Site Layout', 'sophia-after-dark' ), 'label' => __( 'Site Layout', 'sophia-after-dark' ),
'description' => __( 'Choose site layout from available layouts', 'sophia-after-dark' ), 'description' => __( 'Choose site layout from available layouts', 'sophia-after-dark' ),
@@ -94,7 +104,7 @@ function sophia_after_dark_customize_general_panels_sections_register( $wp_custo
'priority' => 25, 'priority' => 25,
'choices' => array( 'choices' => array(
'site-layout--wide' => get_template_directory_uri() . '/assets/images/full-width.png', 'site-layout--wide' => get_template_directory_uri() . '/assets/images/full-width.png',
'site-layout--boxed' => get_template_directory_uri() . '/assets/images/boxed-layout.png' 'site-layout--boxed' => get_template_directory_uri() . '/assets/images/boxed-layout.png',
), ),
) )
) )
@@ -103,16 +113,19 @@ function sophia_after_dark_customize_general_panels_sections_register( $wp_custo
/** /**
* Toggle field for block based widget editor. * Toggle field for block based widget editor.
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_widgets_editor', $wp_customize->add_setting(
'sophia_after_dark_enable_widgets_editor',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => false, 'default' => false,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_widgets_editor', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_widgets_editor',
array( array(
'label' => __( 'Enable Widgets Editor', 'sophia-after-dark' ), 'label' => __( 'Enable Widgets Editor', 'sophia-after-dark' ),
'description' => __( 'Enable/disable Block-based Widgets Editor(since WordPress 5.8).', 'sophia-after-dark' ), 'description' => __( 'Enable/disable Block-based Widgets Editor(since WordPress 5.8).', 'sophia-after-dark' ),

View File

@@ -9,7 +9,6 @@
add_action( 'customize_register', 'sophia_after_dark_customize_header_panels_sections_register' ); add_action( 'customize_register', 'sophia_after_dark_customize_header_panels_sections_register' );
/** /**
* Add panels in the theme customizer * Add panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_header_panels_sections_register( $wp_customize ) { function sophia_after_dark_customize_header_panels_sections_register( $wp_customize ) {
@@ -17,30 +16,33 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Top Header Section * Top Header Section
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_top_header', $wp_customize->add_section(
'sophia_after_dark_section_top_header',
array( array(
'priority' => 10, 'priority' => 10,
'panel' => 'sophia_after_dark_header_panel', 'panel' => 'sophia_after_dark_header_panel',
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'theme_supports' => '', 'theme_supports' => '',
'title' => __( 'Top Header Settings', 'sophia-after-dark' ) 'title' => __( 'Top Header Settings', 'sophia-after-dark' ),
) )
); );
/** /**
* Toggle field for Enable/Disable Top Header section * Toggle field for Enable/Disable Top Header section
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_top_header', $wp_customize->add_setting(
'sophia_after_dark_enable_top_header',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_top_header', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_top_header',
array( array(
'label' => __( 'Enable Top Header', 'sophia-after-dark' ), 'label' => __( 'Enable Top Header', 'sophia-after-dark' ),
'description' => esc_html__( 'Show/Hide top header section.', 'sophia-after-dark' ), 'description' => esc_html__( 'Show/Hide top header section.', 'sophia-after-dark' ),
@@ -53,18 +55,20 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable trending section. * Toggle field for Enable/Disable trending section.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_trending', $wp_customize->add_setting(
'sophia_after_dark_enable_trending',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => false, 'default' => false,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_trending', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_trending',
array( array(
'label' => esc_html__( 'Enable Trending Section', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Trending Section', 'sophia-after-dark' ),
'description' => esc_html__( 'Trending section shows the popular tags.', 'sophia-after-dark' ), 'description' => esc_html__( 'Trending section shows the popular tags.', 'sophia-after-dark' ),
@@ -78,17 +82,18 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* checkox for before icon in tags. * checkox for before icon in tags.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_trending_tag_before_icon', $wp_customize->add_setting(
'sophia_after_dark_enable_trending_tag_before_icon',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_enable_trending_tag_before_icon', $wp_customize->add_control(
'sophia_after_dark_enable_trending_tag_before_icon',
array( array(
'type' => 'checkbox', 'type' => 'checkbox',
'label' => esc_html__( 'Add Icon Before Tag', 'sophia-after-dark' ), 'label' => esc_html__( 'Add Icon Before Tag', 'sophia-after-dark' ),
@@ -101,17 +106,18 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Text field for trending label. * Text field for trending label.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_trending_label', $wp_customize->add_setting(
'sophia_after_dark_trending_label',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'Trending Now', 'sophia-after-dark' ), 'default' => esc_html__( 'Trending Now', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_trending_label', $wp_customize->add_control(
'sophia_after_dark_trending_label',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Trending Label', 'sophia-after-dark' ), 'label' => esc_html__( 'Trending Label', 'sophia-after-dark' ),
@@ -123,9 +129,9 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Select field of trending tags orderby. * Select field of trending tags orderby.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_trending_tags_orderby', $wp_customize->add_setting(
'sophia_after_dark_trending_tags_orderby',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => '', 'default' => '',
@@ -133,7 +139,8 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( 'sophia_after_dark_trending_tags_orderby', $wp_customize->add_control(
'sophia_after_dark_trending_tags_orderby',
array( array(
'type' => 'select', 'type' => 'select',
'label' => esc_html__( 'Tags Orderby', 'sophia-after-dark' ), 'label' => esc_html__( 'Tags Orderby', 'sophia-after-dark' ),
@@ -150,9 +157,9 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Number field of trending tags count. * Number field of trending tags count.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_trending_tags_count', $wp_customize->add_setting(
'sophia_after_dark_trending_tags_count',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => '5', 'default' => '5',
@@ -160,7 +167,8 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
) )
); );
$wp_customize->add_control( 'sophia_after_dark_trending_tags_count', $wp_customize->add_control(
'sophia_after_dark_trending_tags_count',
array( array(
'type' => 'number', 'type' => 'number',
'label' => esc_html__( 'Tags Count', 'sophia-after-dark' ), 'label' => esc_html__( 'Tags Count', 'sophia-after-dark' ),
@@ -172,18 +180,20 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable live now button. * Toggle field for Enable/Disable live now button.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_live_now', $wp_customize->add_setting(
'sophia_after_dark_enable_live_now',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => false, 'default' => false,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_live_now', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_live_now',
array( array(
'label' => esc_html__( 'Enable Live Now Button', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Live Now Button', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_top_header', 'section' => 'sophia_after_dark_section_top_header',
@@ -196,17 +206,18 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Text field for live now button label. * Text field for live now button label.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_live_now_label', $wp_customize->add_setting(
'sophia_after_dark_live_now_label',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => esc_html__( 'Live Now', 'sophia-after-dark' ), 'default' => esc_html__( 'Live Now', 'sophia-after-dark' ),
'sanitize_callback' => 'sanitize_text_field' 'sanitize_callback' => 'sanitize_text_field',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_live_now_label', $wp_customize->add_control(
'sophia_after_dark_live_now_label',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Button Label', 'sophia-after-dark' ), 'label' => esc_html__( 'Button Label', 'sophia-after-dark' ),
@@ -219,16 +230,17 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Text field for live now button link. * Text field for live now button link.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_live_now_link', $wp_customize->add_setting(
'sophia_after_dark_live_now_link',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'sanitize_callback' => 'esc_url_raw' 'sanitize_callback' => 'esc_url_raw',
) )
); );
$wp_customize->add_control( 'sophia_after_dark_live_now_link', $wp_customize->add_control(
'sophia_after_dark_live_now_link',
array( array(
'type' => 'text', 'type' => 'text',
'label' => esc_html__( 'Button Link', 'sophia-after-dark' ), 'label' => esc_html__( 'Button Link', 'sophia-after-dark' ),
@@ -237,8 +249,8 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
'priority' => 50, 'priority' => 50,
'active_callback' => 'sophia_after_dark_enable_top_header_live_now_active_callback', 'active_callback' => 'sophia_after_dark_enable_top_header_live_now_active_callback',
'input_attrs' => array( 'input_attrs' => array(
'placeholder' => "https://www.youtube.com/channel/UCnGp3UHMB4DH8W_KmSmrCEw" 'placeholder' => 'https://www.youtube.com/channel/UCnGp3UHMB4DH8W_KmSmrCEw',
) ),
) )
); );
@@ -246,30 +258,33 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Header Extra Options * Header Extra Options
*/ */
$wp_customize->add_section( 'sophia_after_dark_section_header_extra', $wp_customize->add_section(
'sophia_after_dark_section_header_extra',
array( array(
'priority' => 30, 'priority' => 30,
'panel' => 'sophia_after_dark_header_panel', 'panel' => 'sophia_after_dark_header_panel',
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'theme_supports' => '', 'theme_supports' => '',
'title' => __( 'Extra Options', 'sophia-after-dark' ) 'title' => __( 'Extra Options', 'sophia-after-dark' ),
) )
); );
/** /**
* Toggle field for Enable/Disable sticky menu. * Toggle field for Enable/Disable sticky menu.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_sticky_menu', $wp_customize->add_setting(
'sophia_after_dark_enable_sticky_menu',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_sticky_menu', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_sticky_menu',
array( array(
'label' => esc_html__( 'Enable Sticky Menu', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Sticky Menu', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_header_extra', 'section' => 'sophia_after_dark_section_header_extra',
@@ -281,18 +296,20 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable social icons. * Toggle field for Enable/Disable social icons.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_header_social_icons', $wp_customize->add_setting(
'sophia_after_dark_enable_header_social_icons',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => false, 'default' => false,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_header_social_icons', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_header_social_icons',
array( array(
'label' => esc_html__( 'Enable Social Icons', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Social Icons', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_header_extra', 'section' => 'sophia_after_dark_section_header_extra',
@@ -304,18 +321,20 @@ function sophia_after_dark_customize_header_panels_sections_register( $wp_custom
/** /**
* Toggle field for Enable/Disable search icon. * Toggle field for Enable/Disable search icon.
*
*/ */
$wp_customize->add_setting( 'sophia_after_dark_enable_search_icon', $wp_customize->add_setting(
'sophia_after_dark_enable_search_icon',
array( array(
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
'default' => true, 'default' => true,
'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox' 'sanitize_callback' => 'sophia_after_dark_sanitize_checkbox',
) )
); );
$wp_customize->add_control( new Sophia_After_Dark_Control_Toggle( $wp_customize->add_control(
$wp_customize, 'sophia_after_dark_enable_search_icon', new Sophia_After_Dark_Control_Toggle(
$wp_customize,
'sophia_after_dark_enable_search_icon',
array( array(
'label' => esc_html__( 'Enable Search Icon', 'sophia-after-dark' ), 'label' => esc_html__( 'Enable Search Icon', 'sophia-after-dark' ),
'section' => 'sophia_after_dark_section_header_extra', 'section' => 'sophia_after_dark_section_header_extra',

View File

@@ -9,13 +9,13 @@ add_action( 'customize_register', 'sophia_after_dark_customize_panels_register'
/** /**
* Add panels in the theme customizer * Add panels in the theme customizer
*
*/ */
function sophia_after_dark_customize_panels_register( $wp_customize ) { function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* General Settings Panel * General Settings Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_general_panel', $wp_customize->add_panel(
'sophia_after_dark_general_panel',
array( array(
'priority' => 10, 'priority' => 10,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
@@ -27,7 +27,8 @@ function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* Header Settings Panel * Header Settings Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_header_panel', $wp_customize->add_panel(
'sophia_after_dark_header_panel',
array( array(
'priority' => 15, 'priority' => 15,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
@@ -39,7 +40,8 @@ function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* Front Settings Panel * Front Settings Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_front_section_panel', $wp_customize->add_panel(
'sophia_after_dark_front_section_panel',
array( array(
'priority' => 20, 'priority' => 20,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
@@ -51,7 +53,8 @@ function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* Design Settings Panel * Design Settings Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_design_panel', $wp_customize->add_panel(
'sophia_after_dark_design_panel',
array( array(
'priority' => 35, 'priority' => 35,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
@@ -63,7 +66,8 @@ function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* Additional Features Panel * Additional Features Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_additional_panel', $wp_customize->add_panel(
'sophia_after_dark_additional_panel',
array( array(
'priority' => 40, 'priority' => 40,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',
@@ -75,7 +79,8 @@ function sophia_after_dark_customize_panels_register( $wp_customize ) {
/** /**
* Footer Settings Panel * Footer Settings Panel
*/ */
$wp_customize->add_panel( 'sophia_after_dark_footer_panel', $wp_customize->add_panel(
'sophia_after_dark_footer_panel',
array( array(
'priority' => 45, 'priority' => 45,
'capability' => 'edit_theme_options', 'capability' => 'edit_theme_options',

View File

@@ -16,24 +16,45 @@ function sophia_after_dark_customize_register( $wp_customize ) {
$wp_customize->get_setting( 'blogname' )->transport = 'postMessage'; $wp_customize->get_setting( 'blogname' )->transport = 'postMessage';
$wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage';
$wp_customize->get_section( 'title_tagline' )->panel = 'sophia_after_dark_general_panel'; $wp_customize->get_section( 'title_tagline' )->panel = 'sophia_after_dark_general_panel';
$wp_customize->get_section( 'title_tagline' )->priority = '5'; $wp_customize->get_section( 'background_image' )->panel = 'sophia_after_dark_general_panel'; $wp_customize->get_section( 'title_tagline' )->priority = '5';
$wp_customize->get_section( 'background_image' )->panel = 'sophia_after_dark_general_panel';
$wp_customize->get_section( 'background_image' )->priority = '15'; $wp_customize->get_section( 'background_image' )->priority = '15';
$wp_customize->get_section( 'static_front_page' )->panel = 'sophia_after_dark_general_panel'; $wp_customize->get_section( 'static_front_page' )->panel = 'sophia_after_dark_general_panel';
$wp_customize->get_section( 'static_front_page' )->priority = '20'; $wp_customize->get_section( 'static_front_page' )->priority = '20';
$wp_customize->get_section( 'header_image' )->panel = 'sophia_after_dark_header_panel'; $wp_customize->get_section( 'header_image' )->panel = 'sophia_after_dark_header_panel';
$wp_customize->get_section( 'header_image' )->priority = '5'; $wp_customize->get_section( 'header_image' )->priority = '5';
$wp_customize->get_section( 'header_image' )->description = __( 'Header Image for only Innerpages', 'sophia-after-dark' ); $wp_customize->get_section( 'header_image' )->description = __( 'Header Image for only Innerpages', 'sophia-after-dark' );
$wp_customize->add_setting('sophia_after_dark_home_og_image', array('default' => '','sanitize_callback' => 'esc_url_raw','type' => 'option',)); $wp_customize->add_setting(
$wp_customize->add_setting('sophia_after_dark_home_og_user', array('default' => 1,'sanitize_callback' => 'absint','type' => 'option',)); 'sophia_after_dark_home_og_image',
array(
'default' => '',
'sanitize_callback' => 'esc_url_raw',
'type' => 'option',
)
);
$wp_customize->add_setting(
'sophia_after_dark_home_og_user',
array(
'default' => 1,
'sanitize_callback' => 'absint',
'type' => 'option',
)
);
if ( isset( $wp_customize->selective_refresh ) ) { if ( isset( $wp_customize->selective_refresh ) ) {
$wp_customize->selective_refresh->add_partial( 'blogname', array( $wp_customize->selective_refresh->add_partial(
'blogname',
array(
'selector' => '.site-title a', 'selector' => '.site-title a',
'render_callback' => 'sophia_after_dark_customize_partial_blogname', 'render_callback' => 'sophia_after_dark_customize_partial_blogname',
) ); )
$wp_customize->selective_refresh->add_partial( 'blogdescription', array( );
$wp_customize->selective_refresh->add_partial(
'blogdescription',
array(
'selector' => '.site-description', 'selector' => '.site-description',
'render_callback' => 'sophia_after_dark_customize_partial_blogdescription', 'render_callback' => 'sophia_after_dark_customize_partial_blogdescription',
) ); )
);
} }
/** /**
@@ -87,7 +108,7 @@ add_action( 'customize_controls_enqueue_scripts', 'sophia_after_dark_customize_b
/** /**
* Add Kirki required file for custom fields * Add Kirki required file for custom fields
*/ */
#require get_template_directory() . '/inc/customizer/sad-customizer-additional-open-graph.php'; // require get_template_directory() . '/inc/customizer/sad-customizer-additional-open-graph.php';
require get_template_directory() . '/inc/customizer/sad-customizer-custom-classes.php'; require get_template_directory() . '/inc/customizer/sad-customizer-custom-classes.php';
require get_template_directory() . '/inc/customizer/sad-customizer-panels.php'; require get_template_directory() . '/inc/customizer/sad-customizer-panels.php';

View File

@@ -81,10 +81,12 @@ if ( ! function_exists( 'sophia_after_dark_header_main_menu' ) ) :
<div class="menu-toggle"><a href="javascript:void(0)"><i class="fa fa-navicon"></i><?php echo esc_html( $sophia_after_dark_menu_toggle_text ); ?></a></div> <div class="menu-toggle"><a href="javascript:void(0)"><i class="fa fa-navicon"></i><?php echo esc_html( $sophia_after_dark_menu_toggle_text ); ?></a></div>
<nav itemscope id="site-navigation" class="main-navigation"> <nav itemscope id="site-navigation" class="main-navigation">
<?php <?php
wp_nav_menu( array( wp_nav_menu(
array(
'theme_location' => 'primary_menu', 'theme_location' => 'primary_menu',
'menu_id' => 'primary-menu', 'menu_id' => 'primary-menu',
) ); )
);
?> ?>
</nav> </nav>
</div> </div>
@@ -207,7 +209,12 @@ if ( ! function_exists( 'sophia_after_dark_header_categories_lists_content' ) )
* function to display categories lists * function to display categories lists
*/ */
function sophia_after_dark_header_categories_lists_content() { function sophia_after_dark_header_categories_lists_content() {
$get_categories = get_categories( array( 'orderby' => 'name', 'order' => 'ASC' ) ); $get_categories = get_categories(
array(
'orderby' => 'name',
'order' => 'ASC',
)
);
?> ?>
<div class="sad-header-cat-list-wrapper"> <div class="sad-header-cat-list-wrapper">
<ul class="sticky-header-sidebar-menu sad-slide-cat-lists"> <ul class="sticky-header-sidebar-menu sad-slide-cat-lists">
@@ -342,12 +349,14 @@ if ( ! function_exists( 'sophia_after_dark_breadcrumb_content' ) ) :
?> ?>
<nav id="breadcrumb" class="sad-breadcrumb"> <nav id="breadcrumb" class="sad-breadcrumb">
<?php <?php
breadcrumb_trail( array( breadcrumb_trail(
array(
'container' => 'div', 'container' => 'div',
'before' => '<div class="sad-container">', 'before' => '<div class="sad-container">',
'after' => '</div>', 'after' => '</div>',
'show_browse' => false, 'show_browse' => false,
) ); )
);
?> ?>
</nav> </nav>
<?php <?php
@@ -383,7 +392,6 @@ if ( ! function_exists( 'sophia_after_dark_front_slider' ) ) :
/** /**
* Function displaying front slider section * Function displaying front slider section
*
*/ */
function sophia_after_dark_front_slider() { function sophia_after_dark_front_slider() {
$sophia_after_dark_section_slider_option = get_theme_mod( 'sophia_after_dark_section_slider_option', false ); $sophia_after_dark_section_slider_option = get_theme_mod( 'sophia_after_dark_section_slider_option', false );
@@ -407,7 +415,7 @@ if ( ! function_exists( 'sophia_after_dark_front_slider' ) ) :
$slider_args = array( $slider_args = array(
'category_name' => esc_attr( $slider_cat_slug ), 'category_name' => esc_attr( $slider_cat_slug ),
'meta_key' => '_thumbnail_id', 'meta_key' => '_thumbnail_id',
'posts_per_page' => absint( $slide_post_count ) 'posts_per_page' => absint( $slide_post_count ),
); );
$slider_post_query = new WP_Query( $slider_args ); $slider_post_query = new WP_Query( $slider_args );
if ( $slider_post_query->have_posts() ) : if ( $slider_post_query->have_posts() ) :
@@ -463,7 +471,8 @@ if ( ! function_exists( 'sophia_after_dark_front_slider' ) ) :
if ( $top_featured_post_query->have_posts() ) : if ( $top_featured_post_query->have_posts() ) :
echo '<div class="top-featured-post-wrap">'; echo '<div class="top-featured-post-wrap">';
$featured_post_count = 1; $featured_post_count = 1;
while ( $top_featured_post_query -> have_posts() ) : $top_featured_post_query -> the_post(); while ( $top_featured_post_query->have_posts() ) :
$top_featured_post_query->the_post();
?> ?>
<div id="post-<?php the_ID(); ?>" class="sad-single-post-wrap sad-clearfix"> <div id="post-<?php the_ID(); ?>" class="sad-single-post-wrap sad-clearfix">
<div class="post-thumbnail"> <div class="post-thumbnail">
@@ -484,7 +493,7 @@ if ( ! function_exists( 'sophia_after_dark_front_slider' ) ) :
</div> </div>
</div> </div>
<?php <?php
$featured_post_count ++; ++$featured_post_count;
endwhile; endwhile;
echo '</div>'; echo '</div>';
endif; endif;
@@ -540,12 +549,14 @@ if ( ! function_exists( 'sophia_after_dark_bottom_footer' ) ) :
?> ?>
<nav id="footer-navigation" class="footer-navigation"> <nav id="footer-navigation" class="footer-navigation">
<?php <?php
wp_nav_menu( array( wp_nav_menu(
array(
'theme_location' => 'footer_menu', 'theme_location' => 'footer_menu',
'menu_id' => 'footer-menu', 'menu_id' => 'footer-menu',
'fallback_cb' => false, 'fallback_cb' => false,
'depth' => 1 'depth' => 1,
) ); )
);
?> ?>
</nav> </nav>
<?php <?php

View File

@@ -34,7 +34,6 @@ if ( ! function_exists( 'sophia_after_dark_trending_section' ) ) :
/** /**
* function to display the trending tags sections * function to display the trending tags sections
*
*/ */
function sophia_after_dark_trending_section() { function sophia_after_dark_trending_section() {
$sophia_after_dark_enable_trending = get_theme_mod( 'sophia_after_dark_enable_trending', false ); $sophia_after_dark_enable_trending = get_theme_mod( 'sophia_after_dark_enable_trending', false );
@@ -55,11 +54,13 @@ if ( ! function_exists( 'sophia_after_dark_trending_section' ) ) :
<?php <?php
$sophia_after_dark_trending_tags_orderby = get_theme_mod( 'sophia_after_dark_trending_tags_orderby', '' ); $sophia_after_dark_trending_tags_orderby = get_theme_mod( 'sophia_after_dark_trending_tags_orderby', '' );
$sophia_after_dark_trending_tags_count = get_theme_mod( 'sophia_after_dark_trending_tags_count', '5' ); $sophia_after_dark_trending_tags_count = get_theme_mod( 'sophia_after_dark_trending_tags_count', '5' );
$get_tags_lists = get_tags( array( $get_tags_lists = get_tags(
array(
'order' => 'DESC', 'order' => 'DESC',
'orderby' => esc_attr( $sophia_after_dark_trending_tags_orderby ), 'orderby' => esc_attr( $sophia_after_dark_trending_tags_orderby ),
'number' => absint( $sophia_after_dark_trending_tags_count ), 'number' => absint( $sophia_after_dark_trending_tags_count ),
)); )
);
if ( ! empty( $get_tags_lists ) ) { if ( ! empty( $get_tags_lists ) ) {
echo '<span class="head-tags-links">'; echo '<span class="head-tags-links">';
foreach ( $get_tags_lists as $tag ) { foreach ( $get_tags_lists as $tag ) {
@@ -97,11 +98,13 @@ if ( ! function_exists( 'sophia_after_dark_top_header_nav' ) ) :
<div class="top-header-nav"> <div class="top-header-nav">
<nav itemscope id="top-navigation" class="main-navigation"> <nav itemscope id="top-navigation" class="main-navigation">
<?php <?php
wp_nav_menu( array( wp_nav_menu(
array(
'theme_location' => 'top_header_menu', 'theme_location' => 'top_header_menu',
'menu_id' => 'top-header-menu', 'menu_id' => 'top-header-menu',
'fallback_cb' => false, 'fallback_cb' => false,
) ); )
);
?> ?>
</nav> </nav>
</div> </div>

View File

@@ -17,17 +17,22 @@
*/ */
function sophia_after_dark_jetpack_setup() { function sophia_after_dark_jetpack_setup() {
// Add theme support for Infinite Scroll. // Add theme support for Infinite Scroll.
add_theme_support( 'infinite-scroll', array( add_theme_support(
'infinite-scroll',
array(
'container' => 'main', 'container' => 'main',
'render' => 'sophia_after_dark_infinite_scroll_render', 'render' => 'sophia_after_dark_infinite_scroll_render',
'footer' => 'page' 'footer' => 'page',
) ); )
);
// Add theme support for Responsive Videos. // Add theme support for Responsive Videos.
add_theme_support( 'jetpack-responsive-videos' ); add_theme_support( 'jetpack-responsive-videos' );
// Add theme support for Content Options // Add theme support for Content Options
add_theme_support( 'jetpack-content-options', array( add_theme_support(
'jetpack-content-options',
array(
'post-details' => array( 'post-details' => array(
'stylesheet' => 'sophia-after-dark-style', 'stylesheet' => 'sophia-after-dark-style',
'date' => '.posted-on', 'date' => '.posted-on',
@@ -41,7 +46,8 @@ function sophia_after_dark_jetpack_setup() {
'post' => true, 'post' => true,
'page' => true, 'page' => true,
), ),
) ); )
);
} }
add_action( 'after_setup_theme', 'sophia_after_dark_jetpack_setup' ); add_action( 'after_setup_theme', 'sophia_after_dark_jetpack_setup' );

View File

@@ -29,7 +29,6 @@ function sophia_after_dark_sidebar_metaboxes() {
'normal', 'normal',
'default' 'default'
); );
} }
/*----------------------------------------------------------------------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------------------------------------------------------------------*/
@@ -41,32 +40,32 @@ function sophia_after_dark_sidebar_callback( $post ) {
'id' => 'post-default-sidebar', 'id' => 'post-default-sidebar',
'value' => 'layout--default-sidebar', 'value' => 'layout--default-sidebar',
'label' => __( 'Default Sidebar', 'sophia-after-dark' ), 'label' => __( 'Default Sidebar', 'sophia-after-dark' ),
'thumbnail' => get_template_directory_uri() . '/assets/images/default-sidebar.png' 'thumbnail' => get_template_directory_uri() . '/assets/images/default-sidebar.png',
), ),
'left-sidebar' => array( 'left-sidebar' => array(
'id' => 'post-left-sidebar', 'id' => 'post-left-sidebar',
'value' => 'left-sidebar', 'value' => 'left-sidebar',
'label' => __( 'Left sidebar', 'sophia-after-dark' ), 'label' => __( 'Left sidebar', 'sophia-after-dark' ),
'thumbnail' => get_template_directory_uri() . '/assets/images/left-sidebar.png' 'thumbnail' => get_template_directory_uri() . '/assets/images/left-sidebar.png',
), ),
'right-sidebar' => array( 'right-sidebar' => array(
'id' => 'post-right-sidebar', 'id' => 'post-right-sidebar',
'value' => 'right-sidebar', 'value' => 'right-sidebar',
'label' => __( 'Right sidebar', 'sophia-after-dark' ), 'label' => __( 'Right sidebar', 'sophia-after-dark' ),
'thumbnail' => get_template_directory_uri() . '/assets/images/right-sidebar.png' 'thumbnail' => get_template_directory_uri() . '/assets/images/right-sidebar.png',
), ),
'no-sidebar' => array( 'no-sidebar' => array(
'id' => 'post-no-sidebar', 'id' => 'post-no-sidebar',
'value' => 'no-sidebar', 'value' => 'no-sidebar',
'label' => __( 'No sidebar Full width', 'sophia-after-dark' ), 'label' => __( 'No sidebar Full width', 'sophia-after-dark' ),
'thumbnail' => get_template_directory_uri() . '/assets/images/no-sidebar.png' 'thumbnail' => get_template_directory_uri() . '/assets/images/no-sidebar.png',
), ),
'no-sidebar-center' => array( 'no-sidebar-center' => array(
'id' => 'post-no-sidebar-center', 'id' => 'post-no-sidebar-center',
'value' => 'no-sidebar-center', 'value' => 'no-sidebar-center',
'label' => __( 'No sidebar Content Centered', 'sophia-after-dark' ), 'label' => __( 'No sidebar Content Centered', 'sophia-after-dark' ),
'thumbnail' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png' 'thumbnail' => get_template_directory_uri() . '/assets/images/no-sidebar-center.png',
) ),
); );
// Check for previously set. // Check for previously set.

View File

@@ -35,8 +35,9 @@ function breadcrumb_trail( $args = array() ) {
$breadcrumb = apply_filters( 'breadcrumb_trail_object', null, $args ); $breadcrumb = apply_filters( 'breadcrumb_trail_object', null, $args );
if ( ! is_object( $breadcrumb ) ) if ( ! is_object( $breadcrumb ) ) {
$breadcrumb = new Breadcrumb_Trail( $args ); $breadcrumb = new Breadcrumb_Trail( $args );
}
return $breadcrumb->trail(); return $breadcrumb->trail();
} }
@@ -137,7 +138,7 @@ class Breadcrumb_Trail {
'show_browse' => true, 'show_browse' => true,
'labels' => array(), 'labels' => array(),
'post_taxonomy' => array(), 'post_taxonomy' => array(),
'echo' => true 'echo' => true,
); );
// Parse the arguments with the deaults. // Parse the arguments with the deaults.
@@ -210,11 +211,12 @@ class Breadcrumb_Trail {
// Add list item classes. // Add list item classes.
$item_class = 'trail-item'; $item_class = 'trail-item';
if ( 1 === $item_position && 1 < $item_count ) if ( 1 === $item_position && 1 < $item_count ) {
$item_class .= ' trail-begin'; $item_class .= ' trail-begin';
elseif ( $item_count === $item_position ) } elseif ( $item_count === $item_position ) {
$item_class .= ' trail-end'; $item_class .= ' trail-end';
}
// Create list item attributes. // Create list item attributes.
$attributes = 'itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" class="' . $item_class . '"'; $attributes = 'itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" class="' . $item_class . '"';
@@ -243,8 +245,9 @@ class Breadcrumb_Trail {
// Allow developers to filter the breadcrumb trail HTML. // Allow developers to filter the breadcrumb trail HTML.
$breadcrumb = apply_filters( 'breadcrumb_trail', $breadcrumb, $this->args ); $breadcrumb = apply_filters( 'breadcrumb_trail', $breadcrumb, $this->args );
if ( false === $this->args['echo'] ) if ( false === $this->args['echo'] ) {
return $breadcrumb; return $breadcrumb;
}
echo $breadcrumb; echo $breadcrumb;
} }
@@ -301,8 +304,9 @@ class Breadcrumb_Trail {
$defaults = array(); $defaults = array();
// If post permalink is set to `%postname%`, use the `category` taxonomy. // If post permalink is set to `%postname%`, use the `category` taxonomy.
if ( '%postname%' === trim( get_option( 'permalink_structure' ), '/' ) ) if ( '%postname%' === trim( get_option( 'permalink_structure' ), '/' ) ) {
$defaults['post'] = 'category'; $defaults['post'] = 'category';
}
$this->post_taxonomy = apply_filters( 'breadcrumb_trail_post_taxonomy', wp_parse_args( $this->args['post_taxonomy'], $defaults ) ); $this->post_taxonomy = apply_filters( 'breadcrumb_trail_post_taxonomy', wp_parse_args( $this->args['post_taxonomy'], $defaults ) );
} }
@@ -342,39 +346,40 @@ class Breadcrumb_Trail {
// If viewing an archive page. // If viewing an archive page.
elseif ( is_archive() ) { elseif ( is_archive() ) {
if ( is_post_type_archive() ) if ( is_post_type_archive() ) {
$this->add_post_type_archive_items(); $this->add_post_type_archive_items();
elseif ( is_category() || is_tag() || is_tax() ) } elseif ( is_category() || is_tag() || is_tax() ) {
$this->add_term_archive_items(); $this->add_term_archive_items();
elseif ( is_author() ) } elseif ( is_author() ) {
$this->add_user_archive_items(); $this->add_user_archive_items();
elseif ( get_query_var( 'minute' ) && get_query_var( 'hour' ) ) } elseif ( get_query_var( 'minute' ) && get_query_var( 'hour' ) ) {
$this->add_minute_hour_archive_items(); $this->add_minute_hour_archive_items();
elseif ( get_query_var( 'minute' ) ) } elseif ( get_query_var( 'minute' ) ) {
$this->add_minute_archive_items(); $this->add_minute_archive_items();
elseif ( get_query_var( 'hour' ) ) } elseif ( get_query_var( 'hour' ) ) {
$this->add_hour_archive_items(); $this->add_hour_archive_items();
elseif ( is_day() ) } elseif ( is_day() ) {
$this->add_day_archive_items(); $this->add_day_archive_items();
elseif ( get_query_var( 'w' ) ) } elseif ( get_query_var( 'w' ) ) {
$this->add_week_archive_items(); $this->add_week_archive_items();
elseif ( is_month() ) } elseif ( is_month() ) {
$this->add_month_archive_items(); $this->add_month_archive_items();
elseif ( is_year() ) } elseif ( is_year() ) {
$this->add_year_archive_items(); $this->add_year_archive_items();
else } else {
$this->add_default_archive_items(); $this->add_default_archive_items();
} }
}
// If viewing a search results page. // If viewing a search results page.
elseif ( is_search() ) { elseif ( is_search() ) {
@@ -404,9 +409,10 @@ class Breadcrumb_Trail {
protected function add_rewrite_front_items() { protected function add_rewrite_front_items() {
global $wp_rewrite; global $wp_rewrite;
if ( $wp_rewrite->front ) if ( $wp_rewrite->front ) {
$this->add_path_parents( $wp_rewrite->front ); $this->add_path_parents( $wp_rewrite->front );
} }
}
/** /**
* Adds the page/paged number to the items array. * Adds the page/paged number to the items array.
@@ -418,17 +424,20 @@ class Breadcrumb_Trail {
protected function add_paged_items() { protected function add_paged_items() {
// If viewing a paged singular post. // If viewing a paged singular post.
if ( is_singular() && 1 < get_query_var( 'page' ) && true === $this->args['show_title'] ) if ( is_singular() && 1 < get_query_var( 'page' ) && true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['paged'], number_format_i18n( absint( get_query_var( 'page' ) ) ) ); $this->items[] = sprintf( $this->labels['paged'], number_format_i18n( absint( get_query_var( 'page' ) ) ) );
}
// If viewing a singular post with paged comments. // If viewing a singular post with paged comments.
elseif ( is_singular() && get_option( 'page_comments' ) && 1 < get_query_var( 'cpage' ) ) elseif ( is_singular() && get_option( 'page_comments' ) && 1 < get_query_var( 'cpage' ) ) {
$this->items[] = sprintf( $this->labels['paged_comments'], number_format_i18n( absint( get_query_var( 'cpage' ) ) ) ); $this->items[] = sprintf( $this->labels['paged_comments'], number_format_i18n( absint( get_query_var( 'cpage' ) ) ) );
}
// If viewing a paged archive-type page. // If viewing a paged archive-type page.
elseif ( is_paged() && true === $this->args['show_title'] ) elseif ( is_paged() && true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['paged'], number_format_i18n( absint( get_query_var( 'paged' ) ) ) ); $this->items[] = sprintf( $this->labels['paged'], number_format_i18n( absint( get_query_var( 'paged' ) ) ) );
} }
}
/** /**
* Adds the network (all sites) home page link to the items array. * Adds the network (all sites) home page link to the items array.
@@ -439,9 +448,10 @@ class Breadcrumb_Trail {
*/ */
protected function add_network_home_link() { protected function add_network_home_link() {
if ( is_multisite() && ! is_main_site() && true === $this->args['network'] ) if ( is_multisite() && ! is_main_site() && true === $this->args['network'] ) {
$this->items[] = sprintf( '<a href="%s" rel="home">%s</a>', esc_url( network_home_url() ), $this->labels['home'] ); $this->items[] = sprintf( '<a href="%s" rel="home">%s</a>', esc_url( network_home_url() ), $this->labels['home'] );
} }
}
/** /**
* Adds the current site's home page link to the items array. * Adds the current site's home page link to the items array.
@@ -475,14 +485,16 @@ class Breadcrumb_Trail {
$this->add_network_home_link(); $this->add_network_home_link();
// If on a paged view, add the site home link. // If on a paged view, add the site home link.
if ( is_paged() ) if ( is_paged() ) {
$this->add_site_home_link(); $this->add_site_home_link();
}
// If on the main front page, add the network home title. // If on the main front page, add the network home title.
elseif ( true === $this->args['show_title'] ) elseif ( true === $this->args['show_title'] ) {
$this->items[] = is_multisite() && true === $this->args['network'] ? get_bloginfo( 'name' ) : $this->labels['home']; $this->items[] = is_multisite() && true === $this->args['network'] ? get_bloginfo( 'name' ) : $this->labels['home'];
} }
} }
}
/** /**
* Adds items for the posts page (i.e., is_home()) to the items array. * Adds items for the posts page (i.e., is_home()) to the items array.
@@ -498,19 +510,21 @@ class Breadcrumb_Trail {
$post = get_post( $post_id ); $post = get_post( $post_id );
// If the post has parents, add them to the trail. // If the post has parents, add them to the trail.
if ( 0 < $post->post_parent ) if ( 0 < $post->post_parent ) {
$this->add_post_parents( $post->post_parent ); $this->add_post_parents( $post->post_parent );
}
// Get the page title. // Get the page title.
$title = get_the_title( $post_id ); $title = get_the_title( $post_id );
// Add the posts page item. // Add the posts page item.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), $title ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), $title );
elseif ( $title && true === $this->args['show_title'] ) } elseif ( $title && true === $this->args['show_title'] ) {
$this->items[] = $title; $this->items[] = $title;
} }
}
/** /**
* Adds singular post items to the items array. * Adds singular post items to the items array.
@@ -526,27 +540,31 @@ class Breadcrumb_Trail {
$post_id = get_queried_object_id(); $post_id = get_queried_object_id();
// If the post has a parent, follow the parent trail. // If the post has a parent, follow the parent trail.
if ( 0 < $post->post_parent ) if ( 0 < $post->post_parent ) {
$this->add_post_parents( $post->post_parent ); $this->add_post_parents( $post->post_parent );
}
// If the post doesn't have a parent, get its hierarchy based off the post type. // If the post doesn't have a parent, get its hierarchy based off the post type.
else else {
$this->add_post_hierarchy( $post_id ); $this->add_post_hierarchy( $post_id );
}
// Display terms for specific post type taxonomy if requested. // Display terms for specific post type taxonomy if requested.
if ( ! empty( $this->post_taxonomy[ $post->post_type ] ) ) if ( ! empty( $this->post_taxonomy[ $post->post_type ] ) ) {
$this->add_post_terms( $post_id, $this->post_taxonomy[ $post->post_type ] ); $this->add_post_terms( $post_id, $this->post_taxonomy[ $post->post_type ] );
}
// End with the post title. // End with the post title.
if ( $post_title = single_post_title( '', false ) ) { if ( $post_title = single_post_title( '', false ) ) {
if ( ( 1 < get_query_var( 'page' ) || is_paged() ) || ( get_option( 'page_comments' ) && 1 < absint( get_query_var( 'cpage' ) ) ) ) if ( ( 1 < get_query_var( 'page' ) || is_paged() ) || ( get_option( 'page_comments' ) && 1 < absint( get_query_var( 'cpage' ) ) ) ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), $post_title ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), $post_title );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = $post_title; $this->items[] = $post_title;
} }
} }
}
/** /**
* Adds the items to the trail items array for taxonomy term archives. * Adds the items to the trail items array for taxonomy term archives.
@@ -568,8 +586,9 @@ class Breadcrumb_Trail {
if ( false !== $taxonomy->rewrite ) { if ( false !== $taxonomy->rewrite ) {
// If 'with_front' is true, dd $wp_rewrite->front to the trail. // If 'with_front' is true, dd $wp_rewrite->front to the trail.
if ( $taxonomy->rewrite['with_front'] && $wp_rewrite->front ) if ( $taxonomy->rewrite['with_front'] && $wp_rewrite->front ) {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
}
// Get parent pages by path if they exist. // Get parent pages by path if they exist.
$this->add_path_parents( $taxonomy->rewrite['slug'] ); $this->add_path_parents( $taxonomy->rewrite['slug'] );
@@ -629,8 +648,9 @@ class Breadcrumb_Trail {
if ( 'post' === $taxonomy->object_type[0] ) { if ( 'post' === $taxonomy->object_type[0] ) {
$post_id = get_option( 'page_for_posts' ); $post_id = get_option( 'page_for_posts' );
if ( 'posts' !== get_option( 'show_on_front' ) && 0 < $post_id ) if ( 'posts' !== get_option( 'show_on_front' ) && 0 < $post_id ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), get_the_title( $post_id ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), get_the_title( $post_id ) );
}
// If the post type is not 'post'. // If the post type is not 'post'.
} else { } else {
@@ -646,16 +666,18 @@ class Breadcrumb_Trail {
} }
// If the taxonomy is hierarchical, list its parent terms. // If the taxonomy is hierarchical, list its parent terms.
if ( is_taxonomy_hierarchical( $term->taxonomy ) && $term->parent ) if ( is_taxonomy_hierarchical( $term->taxonomy ) && $term->parent ) {
$this->add_term_parents( $term->parent, $term->taxonomy ); $this->add_term_parents( $term->parent, $term->taxonomy );
}
// Add the term name to the trail end. // Add the term name to the trail end.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_term_link( $term, $term->taxonomy ) ), single_term_title( '', false ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_term_link( $term, $term->taxonomy ) ), single_term_title( '', false ) );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = single_term_title( '', false ); $this->items[] = single_term_title( '', false );
} }
}
/** /**
* Adds the items to the trail items array for post type archives. * Adds the items to the trail items array for post type archives.
@@ -672,25 +694,29 @@ class Breadcrumb_Trail {
if ( false !== $post_type_object->rewrite ) { if ( false !== $post_type_object->rewrite ) {
// If 'with_front' is true, add $wp_rewrite->front to the trail. // If 'with_front' is true, add $wp_rewrite->front to the trail.
if ( $post_type_object->rewrite['with_front'] ) if ( $post_type_object->rewrite['with_front'] ) {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
}
// If there's a rewrite slug, check for parents. // If there's a rewrite slug, check for parents.
if ( ! empty( $post_type_object->rewrite['slug'] ) ) if ( ! empty( $post_type_object->rewrite['slug'] ) ) {
$this->add_path_parents( $post_type_object->rewrite['slug'] ); $this->add_path_parents( $post_type_object->rewrite['slug'] );
} }
}
// Add the post type [plural] name to the trail end. // Add the post type [plural] name to the trail end.
if ( is_paged() || is_author() ) if ( is_paged() || is_author() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_post_type_archive_link( $post_type_object->name ) ), post_type_archive_title( '', false ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_post_type_archive_link( $post_type_object->name ) ), post_type_archive_title( '', false ) );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = post_type_archive_title( '', false ); $this->items[] = post_type_archive_title( '', false );
}
// If viewing a post type archive by author. // If viewing a post type archive by author.
if ( is_author() ) if ( is_author() ) {
$this->add_user_archive_items(); $this->add_user_archive_items();
} }
}
/** /**
* Adds the items to the trail items array for user (author) archives. * Adds the items to the trail items array for user (author) archives.
@@ -710,16 +736,18 @@ class Breadcrumb_Trail {
$user_id = get_query_var( 'author' ); $user_id = get_query_var( 'author' );
// If $author_base exists, check for parent pages. // If $author_base exists, check for parent pages.
if ( ! empty( $wp_rewrite->author_base ) && ! is_post_type_archive() ) if ( ! empty( $wp_rewrite->author_base ) && ! is_post_type_archive() ) {
$this->add_path_parents( $wp_rewrite->author_base ); $this->add_path_parents( $wp_rewrite->author_base );
}
// Add the author's display name to the trail end. // Add the author's display name to the trail end.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_author_posts_url( $user_id ) ), get_the_author_meta( 'display_name', $user_id ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_author_posts_url( $user_id ) ), get_the_author_meta( 'display_name', $user_id ) );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = get_the_author_meta( 'display_name', $user_id ); $this->items[] = get_the_author_meta( 'display_name', $user_id );
} }
}
/** /**
* Adds the items to the trail items array for minute + hour archives. * Adds the items to the trail items array for minute + hour archives.
@@ -734,9 +762,10 @@ class Breadcrumb_Trail {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
// Add the minute + hour item. // Add the minute + hour item.
if ( true === $this->args['show_title'] ) if ( true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['archive_minute_hour'], get_the_time( esc_html_x( 'g:i a', 'minute and hour archives time format', 'sophia-after-dark' ) ) ); $this->items[] = sprintf( $this->labels['archive_minute_hour'], get_the_time( esc_html_x( 'g:i a', 'minute and hour archives time format', 'sophia-after-dark' ) ) );
} }
}
/** /**
* Adds the items to the trail items array for minute archives. * Adds the items to the trail items array for minute archives.
@@ -751,9 +780,10 @@ class Breadcrumb_Trail {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
// Add the minute item. // Add the minute item.
if ( true === $this->args['show_title'] ) if ( true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['archive_minute'], get_the_time( esc_html_x( 'i', 'minute archives time format', 'sophia-after-dark' ) ) ); $this->items[] = sprintf( $this->labels['archive_minute'], get_the_time( esc_html_x( 'i', 'minute archives time format', 'sophia-after-dark' ) ) );
} }
}
/** /**
* Adds the items to the trail items array for hour archives. * Adds the items to the trail items array for hour archives.
@@ -768,9 +798,10 @@ class Breadcrumb_Trail {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
// Add the hour item. // Add the hour item.
if ( true === $this->args['show_title'] ) if ( true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['archive_hour'], get_the_time( esc_html_x( 'g a', 'hour archives time format', 'sophia-after-dark' ) ) ); $this->items[] = sprintf( $this->labels['archive_hour'], get_the_time( esc_html_x( 'g a', 'hour archives time format', 'sophia-after-dark' ) ) );
} }
}
/** /**
* Adds the items to the trail items array for day archives. * Adds the items to the trail items array for day archives.
@@ -794,12 +825,13 @@ class Breadcrumb_Trail {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y' ), get_the_time( 'm' ) ) ), $month ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y' ), get_the_time( 'm' ) ) ), $month );
// Add the day item. // Add the day item.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_day_link( get_the_time( 'Y' ) ), get_the_time( 'm' ), get_the_time( 'd' ) ), $day ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_day_link( get_the_time( 'Y' ) ), get_the_time( 'm' ), get_the_time( 'd' ) ), $day );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = $day; $this->items[] = $day;
} }
}
/** /**
* Adds the items to the trail items array for week archives. * Adds the items to the trail items array for week archives.
@@ -821,12 +853,25 @@ class Breadcrumb_Trail {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year );
// Add the week item. // Add the week item.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = esc_url( get_archives_link( add_query_arg( array( 'm' => get_the_time( 'Y' ), 'w' => get_the_time( 'W' ) ), home_url() ), $week, false ) ); $this->items[] = esc_url(
get_archives_link(
add_query_arg(
array(
'm' => get_the_time( 'Y' ),
'w' => get_the_time( 'W' ),
),
home_url()
),
$week,
false
)
);
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = $week; $this->items[] = $week;
} }
}
/** /**
* Adds the items to the trail items array for month archives. * Adds the items to the trail items array for month archives.
@@ -848,12 +893,13 @@ class Breadcrumb_Trail {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year );
// Add the month item. // Add the month item.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y' ), get_the_time( 'm' ) ) ), $month ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y' ), get_the_time( 'm' ) ) ), $month );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = $month; $this->items[] = $month;
} }
}
/** /**
* Adds the items to the trail items array for year archives. * Adds the items to the trail items array for year archives.
@@ -871,12 +917,13 @@ class Breadcrumb_Trail {
$year = sprintf( $this->labels['archive_year'], get_the_time( esc_html_x( 'Y', 'yearly archives date format', 'sophia-after-dark' ) ) ); $year = sprintf( $this->labels['archive_year'], get_the_time( esc_html_x( 'Y', 'yearly archives date format', 'sophia-after-dark' ) ) );
// Add the year item. // Add the year item.
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y' ) ) ), $year );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = $year; $this->items[] = $year;
} }
}
/** /**
* Adds the items to the trail items array for archives that don't have a more specific method * Adds the items to the trail items array for archives that don't have a more specific method
@@ -889,12 +936,14 @@ class Breadcrumb_Trail {
protected function add_default_archive_items() { protected function add_default_archive_items() {
// If this is a date-/time-based archive, add $wp_rewrite->front to the trail. // If this is a date-/time-based archive, add $wp_rewrite->front to the trail.
if ( is_date() || is_time() ) if ( is_date() || is_time() ) {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
}
if ( true === $this->args['show_title'] ) if ( true === $this->args['show_title'] ) {
$this->items[] = $this->labels['archives']; $this->items[] = $this->labels['archives'];
} }
}
/** /**
* Adds the items to the trail items array for search results. * Adds the items to the trail items array for search results.
@@ -905,12 +954,13 @@ class Breadcrumb_Trail {
*/ */
protected function add_search_items() { protected function add_search_items() {
if ( is_paged() ) if ( is_paged() ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_search_link() ), sprintf( $this->labels['search'], get_search_query() ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_search_link() ), sprintf( $this->labels['search'], get_search_query() ) );
elseif ( true === $this->args['show_title'] ) } elseif ( true === $this->args['show_title'] ) {
$this->items[] = sprintf( $this->labels['search'], get_search_query() ); $this->items[] = sprintf( $this->labels['search'], get_search_query() );
} }
}
/** /**
* Adds the items to the trail items array for 404 pages. * Adds the items to the trail items array for 404 pages.
@@ -921,9 +971,10 @@ class Breadcrumb_Trail {
*/ */
protected function add_404_items() { protected function add_404_items() {
if ( true === $this->args['show_title'] ) if ( true === $this->args['show_title'] ) {
$this->items[] = $this->labels['error_404']; $this->items[] = $this->labels['error_404'];
} }
}
/** /**
* Adds a specific post's parents to the items array. * Adds a specific post's parents to the items array.
@@ -942,15 +993,17 @@ class Breadcrumb_Trail {
$post = get_post( $post_id ); $post = get_post( $post_id );
// If we hit a page that's set as the front page, bail. // If we hit a page that's set as the front page, bail.
if ( 'page' == $post->post_type && 'page' == get_option( 'show_on_front' ) && $post_id == get_option( 'page_on_front' ) ) if ( 'page' == $post->post_type && 'page' == get_option( 'show_on_front' ) && $post_id == get_option( 'page_on_front' ) ) {
break; break;
}
// Add the formatted post link to the array of parents. // Add the formatted post link to the array of parents.
$parents[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), get_the_title( $post_id ) ); $parents[] = sprintf( '<a href="%s">%s</a>', esc_url( get_permalink( $post_id ) ), get_the_title( $post_id ) );
// If there's no longer a post parent, break out of the loop. // If there's no longer a post parent, break out of the loop.
if ( 0 >= $post->post_parent ) if ( 0 >= $post->post_parent ) {
break; break;
}
// Change the post ID to the parent post to continue looping. // Change the post ID to the parent post to continue looping.
$post_id = $post->post_parent; $post_id = $post->post_parent;
@@ -960,8 +1013,9 @@ class Breadcrumb_Trail {
$this->add_post_hierarchy( $post_id ); $this->add_post_hierarchy( $post_id );
// Display terms for specific post type taxonomy if requested. // Display terms for specific post type taxonomy if requested.
if ( ! empty( $this->post_taxonomy[ $post->post_type ] ) ) if ( ! empty( $this->post_taxonomy[ $post->post_type ] ) ) {
$this->add_post_terms( $post_id, $this->post_taxonomy[ $post->post_type ] ); $this->add_post_terms( $post_id, $this->post_taxonomy[ $post->post_type ] );
}
// Merge the parent items into the items array. // Merge the parent items into the items array.
$this->items = array_merge( $this->items, array_reverse( $parents ) ); $this->items = array_merge( $this->items, array_reverse( $parents ) );
@@ -996,13 +1050,15 @@ class Breadcrumb_Trail {
elseif ( false !== $post_type_object->rewrite ) { elseif ( false !== $post_type_object->rewrite ) {
// If 'with_front' is true, add $wp_rewrite->front to the trail. // If 'with_front' is true, add $wp_rewrite->front to the trail.
if ( $post_type_object->rewrite['with_front'] ) if ( $post_type_object->rewrite['with_front'] ) {
$this->add_rewrite_front_items(); $this->add_rewrite_front_items();
}
// If there's a path, check for parents. // If there's a path, check for parents.
if ( ! empty( $post_type_object->rewrite['slug'] ) ) if ( ! empty( $post_type_object->rewrite['slug'] ) ) {
$this->add_path_parents( $post_type_object->rewrite['slug'] ); $this->add_path_parents( $post_type_object->rewrite['slug'] );
} }
}
// If there's an archive page, add it to the trail. // If there's an archive page, add it to the trail.
if ( $post_type_object->has_archive ) { if ( $post_type_object->has_archive ) {
@@ -1017,9 +1073,10 @@ class Breadcrumb_Trail {
} }
// Map the rewrite tags if there's a `%` in the slug. // Map the rewrite tags if there's a `%` in the slug.
if ( 'post' !== $post_type && ! empty( $post_type_object->rewrite['slug'] ) && false !== strpos( $post_type_object->rewrite['slug'], '%' ) ) if ( 'post' !== $post_type && ! empty( $post_type_object->rewrite['slug'] ) && false !== strpos( $post_type_object->rewrite['slug'], '%' ) ) {
$this->map_rewrite_tags( $post_id, $post_type_object->rewrite['slug'] ); $this->map_rewrite_tags( $post_id, $post_type_object->rewrite['slug'] );
} }
}
/** /**
* Gets post types by slug. This is needed because the get_post_types() function doesn't exactly * Gets post types by slug. This is needed because the get_post_types() function doesn't exactly
@@ -1038,9 +1095,10 @@ class Breadcrumb_Trail {
foreach ( $post_types as $type ) { foreach ( $post_types as $type ) {
if ( $slug === $type->has_archive || ( true === $type->has_archive && $slug === $type->rewrite['slug'] ) ) if ( $slug === $type->has_archive || ( true === $type->has_archive && $slug === $type->rewrite['slug'] ) ) {
$return[] = $type; $return[] = $type;
} }
}
return $return; return $return;
} }
@@ -1066,17 +1124,19 @@ class Breadcrumb_Trail {
if ( $terms && ! is_wp_error( $terms ) ) { if ( $terms && ! is_wp_error( $terms ) ) {
// Sort the terms by ID and get the first category. // Sort the terms by ID and get the first category.
if ( function_exists( 'wp_list_sort' ) ) if ( function_exists( 'wp_list_sort' ) ) {
$terms = wp_list_sort( $terms, 'term_id' ); $terms = wp_list_sort( $terms, 'term_id' );
else } else {
usort( $terms, '_usort_terms_by_ID' ); usort( $terms, '_usort_terms_by_ID' );
}
$term = get_term( $terms[0], $taxonomy ); $term = get_term( $terms[0], $taxonomy );
// If the category has a parent, add the hierarchy to the trail. // If the category has a parent, add the hierarchy to the trail.
if ( 0 < $term->parent ) if ( 0 < $term->parent ) {
$this->add_term_parents( $term->parent, $taxonomy ); $this->add_term_parents( $term->parent, $taxonomy );
}
// Add the category archive link to the trail. // Add the category archive link to the trail.
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_term_link( $term, $taxonomy ) ), $term->name ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_term_link( $term, $taxonomy ) ), $term->name );
@@ -1099,21 +1159,20 @@ class Breadcrumb_Trail {
$path = trim( $path, '/' ); $path = trim( $path, '/' );
// If there's no path, return. // If there's no path, return.
if ( empty( $path ) ) if ( empty( $path ) ) {
return; return;
}
// Get parent post by the path. // Get parent post by the path.
$post = get_page_by_path( $path ); $post = get_page_by_path( $path );
if ( ! empty( $post ) ) { if ( ! empty( $post ) ) {
$this->add_post_parents( $post->ID ); $this->add_post_parents( $post->ID );
} } elseif ( is_null( $post ) ) {
elseif ( is_null( $post ) ) {
// Separate post names into separate paths by '/'. // Separate post names into separate paths by '/'.
$path = trim( $path, '/' ); $path = trim( $path, '/' );
preg_match_all( "/\/.*?\z/", $path, $matches ); preg_match_all( '/\/.*?\z/', $path, $matches );
// If matches are found for the path. // If matches are found for the path.
if ( isset( $matches ) ) { if ( isset( $matches ) ) {
@@ -1170,9 +1229,10 @@ class Breadcrumb_Trail {
} }
// If we have parent terms, reverse the array to put them in the proper order for the trail. // If we have parent terms, reverse the array to put them in the proper order for the trail.
if ( ! empty( $parents ) ) if ( ! empty( $parents ) ) {
$this->items = array_merge( $this->items, array_reverse( $parents ) ); $this->items = array_merge( $this->items, array_reverse( $parents ) );
} }
}
/** /**
* Turns %tag% from permalink structures into usable links for the breadcrumb trail. This feels kind of * Turns %tag% from permalink structures into usable links for the breadcrumb trail. This feels kind of
@@ -1207,20 +1267,24 @@ class Breadcrumb_Trail {
$tag = trim( $match, '/' ); $tag = trim( $match, '/' );
// If using the %year% tag, add a link to the yearly archive. // If using the %year% tag, add a link to the yearly archive.
if ( '%year%' == $tag ) if ( '%year%' == $tag ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y', $post_id ) ) ), sprintf( $this->labels['archive_year'], get_the_time( esc_html_x( 'Y', 'yearly archives date format', 'sophia-after-dark' ) ) ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_year_link( get_the_time( 'Y', $post_id ) ) ), sprintf( $this->labels['archive_year'], get_the_time( esc_html_x( 'Y', 'yearly archives date format', 'sophia-after-dark' ) ) ) );
}
// If using the %monthnum% tag, add a link to the monthly archive. // If using the %monthnum% tag, add a link to the monthly archive.
elseif ( '%monthnum%' == $tag ) elseif ( '%monthnum%' == $tag ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y', $post_id ), get_the_time( 'm', $post_id ) ) ), sprintf( $this->labels['archive_month'], get_the_time( esc_html_x( 'F', 'monthly archives date format', 'sophia-after-dark' ) ) ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_month_link( get_the_time( 'Y', $post_id ), get_the_time( 'm', $post_id ) ) ), sprintf( $this->labels['archive_month'], get_the_time( esc_html_x( 'F', 'monthly archives date format', 'sophia-after-dark' ) ) ) );
}
// If using the %day% tag, add a link to the daily archive. // If using the %day% tag, add a link to the daily archive.
elseif ( '%day%' == $tag ) elseif ( '%day%' == $tag ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_day_link( get_the_time( 'Y', $post_id ), get_the_time( 'm', $post_id ), get_the_time( 'd', $post_id ) ) ), sprintf( $this->labels['archive_day'], get_the_time( esc_html_x( 'j', 'daily archives date format', 'sophia-after-dark' ) ) ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_day_link( get_the_time( 'Y', $post_id ), get_the_time( 'm', $post_id ), get_the_time( 'd', $post_id ) ) ), sprintf( $this->labels['archive_day'], get_the_time( esc_html_x( 'j', 'daily archives date format', 'sophia-after-dark' ) ) ) );
}
// If using the %author% tag, add a link to the post author archive. // If using the %author% tag, add a link to the post author archive.
elseif ( '%author%' == $tag ) elseif ( '%author%' == $tag ) {
$this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_author_posts_url( $post->post_author ) ), get_the_author_meta( 'display_name', $post->post_author ) ); $this->items[] = sprintf( '<a href="%s">%s</a>', esc_url( get_author_posts_url( $post->post_author ) ), get_the_author_meta( 'display_name', $post->post_author ) );
}
// If using the %category% tag, add a link to the first category archive to match permalinks. // If using the %category% tag, add a link to the first category archive to match permalinks.
elseif ( taxonomy_exists( trim( $tag, '%' ) ) ) { elseif ( taxonomy_exists( trim( $tag, '%' ) ) ) {

View File

@@ -4,7 +4,6 @@
* *
* @package Sophia After Dark * @package Sophia After Dark
* @since 1.0.0 * @since 1.0.0
*
*/ */
add_action( 'wp_enqueue_scripts', 'sophia_after_dark_dynamic_styles' ); add_action( 'wp_enqueue_scripts', 'sophia_after_dark_dynamic_styles' );
@@ -25,24 +24,24 @@ if ( ! function_exists( 'sophia_after_dark_dynamic_styles' ) ) :
$cat_id = $category->term_id; $cat_id = $category->term_id;
if ( ! empty( $cat_color ) ) { if ( ! empty( $cat_color ) ) {
$output_css .= ".category-button.cbd-cat-". esc_attr( $cat_id ) ." a { background: ". esc_attr( $cat_color ) ."}\n"; $output_css .= '.category-button.cbd-cat-' . esc_attr( $cat_id ) . ' a { background: ' . esc_attr( $cat_color ) . "}\n";
$output_css .= ".category-button.cbd-cat-". esc_attr( $cat_id ) ." a:hover { background: ". esc_attr( $cat_hover_color ) ."}\n"; $output_css .= '.category-button.cbd-cat-' . esc_attr( $cat_id ) . ' a:hover { background: ' . esc_attr( $cat_hover_color ) . "}\n";
$output_css .= "#site-navigation ul li.cbd-cat-". esc_attr( $cat_id ) ." .menu-item-description { background: ". esc_attr( $cat_color ) ."}\n"; $output_css .= '#site-navigation ul li.cbd-cat-' . esc_attr( $cat_id ) . ' .menu-item-description { background: ' . esc_attr( $cat_color ) . "}\n";
$output_css .= "#site-navigation ul li.cbd-cat-". esc_attr( $cat_id ) ." .menu-item-description:after { border-top-color: ". esc_attr( $cat_color ) ."}\n"; $output_css .= '#site-navigation ul li.cbd-cat-' . esc_attr( $cat_id ) . ' .menu-item-description:after { border-top-color: ' . esc_attr( $cat_color ) . "}\n";
} }
} }
$output_css .= "a,a:hover,a:focus,a:active,.entry-cat .cat-links a:hover,.entry-cat a:hover,.entry-footer a:hover,.comment-author .fn .url:hover,.commentmetadata .comment-edit-link, #cancel-comment-reply-link, #cancel-comment-reply-link:before, .logged-in-as a,.widget a:hover, .widget a:hover::before, .widget li:hover::before,.sad-social-icon-wrap li a:hover,.sad-social-icon-wrap li a:focus,#site-navigation ul li:hover>a,#site-navigation ul li.current-menu-item>a,#site-navigation ul li.current_page_ancestor>a,#site-navigation ul li.current-menu-ancestor>a,#site-navigation ul li.current_page_item>a,#site-navigation ul li.current-menu-parent>a,#site-navigation ul li.focus>a,.banner-sub-title,.entry-title a:hover,.cat-links a:hover,.btn-wrapper a:hover,.navigation.pagination .nav-links .page-numbers.current, .navigation.pagination .nav-links a.page-numbers:hover,#footer-menu li a:hover,.sophia_after_dark_latest_posts .sad-post-title a:hover,#sad-scrollup:hover,.menu-toggle:hover, #top-navigation ul li a:hover,.sad-search-icon:hover, .entry-meta a:hover, .front-slider-block .banner-title a:hover, .post-info-wrap .entry-meta a:hover, .single .sad-single-related-posts .entry-title a:hover, .breadcrumbs .trail-items li a:hover, .wrap-label i,.has-thumbnail .post-info-wrap .entry-title a:hover,.front-slider-block .post-info-wrap .entry-title a:hover,#top-footer a:hover{ color: ". esc_attr( $sophia_after_dark_primary_color ) ."}\n"; $output_css .= 'a,a:hover,a:focus,a:active,.entry-cat .cat-links a:hover,.entry-cat a:hover,.entry-footer a:hover,.comment-author .fn .url:hover,.commentmetadata .comment-edit-link, #cancel-comment-reply-link, #cancel-comment-reply-link:before, .logged-in-as a,.widget a:hover, .widget a:hover::before, .widget li:hover::before,.sad-social-icon-wrap li a:hover,.sad-social-icon-wrap li a:focus,#site-navigation ul li:hover>a,#site-navigation ul li.current-menu-item>a,#site-navigation ul li.current_page_ancestor>a,#site-navigation ul li.current-menu-ancestor>a,#site-navigation ul li.current_page_item>a,#site-navigation ul li.current-menu-parent>a,#site-navigation ul li.focus>a,.banner-sub-title,.entry-title a:hover,.cat-links a:hover,.btn-wrapper a:hover,.navigation.pagination .nav-links .page-numbers.current, .navigation.pagination .nav-links a.page-numbers:hover,#footer-menu li a:hover,.sophia_after_dark_latest_posts .sad-post-title a:hover,#sad-scrollup:hover,.menu-toggle:hover, #top-navigation ul li a:hover,.sad-search-icon:hover, .entry-meta a:hover, .front-slider-block .banner-title a:hover, .post-info-wrap .entry-meta a:hover, .single .sad-single-related-posts .entry-title a:hover, .breadcrumbs .trail-items li a:hover, .wrap-label i,.has-thumbnail .post-info-wrap .entry-title a:hover,.front-slider-block .post-info-wrap .entry-title a:hover,#top-footer a:hover{ color: ' . esc_attr( $sophia_after_dark_primary_color ) . "}\n";
$output_css .= ".widget_search .search-submit,.widget_search .search-submit:hover,.navigation.pagination .nav-links .page-numbers.current, .navigation.pagination .nav-links a.page-numbers:hover, .error-404.not-found, .sophia_after_dark_social_media a:hover, .custom-header,.widget_tag_cloud .tagcloud a:hover,.widget.widget_tag_cloud a:hover { border-color: ". esc_attr( $sophia_after_dark_primary_color ) ."}\n"; $output_css .= '.widget_search .search-submit,.widget_search .search-submit:hover,.navigation.pagination .nav-links .page-numbers.current, .navigation.pagination .nav-links a.page-numbers:hover, .error-404.not-found, .sophia_after_dark_social_media a:hover, .custom-header,.widget_tag_cloud .tagcloud a:hover,.widget.widget_tag_cloud a:hover { border-color: ' . esc_attr( $sophia_after_dark_primary_color ) . "}\n";
$output_css .= ".front-slider-block .lSAction > a:hover, .top-featured-post-wrap .post-thumbnail .post-number, .post-cats-list a, #site-navigation .menu-item-description, article .post-thumbnail::before, #secondary .widget .widget-title::before, .sad-related-post-title::before, #colophon .widget .widget-title::before, .features-post-title::before, .sad-menu-search .sad-form-wrap .search-form .search-submit,.sad-live-link a,.widget_tag_cloud .tagcloud a:hover,.widget.widget_tag_cloud a:hover { background: ". esc_attr( $sophia_after_dark_primary_color ) ."}\n"; $output_css .= '.front-slider-block .lSAction > a:hover, .top-featured-post-wrap .post-thumbnail .post-number, .post-cats-list a, #site-navigation .menu-item-description, article .post-thumbnail::before, #secondary .widget .widget-title::before, .sad-related-post-title::before, #colophon .widget .widget-title::before, .features-post-title::before, .sad-menu-search .sad-form-wrap .search-form .search-submit,.sad-live-link a,.widget_tag_cloud .tagcloud a:hover,.widget.widget_tag_cloud a:hover { background: ' . esc_attr( $sophia_after_dark_primary_color ) . "}\n";
$output_css .= ".edit-link .post-edit-link,.reply .comment-reply-link,.widget_search .search-submit, .sad-menu-search .sad-form-wrap .search-form .search-submit:hover, article.sticky::before{ background: ". esc_attr( $sophia_after_dark_primary_color ) ."}\n"; $output_css .= '.edit-link .post-edit-link,.reply .comment-reply-link,.widget_search .search-submit, .sad-menu-search .sad-form-wrap .search-form .search-submit:hover, article.sticky::before{ background: ' . esc_attr( $sophia_after_dark_primary_color ) . "}\n";
$output_css .= ".sad-menu-search .sad-form-wrap .search-form .search-field:focus{ outline-color: ". esc_attr( $sophia_after_dark_primary_color ) ."}\n"; $output_css .= '.sad-menu-search .sad-form-wrap .search-form .search-field:focus{ outline-color: ' . esc_attr( $sophia_after_dark_primary_color ) . "}\n";
$slider_bg_image = get_theme_mod( 'sophia_after_dark_slider_bg_image' ); $slider_bg_image = get_theme_mod( 'sophia_after_dark_slider_bg_image' );
if ( ! empty( $slider_bg_image ) ) { if ( ! empty( $slider_bg_image ) ) {
$output_css .= ".front-slider-wrapper{background: url(". esc_url( $slider_bg_image ) .") no-repeat fixed center center/cover}\n"; $output_css .= '.front-slider-wrapper{background: url(' . esc_url( $slider_bg_image ) . ") no-repeat fixed center center/cover}\n";
} }
$refine_output_css = sophia_after_dark_css_strip_whitespace( $output_css ); $refine_output_css = sophia_after_dark_css_strip_whitespace( $output_css );

View File

@@ -65,7 +65,6 @@ function sophia_after_dark_pingback_header() {
if ( is_singular() && pings_open() ) { if ( is_singular() && pings_open() ) {
echo '<link rel="pingback" href="', esc_url( get_bloginfo( 'pingback_url' ) ), '">'; echo '<link rel="pingback" href="', esc_url( get_bloginfo( 'pingback_url' ) ), '">';
} }
} }
add_action( 'wp_head', 'sophia_after_dark_pingback_header' ); add_action( 'wp_head', 'sophia_after_dark_pingback_header' );
/*-----------------------------------------------------------------------------------------------------------------------*/ /*-----------------------------------------------------------------------------------------------------------------------*/
@@ -136,21 +135,25 @@ function sophia_after_dark_scripts(): void {
$v = wp_get_theme()->get( 'Version' ); $v = wp_get_theme()->get( 'Version' );
$dir = get_template_directory_uri(); $dir = get_template_directory_uri();
wp_enqueue_style('sophia-after-dark-fonts', sophia_after_dark_fonts_url(), [], null); wp_enqueue_style( 'sophia-after-dark-fonts', sophia_after_dark_fonts_url(), array(), null );
wp_enqueue_style('lightslider-style', "$dir/assets/library/lightslider/css/lightslider.min.css", [], null); wp_enqueue_style( 'lightslider-style', "$dir/assets/library/lightslider/css/lightslider.min.css", array(), null );
wp_enqueue_style('animate', "$dir/assets/library/animate/animate.min.css", [], '3.5.1'); wp_enqueue_style( 'animate', "$dir/assets/library/animate/animate.min.css", array(), '3.5.1' );
wp_enqueue_style('sophia-after-dark-style', get_stylesheet_uri(), [], $v); wp_enqueue_style( 'sophia-after-dark-style', get_stylesheet_uri(), array(), $v );
wp_enqueue_style('sophia-after-dark-responsive-style', "$dir/assets/css/sad-responsive.css", [], $v); wp_enqueue_style( 'sophia-after-dark-responsive-style', "$dir/assets/css/sad-responsive.css", array(), $v );
wp_enqueue_script('sophia-after-dark-combine-scripts', "$dir/assets/js/sad-combine-scripts.js", ['jquery'], $v, true); wp_enqueue_script( 'sophia-after-dark-combine-scripts', "$dir/assets/js/sad-combine-scripts.js", array( 'jquery' ), $v, true );
wp_enqueue_script('sophia-after-dark-navigation', "$dir/assets/js/navigation.js", [], $v, true); wp_enqueue_script( 'sophia-after-dark-navigation', "$dir/assets/js/navigation.js", array(), $v, true );
wp_enqueue_script('sophia-after-dark-skip-link-focus-fix', "$dir/assets/js/skip-link-focus-fix.js", [], $v, true); wp_enqueue_script( 'sophia-after-dark-skip-link-focus-fix', "$dir/assets/js/skip-link-focus-fix.js", array(), $v, true );
wp_enqueue_script('sophia-after-dark-custom-scripts', "$dir/assets/js/sad-custom-scripts.js", ['jquery'], $v, true); wp_enqueue_script( 'sophia-after-dark-custom-scripts', "$dir/assets/js/sad-custom-scripts.js", array( 'jquery' ), $v, true );
wp_localize_script('sophia-after-dark-custom-scripts', 'sophia_after_darkObject', [ wp_localize_script(
'sophia-after-dark-custom-scripts',
'sophia_after_darkObject',
array(
'menu_sticky' => get_theme_mod( 'sophia_after_dark_enable_sticky_menu', true ) ? 'on' : 'off', 'menu_sticky' => get_theme_mod( 'sophia_after_dark_enable_sticky_menu', true ) ? 'on' : 'off',
'wow_effect' => get_theme_mod( 'sophia_after_dark_enable_wow_animation', true ) ? 'on' : 'off', 'wow_effect' => get_theme_mod( 'sophia_after_dark_enable_wow_animation', true ) ? 'on' : 'off',
]); )
);
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' ); wp_enqueue_script( 'comment-reply' );
@@ -170,7 +173,30 @@ if ( ! function_exists( 'sophia_after_dark_fork_awesome_social_icon_array' ) ) :
*/ */
function sophia_after_dark_fork_awesome_social_icon_array() { function sophia_after_dark_fork_awesome_social_icon_array() {
return array( return array(
"fa fa-facebook-square","fa fa-facebook-f","fa fa-facebook","fa fa-facebook-official","fa fa-twitter-square","fa fa-twitter","fa fa-yahoo","fa fa-google","fa fa-google-wallet","fa fa-google-plus-circle","fa fa-google-plus-official","fa fa-instagram","fa fa-linkedin-square","fa fa-linkedin","fa fa-pinterest-p","fa fa-pinterest","fa fa-pinterest-square","fa fa-google-plus-square","fa fa-google-plus","fa fa-youtube-square","fa fa-youtube","fa fa-youtube-play","fa fa-vimeo","fa fa-vimeo-square", 'fa fa-facebook-square',
'fa fa-facebook-f',
'fa fa-facebook',
'fa fa-facebook-official',
'fa fa-twitter-square',
'fa fa-twitter',
'fa fa-yahoo',
'fa fa-google',
'fa fa-google-wallet',
'fa fa-google-plus-circle',
'fa fa-google-plus-official',
'fa fa-instagram',
'fa fa-linkedin-square',
'fa fa-linkedin',
'fa fa-pinterest-p',
'fa fa-pinterest',
'fa fa-pinterest-square',
'fa fa-google-plus-square',
'fa fa-google-plus',
'fa fa-youtube-square',
'fa fa-youtube',
'fa fa-youtube-play',
'fa fa-vimeo',
'fa fa-vimeo-square',
); );
} }
@@ -183,7 +209,8 @@ if ( ! function_exists( 'sophia_after_dark_social_media_content' ) ) :
* function to display the social icons * function to display the social icons
*/ */
function sophia_after_dark_social_media_content() { function sophia_after_dark_social_media_content() {
$defaults_icons = json_encode( array( $defaults_icons = json_encode(
array(
array( array(
'social_icon' => 'fa fa-twitter', 'social_icon' => 'fa fa-twitter',
'social_url' => '#', 'social_url' => '#',
@@ -191,7 +218,7 @@ if ( ! function_exists( 'sophia_after_dark_social_media_content' ) ) :
array( array(
'social_icon' => 'fa fa-pinterest', 'social_icon' => 'fa fa-pinterest',
'social_url' => '#', 'social_url' => '#',
) ),
) )
); );
$sophia_after_dark_social_icons = get_theme_mod( 'sophia_after_dark_social_icons', $defaults_icons ); $sophia_after_dark_social_icons = get_theme_mod( 'sophia_after_dark_social_icons', $defaults_icons );
@@ -344,26 +371,25 @@ if ( ! function_exists( 'sophia_after_dark_css_strip_whitespace' ) ) :
* *
* @since 1.0.0 * @since 1.0.0
*/ */
function sophia_after_dark_css_strip_whitespace( $css ) { function sophia_after_dark_css_strip_whitespace( $css ) {
$replace = array( $replace = array(
"#/\*.*?\*/#s" => "", // Strip C style comments. '#/\*.*?\*/#s' => '', // Strip C style comments.
"#\s\s+#" => " ", // Strip excess whitespace. '#\s\s+#' => ' ', // Strip excess whitespace.
); );
$search = array_keys( $replace ); $search = array_keys( $replace );
$css = preg_replace( $search, $replace, $css ); $css = preg_replace( $search, $replace, $css );
$replace = array( $replace = array(
": " => ":", ': ' => ':',
"; " => ";", '; ' => ';',
" {" => "{", ' {' => '{',
" }" => "}", ' }' => '}',
", " => ",", ', ' => ',',
"{ " => "{", '{ ' => '{',
";}" => "}", // Strip optional semicolons. ';}' => '}', // Strip optional semicolons.
",\n" => ",", // Don't wrap multiple selectors. ",\n" => ',', // Don't wrap multiple selectors.
"\n}" => "}", // Don't wrap closing braces. "\n}" => '}', // Don't wrap closing braces.
"} " => "}\n", // Put each rule on it's own line. '} ' => "}\n", // Put each rule on it's own line.
); );
$search = array_keys( $replace ); $search = array_keys( $replace );
$css = str_replace( $search, $replace, $css ); $css = str_replace( $search, $replace, $css );
@@ -377,7 +403,6 @@ endif;
/** /**
* Archive title prefix * Archive title prefix
*
*/ */
$archive_title_prefix_option = get_theme_mod( 'sophia_after_dark_enable_archive_title_prefix', true ); $archive_title_prefix_option = get_theme_mod( 'sophia_after_dark_enable_archive_title_prefix', true );

View File

@@ -20,7 +20,8 @@ if ( ! function_exists( 'sophia_after_dark_posted_on' ) ) :
$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">%4$s</time>'; $time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">%4$s</time>';
} }
$time_string = sprintf( $time_string, $time_string = sprintf(
$time_string,
esc_attr( get_the_date( DATE_W3C ) ), esc_attr( get_the_date( DATE_W3C ) ),
esc_html( get_the_date() ), esc_html( get_the_date() ),
esc_attr( get_the_modified_date( DATE_W3C ) ), esc_attr( get_the_modified_date( DATE_W3C ) ),
@@ -33,7 +34,6 @@ if ( ! function_exists( 'sophia_after_dark_posted_on' ) ) :
); );
echo '<span class="posted-on">' . $posted_on . '</span>'; // WPCS: XSS OK. echo '<span class="posted-on">' . $posted_on . '</span>'; // WPCS: XSS OK.
} }
endif; endif;
@@ -48,7 +48,6 @@ if ( ! function_exists( 'sophia_after_dark_posted_by' ) ) :
function sophia_after_dark_posted_by() { function sophia_after_dark_posted_by() {
echo '<span class="byline"><span class="author vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author() ) . '</a></span></span>'; // WPCS: XSS OK. echo '<span class="byline"><span class="author vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author() ) . '</a></span></span>'; // WPCS: XSS OK.
} }
endif; endif;
@@ -205,11 +204,16 @@ if ( ! function_exists( 'sophia_after_dark_post_thumbnail' ) ) :
<a class="post-thumbnail" href="<?php the_permalink(); ?>" aria-hidden="true" tabindex="-1"> <a class="post-thumbnail" href="<?php the_permalink(); ?>" aria-hidden="true" tabindex="-1">
<?php <?php
the_post_thumbnail( $thumbnail_size, array( the_post_thumbnail(
'alt' => the_title_attribute( array( $thumbnail_size,
array(
'alt' => the_title_attribute(
array(
'echo' => false, 'echo' => false,
) ), )
) ); ),
)
);
?> ?>
</a> </a>
@@ -243,7 +247,8 @@ if ( ! function_exists( 'sophia_after_dark_article_categories_list' ) ) :
<?php <?php
} }
?> ?>
</div><?php </div>
<?php
} }
} }

View File

@@ -32,26 +32,26 @@ class sophia_after_dark_Author_Info extends WP_widget {
'widget_title' => array( 'widget_title' => array(
'sophia_after_dark_widgets_name' => 'widget_title', 'sophia_after_dark_widgets_name' => 'widget_title',
'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ),
'sophia_after_dark_widgets_field_type' => 'text' 'sophia_after_dark_widgets_field_type' => 'text',
), ),
'user_name' => array( 'user_name' => array(
'sophia_after_dark_widgets_name' => 'user_name', 'sophia_after_dark_widgets_name' => 'user_name',
'sophia_after_dark_widgets_title' => __( 'User Name', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'User Name', 'sophia-after-dark' ),
'sophia_after_dark_widgets_field_type' => 'text' 'sophia_after_dark_widgets_field_type' => 'text',
), ),
'user_id' => array( 'user_id' => array(
'sophia_after_dark_widgets_name' => 'user_id', 'sophia_after_dark_widgets_name' => 'user_id',
'sophia_after_dark_widgets_title' => __( 'Select Author', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Select Author', 'sophia-after-dark' ),
'sophia_after_dark_widgets_default' => '', 'sophia_after_dark_widgets_default' => '',
'sophia_after_dark_widgets_field_type' => 'user_dropdown' 'sophia_after_dark_widgets_field_type' => 'user_dropdown',
), ),
'user_thumb' => array( 'user_thumb' => array(
'sophia_after_dark_widgets_name' => 'user_thumb', 'sophia_after_dark_widgets_name' => 'user_thumb',
'sophia_after_dark_widgets_title' => __( 'Author Image', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Author Image', 'sophia-after-dark' ),
'sophia_after_dark_widgets_field_type' => 'upload' 'sophia_after_dark_widgets_field_type' => 'upload',
), ),
); );

View File

@@ -33,7 +33,7 @@ class sophia_after_dark_Latest_Posts extends WP_widget {
'widget_title' => array( 'widget_title' => array(
'sophia_after_dark_widgets_name' => 'widget_title', 'sophia_after_dark_widgets_name' => 'widget_title',
'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ),
'sophia_after_dark_widgets_field_type' => 'text' 'sophia_after_dark_widgets_field_type' => 'text',
), ),
'widget_post_order' => array( 'widget_post_order' => array(
@@ -44,15 +44,15 @@ class sophia_after_dark_Latest_Posts extends WP_widget {
'sophia_after_dark_widgets_field_options' => array( 'sophia_after_dark_widgets_field_options' => array(
'default' => __( 'Default Order', 'sophia-after-dark' ), 'default' => __( 'Default Order', 'sophia-after-dark' ),
'random' => __( 'Random Order', 'sophia-after-dark' ), 'random' => __( 'Random Order', 'sophia-after-dark' ),
) ),
), ),
'widget_post_count' => array( 'widget_post_count' => array(
'sophia_after_dark_widgets_name' => 'widget_post_count', 'sophia_after_dark_widgets_name' => 'widget_post_count',
'sophia_after_dark_widgets_title' => __( 'Post Count', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Post Count', 'sophia-after-dark' ),
'sophia_after_dark_widgets_default' => '5', 'sophia_after_dark_widgets_default' => '5',
'sophia_after_dark_widgets_field_type' => 'number' 'sophia_after_dark_widgets_field_type' => 'number',
) ),
); );
return $fields; return $fields;

View File

@@ -33,8 +33,8 @@ class sophia_after_dark_Social_Media extends WP_widget {
'widget_title' => array( 'widget_title' => array(
'sophia_after_dark_widgets_name' => 'widget_title', 'sophia_after_dark_widgets_name' => 'widget_title',
'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ), 'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ),
'sophia_after_dark_widgets_field_type' => 'text' 'sophia_after_dark_widgets_field_type' => 'text',
) ),
); );
return $fields; return $fields;
} }

View File

@@ -5,7 +5,6 @@
* @package Sophia After Dark * @package Sophia After Dark
* @since 1.0.0 * @since 1.0.0
*/ */
function sophia_after_dark_widgets_show_widget_field( $instance = '', $widget_field = '', $sophia_after_dark_widget_field_value = '' ) { function sophia_after_dark_widgets_show_widget_field( $instance = '', $widget_field = '', $sophia_after_dark_widget_field_value = '' ) {
extract( $widget_field ); extract( $widget_field );
@@ -66,10 +65,12 @@ function sophia_after_dark_widgets_show_widget_field( $instance = '', $widget_fi
<p> <p>
<label for="<?php echo esc_attr( $instance->get_field_id( $sophia_after_dark_widgets_name ) ); ?>"><?php echo esc_html( $sophia_after_dark_widgets_title ); ?>:</label> <label for="<?php echo esc_attr( $instance->get_field_id( $sophia_after_dark_widgets_name ) ); ?>"><?php echo esc_html( $sophia_after_dark_widgets_title ); ?>:</label>
<?php <?php
$dropdown_args = wp_parse_args( array( $dropdown_args = wp_parse_args(
array(
'show_option_none' => __( '- - Select User - -', 'sophia-after-dark' ), 'show_option_none' => __( '- - Select User - -', 'sophia-after-dark' ),
'selected' => esc_attr( $sophia_after_dark_widget_field_value ), 'selected' => esc_attr( $sophia_after_dark_widget_field_value ),
) ); )
);
$dropdown_args['echo'] = false; $dropdown_args['echo'] = false;
@@ -105,7 +106,7 @@ function sophia_after_dark_widgets_show_widget_field( $instance = '', $widget_fi
* upload file field * upload file field
*/ */
case 'upload': case 'upload':
$image = $image_class = ""; $image = $image_class = '';
if ( $sophia_after_dark_widget_field_value ) { if ( $sophia_after_dark_widget_field_value ) {
$image = '<img src="' . esc_url( $sophia_after_dark_widget_field_value ) . '" style="max-width:100%;"/>'; $image = '<img src="' . esc_url( $sophia_after_dark_widget_field_value ) . '" style="max-width:100%;"/>';
$image_class = ' hidden'; $image_class = ' hidden';
@@ -126,7 +127,7 @@ function sophia_after_dark_widgets_show_widget_field( $instance = '', $widget_fi
<button type="button" class="button sad-delete-button align-left"><?php esc_html_e( 'Remove', 'sophia-after-dark' ); ?></button> <button type="button" class="button sad-delete-button align-left"><?php esc_html_e( 'Remove', 'sophia-after-dark' ); ?></button>
<button type="button" class="button sad-upload-button alignright"><?php esc_html_e( 'Select Image', 'sophia-after-dark' ); ?></button> <button type="button" class="button sad-upload-button alignright"><?php esc_html_e( 'Select Image', 'sophia-after-dark' ); ?></button>
<input name="<?php echo esc_attr( $instance->get_field_name( $sophia_after_dark_widgets_name ) ); ?>" id="<?php echo esc_attr( $instance->get_field_id( $sophia_after_dark_widgets_name ) ); ?>" class="upload-id" type="hidden" value="<?php echo esc_url( $sophia_after_dark_widget_field_value ) ?>"/> <input name="<?php echo esc_attr( $instance->get_field_name( $sophia_after_dark_widgets_name ) ); ?>" id="<?php echo esc_attr( $instance->get_field_id( $sophia_after_dark_widgets_name ) ); ?>" class="upload-id" type="hidden" value="<?php echo esc_url( $sophia_after_dark_widget_field_value ); ?>"/>
</div> </div>
<?php if ( isset( $sophia_after_dark_widgets_description ) ) { ?> <?php if ( isset( $sophia_after_dark_widgets_description ) ) { ?>

View File

@@ -17,7 +17,8 @@ function sophia_after_dark_widgets_init() {
* *
* @since 1.0.0 * @since 1.0.0
*/ */
register_sidebar( array( register_sidebar(
array(
'name' => esc_html__( 'Sidebar', 'sophia-after-dark' ), 'name' => esc_html__( 'Sidebar', 'sophia-after-dark' ),
'id' => 'sidebar-1', 'id' => 'sidebar-1',
'description' => esc_html__( 'Add widgets here.', 'sophia-after-dark' ), 'description' => esc_html__( 'Add widgets here.', 'sophia-after-dark' ),
@@ -26,14 +27,16 @@ function sophia_after_dark_widgets_init() {
'after_widget' => '</section>', 'after_widget' => '</section>',
'before_title' => '<h4 class="widget-title">', 'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>', 'after_title' => '</h4>',
) ); )
);
/** /**
* Register Header Ads Section * Register Header Ads Section
* *
* @since 1.0.0 * @since 1.0.0
*/ */
register_sidebar( array( register_sidebar(
array(
'name' => esc_html__( 'Header Ads Section', 'sophia-after-dark' ), 'name' => esc_html__( 'Header Ads Section', 'sophia-after-dark' ),
'id' => 'header-ads-section', 'id' => 'header-ads-section',
'description' => esc_html__( 'Add MT: Ads Banner widgets here.', 'sophia-after-dark' ), 'description' => esc_html__( 'Add MT: Ads Banner widgets here.', 'sophia-after-dark' ),
@@ -42,7 +45,8 @@ function sophia_after_dark_widgets_init() {
'after_widget' => '</section>', 'after_widget' => '</section>',
'before_title' => '<h4 class="widget-title">', 'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>', 'after_title' => '</h4>',
) ); )
);
/** /**
* Register 4 different footer area * Register 4 different footer area
@@ -50,7 +54,9 @@ function sophia_after_dark_widgets_init() {
* @since 1.0.0 * @since 1.0.0
*/ */
register_sidebars( 4 , array( register_sidebars(
4,
array(
'name' => esc_html__( 'Footer %d', 'sophia-after-dark' ), 'name' => esc_html__( 'Footer %d', 'sophia-after-dark' ),
'id' => 'footer-sidebar', 'id' => 'footer-sidebar',
'description' => esc_html__( 'Added widgets are display at Footer Widget Area.', 'sophia-after-dark' ), 'description' => esc_html__( 'Added widgets are display at Footer Widget Area.', 'sophia-after-dark' ),
@@ -58,7 +64,8 @@ function sophia_after_dark_widgets_init() {
'after_widget' => '</section>', 'after_widget' => '</section>',
'before_title' => '<h4 class="widget-title">', 'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>', 'after_title' => '</h4>',
) ); )
);
// Author Info // Author Info
register_widget( 'sophia_after_dark_Author_Info' ); register_widget( 'sophia_after_dark_Author_Info' );

16
phpcs.xml Normal file
View File

@@ -0,0 +1,16 @@
<?xml version="1.0"?>
<ruleset name="WordPress Theme Standards">
<description>WordPress Coding Standards</description>
<rule ref="WordPress-Core" />
<rule ref="WordPress-Docs" />
<rule ref="WordPress-Extra" />
<arg name="extensions" value="php"/>
<file>.</file>
<exclude-pattern>*/vendor/*</exclude-pattern>
<exclude-pattern>*/node_modules/*</exclude-pattern>
<exclude-pattern>*/assets/*</exclude-pattern>
<exclude-pattern>*/.git/*</exclude-pattern>
<exclude-pattern>*.min.js</exclude-pattern>
<exclude-pattern>*.css</exclude-pattern>
<exclude-pattern>*.js</exclude-pattern>
</ruleset>

View File

@@ -42,7 +42,7 @@ $layout = get_theme_mod( 'sophia_after_dark_widget_area_layout', 'column-three'
} }
// Footer widget 3 (only for three or four column layouts) // Footer widget 3 (only for three or four column layouts)
if ( in_array( $layout, [ 'column-three', 'column-four' ], true ) ) { if ( in_array( $layout, array( 'column-three', 'column-four' ), true ) ) {
echo '<div class="sad-footer-widget wow fadeInLeft" data-wow-duration="0.9s">'; echo '<div class="sad-footer-widget wow fadeInLeft" data-wow-duration="0.9s">';
dynamic_sidebar( 'footer-sidebar-3' ); dynamic_sidebar( 'footer-sidebar-3' );
echo '</div>'; echo '</div>';

View File

@@ -12,10 +12,12 @@
<div class="entry-content"> <div class="entry-content">
<?php <?php
the_content(); the_content();
wp_link_pages( array( wp_link_pages(
array(
'before' => '<div class="page-links">' . esc_html__( 'Pages:', 'sophia-after-dark' ), 'before' => '<div class="page-links">' . esc_html__( 'Pages:', 'sophia-after-dark' ),
'after' => '</div>', 'after' => '</div>',
) ); )
);
?> ?>
</div> </div>

View File

@@ -30,13 +30,15 @@ $post_class = has_post_thumbnail() ? 'has-thumbnail wow fadeInUp' : 'no-thumbnai
<?php endif; ?> <?php endif; ?>
<header class="entry-header"> <header class="entry-header">
<?php the_title( <?php
the_title(
sprintf( sprintf(
'<h2 class="entry-title"><a href="%s" rel="bookmark">', '<h2 class="entry-title"><a href="%s" rel="bookmark">',
esc_url( get_permalink() ) esc_url( get_permalink() )
), ),
'</a></h2>' '</a></h2>'
); ?> );
?>
</header> </header>
<div class="entry-content"> <div class="entry-content">
@@ -44,13 +46,15 @@ $post_class = has_post_thumbnail() ? 'has-thumbnail wow fadeInUp' : 'no-thumbnai
<?php the_excerpt(); ?> <?php the_excerpt(); ?>
<?php elseif ( 'content' === $post_content_type ) : ?> <?php elseif ( 'content' === $post_content_type ) : ?>
<?php <?php
the_content( sprintf( the_content(
sprintf(
wp_kses( wp_kses(
__( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ), __( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ),
[ 'span' => [ 'class' => [] ] ] array( 'span' => array( 'class' => array() ) )
), ),
get_the_title() get_the_title()
) ); )
);
?> ?>
<?php endif; ?> <?php endif; ?>
</div> </div>

View File

@@ -31,18 +31,22 @@ $post_class = has_post_thumbnail() ? 'has-thumbnail' : 'no-thumbnail';
<div class="entry-content"> <div class="entry-content">
<?php <?php
the_content( sprintf( the_content(
sprintf(
wp_kses( wp_kses(
__( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ), __( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ),
[ 'span' => [ 'class' => [] ] ] array( 'span' => array( 'class' => array() ) )
), ),
get_the_title() get_the_title()
) ); )
);
wp_link_pages( [ wp_link_pages(
array(
'before' => '<div class="page-links">' . esc_html__( 'Pages:', 'sophia-after-dark' ), 'before' => '<div class="page-links">' . esc_html__( 'Pages:', 'sophia-after-dark' ),
'after' => '</div>', 'after' => '</div>',
] ); )
);
?> ?>
</div> </div>

View File

@@ -46,13 +46,15 @@ if ( $current_post >= 3 || 'sad-archive--masonry-style' !== $archive_style ) {
if ( 'excerpt' === $post_content_type ) { if ( 'excerpt' === $post_content_type ) {
the_excerpt(); the_excerpt();
} elseif ( 'content' === $post_content_type ) { } elseif ( 'content' === $post_content_type ) {
the_content( sprintf( the_content(
sprintf(
wp_kses( wp_kses(
__( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ), __( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'sophia-after-dark' ),
[ 'span' => [ 'class' => [] ] ] array( 'span' => array( 'class' => array() ) )
), ),
get_the_title() get_the_title()
) ); )
);
} }
?> ?>
</div> </div>

View File

@@ -6,7 +6,7 @@
* @since 1.0.0 * @since 1.0.0
*/ */
$post_class = has_post_thumbnail() ? "has-thumbnail wow fadeInUp" : "no-thumbnail wow fadeInUp"; $post_class = has_post_thumbnail() ? 'has-thumbnail wow fadeInUp' : 'no-thumbnail wow fadeInUp';
?> ?>
<article id="post-<?php the_ID(); ?>" <?php post_class( $post_class ); ?>> <article id="post-<?php the_ID(); ?>" <?php post_class( $post_class ); ?>>
@@ -20,7 +20,7 @@ $post_class = has_post_thumbnail() ? "has-thumbnail wow fadeInUp" : "no-thumbnai
<?php sophia_after_dark_article_categories_list(); ?> <?php sophia_after_dark_article_categories_list(); ?>
</div> </div>
<?php if ( "post" === get_post_type() ) : ?> <?php if ( 'post' === get_post_type() ) : ?>
<div class="entry-cat"> <div class="entry-cat">
<?php <?php
sophia_after_dark_posted_on(); sophia_after_dark_posted_on();

View File

@@ -8,16 +8,16 @@
global $post; global $post;
$related_post_id = get_the_ID(); $related_post_id = get_the_ID();
$get_categories = get_the_terms( $related_post_id, 'category' ); $get_categories = get_the_terms( $related_post_id, 'category' );
$selected_cat = ! empty( $get_categories ) && is_array( $get_categories ) ? wp_list_pluck( $get_categories, 'term_id' ) : []; $selected_cat = ! empty( $get_categories ) && is_array( $get_categories ) ? wp_list_pluck( $get_categories, 'term_id' ) : array();
$related_posts_count = apply_filters( 'sophia_after_dark_related_posts_count', 3 ); $related_posts_count = apply_filters( 'sophia_after_dark_related_posts_count', 3 );
$related_posts_title = apply_filters( 'sophia_after_dark_related_posts_section_title', __( 'Related Posts', 'sophia-after-dark' ) ); $related_posts_title = apply_filters( 'sophia_after_dark_related_posts_section_title', __( 'Related Posts', 'sophia-after-dark' ) );
$related_posts_args = [ $related_posts_args = array(
'posts_per_page' => absint( $related_posts_count ), 'posts_per_page' => absint( $related_posts_count ),
'post__not_in' => [ $related_post_id ], 'post__not_in' => array( $related_post_id ),
'category__in' => $selected_cat, 'category__in' => $selected_cat,
]; );
$related_posts_query = new WP_Query( $related_posts_args ); $related_posts_query = new WP_Query( $related_posts_args );