D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
thread-self
/
root
/
proc
/
thread-self
/
cwd
/
wp-content
/
themes
/
aeen
/
inc
/
Filename :
general.php
back
Copy
<?php /** * @author RadiusTheme * @since 1.0 * @version 1.0 */ namespace radiustheme\aeen; use radiustheme\aeen\inc\RDTheme; use radiustheme\aeen\inc\Helper; class General_Setup { public function __construct() { add_action( 'after_setup_theme', array( $this, 'theme_setup' ) ); add_action( 'widgets_init', array( $this, 'register_sidebars' ) ); add_filter( 'body_class', array( $this, 'body_classes' ) ); add_filter( 'post_class', array( $this, 'post_classes' ) ); add_action( 'wp_head', array( $this, 'noscript_hide_preloader' ), 1 ); add_filter( 'get_search_form', array( $this, 'search_form' ) ); add_filter( 'comment_form_fields', array( $this, 'move_textarea_to_bottom' ) ); add_filter( 'excerpt_more', array( $this, 'excerpt_more' ) ); add_filter( 'wp_kses_allowed_html', array($this, 'aeen_kses_allowed_html' ), 10, 2 ); add_filter( 'elementor/widgets/wordpress/widget_args', array( $this, 'elementor_widget_args' ) ); add_action( 'pre_get_posts', array( $this, 'wp_team_query' ), 999 ); add_action( 'pre_get_posts', array( $this, 'wp_case_study_query' ), 999 ); add_action( 'wp_head', array( $this, 'aeen_pingback_header' ), 996 ); add_action( 'wp_head', array( $this, 'aeen_siteicon_header' ), 997 ); add_action( 'wp_admin', array( $this, 'aeen_siteicon_header' ), 998 ); add_action( 'site_prealoader', array( $this, 'preloader_svg_thumb' ) ); add_filter( 'wpcf7_autop_or_not', '__return_false' ); // cf7 wptop add_filter( 'register_post_type_args', array( $this, 'update_aeen_custom_post_slug' ), 10, 2 ); add_action( 'template_redirect', array( $this, 'w3c_validator' ) ); } /** * Add a pingback url auto-discovery header for single posts, pages, or attachments. */ public function aeen_pingback_header() { if ( is_singular() && pings_open() ) { printf( '<link rel="pingback" href="%s">', esc_url( get_bloginfo( 'pingback_url' ) ) ); } } /** * If empty site icon then the fallback */ public function aeen_siteicon_header() { if ( ! ( function_exists( 'has_site_icon' ) ) ) { echo '<link rel="shortcut icon">'; } } public function wp_team_query( $query ) { if ( ! is_admin() ) { if ( is_post_type_archive( "aeen_team" ) || is_tax( "aeen_team_category" ) ) { $query->set( 'posts_per_page', RDTheme::$options['team_archive_number']); } } } public function wp_case_study_query( $query ) { if ( ! is_admin() ) { if ( is_post_type_archive( "aeen_case_study" ) || is_tax( "aeen_case_study_category" ) ) { $query->set( 'posts_per_page', RDTheme::$options['case_study_archive_number']); } } } public function wp_projects_query( $query ) { if ( ! is_admin() ) { if ( is_post_type_archive( "aeen_projects" ) || is_tax( "aeen_projects_category" ) ) { $query->set( 'posts_per_page', RDTheme::$options['projects_archive_number']); } } } public function wp_services_query( $query ) { if ( ! is_admin() ) { if ( is_post_type_archive( "aeen_services" ) || is_tax( "aeen_services_category" ) ) { $query->set( 'posts_per_page', RDTheme::$options['services_archive_number']); } } } public function remove_span_form_cf7( $content ) { $content = preg_replace('/<(span).*?class="\s*(?:.*\s)?wpcf7-form-control-wrap(?:\s[^"]+)?\s*"[^\>]*>(.*)<\/\1>/i', '\2', $content); return $content; } public function theme_setup() { $aeen = AEEN_THEME_PREFIX; // Theme supports add_theme_support( 'title-tag' ); add_theme_support( 'post-thumbnails' ); add_theme_support( 'automatic-feed-links' ); add_theme_support( 'wp-block' ); add_theme_support( 'html5', array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption' ) ); add_editor_style(); add_theme_support( 'admin-bar', array( 'callback' => '__return_false' ) ); remove_theme_support( 'widgets-block-editor' ); // for gutenberg support add_theme_support( 'align-wide' ); add_theme_support( 'editor-color-palette', array( array( 'name' => esc_html__( 'Primary', 'aeen' ), 'slug' => 'aeen-primary', 'color' => '#212534', ), array( 'name' => esc_html__('Secondary', 'aeen' ), 'slug' => 'aeen-secondary', 'color' => '#f2a14b', ), array( 'name' => esc_html__('Light', 'aeen' ), 'slug' => 'aeen-light', 'color' => '#ffffff', ), array( 'name' => esc_html__('Black', 'aeen' ), 'slug' => 'aeen-black', 'color' => '#000000', ), array( 'name' => esc_html__('Dark', 'aeen' ), 'slug' => 'aeen-dark', 'color' => '#666666', ), ) ); add_theme_support( 'editor-font-sizes', array( array( 'name' => esc_html__('Small', 'aeen' ), 'size' => 12, 'slug' => 'small' ), array( 'name' => esc_html__('Normal', 'aeen' ), 'size' => 16, 'slug' => 'normal' ), array( 'name' => esc_html__('Large', 'aeen' ), 'size' => 36, 'slug' => 'large' ), array( 'name' => esc_html__('Huge', 'aeen' ), 'size' => 60, 'slug' => 'huge' ) ) ); add_theme_support( 'wp-block-styles' ); add_theme_support( 'responsive-embeds' ); add_theme_support( 'editor-styles'); // Image sizes add_image_size( "aeen-thumb-size1", 370, 300, true ); add_image_size( "aeen-thumb-size2", 85, 70, true ); add_image_size( "aeen-homeblog1", 370, 280, true ); add_image_size( "aeen-size-team2", 370, 478, true ); add_image_size( "aeen-size-casestudy2", 570, 600, true ); add_image_size( "aeen-size-casestudy3", 570, 330, true ); add_image_size( "aeen-case-style3-thumb", 614, 465, true ); add_image_size( "aeen-case-style6-thumb", 446, 545, true ); add_image_size( "aeen-practice-single-thumb2", 870, 450, true ); // Register menus register_nav_menus( array( 'primary' => esc_html__( 'Primary', 'aeen' ), 'footer' => esc_html__( 'Footer', 'aeen' ), ) ); // Custom Logo add_theme_support( 'custom-logo', array( 'height' => 65, 'width' => 245, 'flex-height' => true, 'header-text' => array( 'site-title', 'site-description' ), ) ); } public function register_sidebars() { $footer_widget_titles = array( '1' => esc_html__( 'Footer 1 Widget 1', 'aeen' ), '2' => esc_html__( 'Footer 1 Widget 2', 'aeen' ), '3' => esc_html__( 'Footer 1 Widget 3', 'aeen' ), '4' => esc_html__( 'Footer 1 Widget 4', 'aeen' ), ); $footer2_widget_titles = array( '1' => esc_html__( 'Footer 2 Widget 1', 'aeen' ), '2' => esc_html__( 'Footer 2 Widget 2', 'aeen' ), '3' => esc_html__( 'Footer 2 Widget 3', 'aeen' ), '4' => esc_html__( 'Footer 2 Widget 4', 'aeen' ), ); register_sidebar( array( 'name' => esc_html__( 'Sidebar', 'aeen' ), 'id' => 'sidebar', 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<div class="widget-section-heading heading-dark"><h4 class="item-heading">', 'after_title' => '</h4></div>', ) ); for ( $i = 1; $i <= RDTheme::$options['footer1_column']; $i++ ) { if (isset($footer_widget_titles[$i])) { register_sidebar( array( 'name' => $footer_widget_titles[$i], 'id' => 'footer-'. $i, 'before_widget' => '<div id="%1$s" class="footer-widgets %2$s">', 'after_widget' => '</div>', 'before_title' => '<h3 class="footer-widget-heading">', 'after_title' => '</h3>', ) ); } } for ( $i = 1; $i <= 4; $i++ ) { if (isset($footer2_widget_titles[$i])) { register_sidebar( array( 'name' => $footer2_widget_titles[$i], 'id' => 'footer2-'. $i, 'before_widget' => '<div id="%1$s" class="footer-widgets %2$s">', 'after_widget' => '</div>', 'before_title' => '<h3 class="footer-widget-heading">', 'after_title' => '</h3>', ) ); } } register_sidebar( array( 'name' => esc_html__( 'Practice Sidebar', 'aeen' ), 'id' => 'practice-sidebar', 'before_widget' => '<div id="%1$s" class="widget widget-practice %2$s">', 'after_widget' => '</div>', 'before_title' => '<div class="widget-section-heading heading-dark"><h4 class="item-heading">', 'after_title' => '</h4></div>', ) ); register_sidebar( array( 'name' => esc_html__( 'Footer Subscribe', 'aeen' ), 'id' => 'footer-subscribe', 'before_widget' => '<div id="%1$s" class="widget %2$s custom-widget footer-subs">', 'after_widget' => '</div>', 'before_title' => '<span class="hide_subscribe_title">', 'after_title' => '</span>', ) ); } public function body_classes( $classes ) { if ( RDTheme::$options['sticky_header'] == 1 ) { $classes[] = 'sticky-header'; } if ( RDTheme::$transparent_header == '1' && RDTheme::$transparent_header != 'off' ) { $classes[] = 'transparent-header'; } if( is_home() || is_page() || is_archive() || is_search() || is_404() ) { if (RDTheme::$options['page_banner'] != 1 ) { $classes[] = 'page-banner-disable'; } } if (is_single()) { if (RDTheme::$options['single_post_banner'] != 1 ) { $classes[] = 'single-page-banner-disable'; } } $classes[] = 'header-style-'. RDTheme::$header_style; // Sidebar $classes[] = ( RDTheme::$layout == 'full-width' ) ? 'no-sidebar' : 'has-sidebar'; return $classes; } public function post_classes( $classes ) { $post_thumb = ''; if ( has_post_thumbnail() ){ $classes[] = 'aeen-post-thumb'; } return $classes; } public function noscript_hide_preloader(){ // Hide preloader if js is disabled echo '<noscript><style>#preloader{display:none;}</style></noscript>'; } public function scroll_to_top_html(){ // Back-to-top link if ( RDTheme::$options['back_to_top'] ){ echo '<a href="#wrapper" data-type="section-switch" class="scrollup back-top"> <i class="fas fa-angle-double-up"></i> </a>'; } } public function search_form(){ $output = ' <form role="search" method="get" class="search-form" action="' . esc_url( home_url( '/' ) ) . '"> <div class="widget-search"> <div class="input-group stylish-input-group"> <input type="text" class="form-control" placeholder="' . esc_attr__( 'Type Your Search', 'aeen' ) . '" value="' . get_search_query() . '" name="s" /> <span class="input-group-addon"> <button type="submit"> <i class="fas fa-search"></i> </button> </span> </div> </div> </form> '; return $output; } public function move_textarea_to_bottom( $fields ) { $temp = $fields['comment']; unset( $fields['comment'] ); $fields['comment'] = $temp; return $fields; } /*Allow HTML for the kses post*/ public function aeen_kses_allowed_html($tags, $context) { switch($context) { case 'social': $tags = array( 'a' => array('href' => array()), 'b' => array() ); return $tags; case 'allow_link': $tags = array( 'a' => array( 'class' => array(), 'href' => array(), 'rel' => array(), 'title' => array(), 'target' => array(), ), 'b' => array() ); return $tags; case 'alltext_allow': $tags = array( 'a' => array( 'class' => array(), 'href' => array(), 'rel' => array(), 'title' => array(), 'target' => array(), ), 'abbr' => array( 'title' => array(), ), 'b' => array(), 'br' => array(), 'blockquote' => array( 'cite' => array(), ), 'cite' => array( 'title' => array(), ), 'code' => array(), 'del' => array( 'datetime' => array(), 'title' => array(), ), 'dd' => array(), 'div' => array( 'class' => array(), 'title' => array(), 'style' => array(), 'id' => array(), ), 'dl' => array(), 'dt' => array(), 'em' => array(), 'h1' => array(), 'h2' => array(), 'h3' => array(), 'h4' => array(), 'h5' => array(), 'h6' => array(), 'i' => array(), 'img' => array( 'alt' => array(), 'class' => array(), 'height' => array(), 'src' => array(), 'srcset' => array(), 'width' => array(), ), 'li' => array( 'class' => array(), ), 'ol' => array( 'class' => array(), ), 'p' => array( 'class' => array(), ), 'q' => array( 'cite' => array(), 'title' => array(), ), 'span' => array( 'class' => array(), 'title' => array(), 'style' => array(), ), 'strike' => array(), 'strong' => array(), 'ul' => array( 'class' => array(), ), ); return $tags; default: return $tags; } } public function excerpt_more() { return esc_html__( '...', 'aeen' ) ; } public function elementor_widget_args( $args ) { $args['before_widget'] = '<div class="widget single-sidebar padding-bottom1">'; $args['after_widget'] = '</div>'; $args['before_title'] = '<h3>'; $args['after_title'] = '</h3>'; return $args; } function cc_mime_types( $mimes ) { $mimes['svg'] = 'image/svg+xml'; return $mimes; } /* - Aeen Post and taxonomy slug change --------------------------------------------------------*/ public function update_aeen_custom_post_slug( $args, $post_type ) { $prefix = AEEN_THEME_PREFIX; $theme = wp_get_theme(); // gets the current theme if ( 'Aeen' == $theme->name || 'Aeen' == $theme->parent_theme ) { $case_study_slug = RDTheme::$options['single_case_slug']; $practice_slug = RDTheme::$options['single_practice_slug']; $team_slug = RDTheme::$options['single_team_slug']; if ( $prefix.'_case_study' === $post_type ) { $case_study = array( 'rewrite' => array( 'slug' => $case_study_slug, 'with_front' => false ) ); return array_merge( $args, $case_study ); } if ( $prefix.'_practice' === $post_type ) { $practice = array( 'rewrite' => array( 'slug' => $practice_slug, 'with_front' => false ) ); return array_merge( $args, $practice ); } if ( $prefix.'_team' === $post_type ) { $team = array( 'rewrite' => array( 'slug' => $team_slug, 'with_front' => false ) ); return array_merge( $args, $team ); } } return $args; } public function w3c_validator() { /*----------------------------------------------------------------------------------------------------*/ /* W3C validator passing code /*----------------------------------------------------------------------------------------------------*/ ob_start( function( $buffer ){ $buffer = str_replace( array( '<script type="text/javascript">', "<script type='text/javascript'>" ), '<script>', $buffer ); return $buffer; }); ob_start( function( $buffer2 ){ $buffer2 = str_replace( array( "<script type='text/javascript' src" ), '<script src', $buffer2 ); return $buffer2; }); ob_start( function( $buffer3 ){ $buffer3 = str_replace( array( 'type="text/css"', "type='text/css'", 'type="text/css"', ), '', $buffer3 ); return $buffer3; }); ob_start( function( $buffer4 ){ $buffer4 = str_replace( array( '<iframe frameborder="0" scrolling="no" marginheight="0" marginwidth="0"', ), '<iframe', $buffer4 ); return $buffer4; }); ob_start( function( $buffer5 ){ $buffer5 = str_replace( array( 'aria-required="true"', ), '', $buffer5 ); return $buffer5; }); } } new General_Setup;