OwlCyberSecurity - MANAGER
Edit File: functions.php
<?php /** * @author rs-theme * @since 1.0 * @version 1.0 */ update_option( 'DabbleWordPressTheme_lic_Key', '*******' ); if ( ! function_exists( 'dabble_setup' ) ) : /** * Sets up theme defaults and registers support for various WordPress features. * * Note that this function is hooked into the after_setup_theme hook, which * runs before the init hook. The init hook is too late for some features, such * as indicating support for post thumbnails. */ function dabble_setup() { /* * Make theme available for translation. * Translations can be filed in the /languages/ directory. * If you're building a theme based on dabble, use a find and replace * to change 'dabble' to the name of your theme in all the template files. */ load_theme_textdomain( 'dabble', get_template_directory() . '/languages' ); // Add default posts and comments RSS feed links to head. add_theme_support( 'automatic-feed-links' ); /* * Let WordPress manage the document title. * By adding theme support, we declare that this theme does not use a * hard-coded <title> tag in the document head, and expect WordPress to * provide it for us. */ add_theme_support( 'title-tag' ); function dabble_change_excerpt( $text ) { $pos = strrpos( $text, '['); if ($pos === false) { return $text; } return rtrim (substr($text, 0, $pos) ) . '...'; } add_filter('get_the_excerpt', 'dabble_change_excerpt'); // Limit Excerpt Length by number of Words function dabble_custom_excerpt( $limit ) { $excerpt = explode(' ', get_the_excerpt(), $limit); if (count($excerpt)>=$limit) { array_pop($excerpt); $excerpt = implode(" ",$excerpt).'...'; } else { $excerpt = implode(" ",$excerpt); } $excerpt = preg_replace('`[[^]]*]`','',$excerpt); return $excerpt; } function content($limit) { $content = explode(' ', get_the_content(), $limit); if (count($content)>=$limit) { array_pop($content); $content = implode(" ",$content).'...'; } else { $content = implode(" ",$content); } $content = preg_replace('/[.+]/','', $content); $content = apply_filters('the_content', $content); $content = str_replace(']]>', ']]>', $content); return $content; } /* * Enable support for Post Thumbnails on posts and pages. * * @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/ */ add_theme_support( 'post-thumbnails' ); // This theme uses wp_nav_menu() in one location. register_nav_menus( array( 'menu-1' => esc_html__( 'Primary Menu', 'dabble' ), 'menu-2' => esc_html__( 'Single Menu', 'dabble' ), ) ); /* * Switch default core markup for search form, comment form, and comments * to output valid HTML5. */ add_theme_support( 'html5', array( 'search-form', 'comment-form', 'comment-list', 'gallery', 'caption', ) ); // Set up the WordPress core custom background feature. add_theme_support( 'custom-background', apply_filters( 'dabble_custom_background_args', array( 'default-color' => 'ffffff', 'default-image' => '', ) ) ); // Add theme support for selective refresh for widgets. add_theme_support( 'customize-selective-refresh-widgets' ); /** * Add support for core custom logo. * * @link https://codex.wordpress.org/Theme_Logo */ add_theme_support( 'custom-logo', array( 'height' => 250, 'width' => 250, 'flex-width' => true, 'flex-height' => true, ) ); //add support posts format add_theme_support( 'post-formats', array( 'aside', 'gallery', 'audio', 'video', 'image', 'quote', 'link', ) ); add_theme_support( 'align-wide' ); } endif; add_action( 'after_setup_theme', 'dabble_setup' ); /** *Custom Image Size */ add_image_size( 'dabble_portfolio-slider', 520, 640, true ); add_image_size( 'dabble_portfolio-full-slider', 1400, 650, true ); add_image_size( 'dabble_portfolios-slider', 1000, 1000, true ); add_image_size( 'dabble_blog-slider', 365, 243, true ); add_image_size( 'dabble_blog_long_height', 365, 480, true ); add_image_size( 'dabble_latest_blog_small', 255, 157, true ); add_image_size( 'dabble_latest_blog_medium', 340, 270, true ); add_image_size( 'dabble_image_slider_big', 860, 450, true ); add_image_size( 'dabble_blog-footer', 80, 68, true ); /** * Set the content width in pixels, based on the theme's design and stylesheet. * * Priority 0 to make it available to lower priority callbacks. * * @global int $content_width */ function dabble_content_width() { $GLOBALS['content_width'] = apply_filters( 'dabble_content_width', 640 ); } add_action( 'after_setup_theme', 'dabble_content_width', 0 ); /** * Implement the Custom Header feature. */ require_once get_template_directory() . '/inc/custom-header.php'; /** * Custom template tags for this theme. */ require_once get_template_directory() . '/inc/template-tags.php'; /** * Enqueue scripts and styles. */ require_once get_template_directory() . '/inc/template-scripts.php'; /** * Functions which enhance the theme by hooking into WordPress. */ require_once get_template_directory() . '/inc/template-functions.php'; /** * Functions which enhance the theme by hooking into WordPress. */ require_once get_template_directory() . '/inc/template-sidebar.php'; /** * Customizer additions. */ require_once get_template_directory() . '/inc/customizer.php'; if (is_admin() && isset($_GET['activated'])){ wp_redirect(admin_url("themes.php?page=dabble")); } if (is_admin()) { require_once get_template_directory() . '/framework/ini/theme-base.php'; } $licenseKey = get_option("DabbleWordPressTheme_lic_Key",""); if (class_exists( 'ReduxFramework') && !empty($licenseKey)){ require_once get_template_directory() . '/framework/custom.php'; require_once get_template_directory() . '/libs/theme-option/config.php'; } /** * Redux frameworks additions */ if (!empty($licenseKey)){ require_once get_template_directory() . '/inc/woocommerce-functions.php'; } //---------------------------------------------------------------------- // Remove Redux Framework NewsFlash //---------------------------------------------------------------------- if ( ! class_exists( 'reduxNewsflash' ) ): class reduxNewsflash { public function __construct( $parent, $params ) {} } endif; function dabble_remove_demo_mode_link() { // Be sure to rename this function to something more unique if ( class_exists('ReduxFrameworkPlugin') ) { remove_action( 'plugin_row_meta', array( ReduxFrameworkPlugin::get_instance(), 'plugin_metalinks'), null, 2 ); } if ( class_exists('ReduxFrameworkPlugin') ) { remove_action('admin_notices', array( ReduxFrameworkPlugin::get_instance(), 'admin_notices' ) ); } } add_action('init', 'dabble_remove_demo_mode_link'); /** * Registers an editor stylesheet for the theme. */ function dabble_theme_add_editor_styles() { add_editor_style( 'css/custom-editor-style.css' ); } add_action( 'admin_init', 'dabble_theme_add_editor_styles' ); //remove revolution slid metabox function dabble_remove_revolution_slider_meta_boxes() { remove_meta_box( 'mymetabox_revslider_0', 'teams', 'normal' ); remove_meta_box( 'mymetabox_revslider_0', 'page', 'normal' ); remove_meta_box( 'mymetabox_revslider_0', 'post', 'normal' ); remove_meta_box( 'mymetabox_revslider_0', 'rsclient', 'normal' ); remove_meta_box( 'mymetabox_revslider_0', 'gallery', 'normal' ); } add_action( 'do_meta_boxes', 'dabble_remove_revolution_slider_meta_boxes' ); //------------------------------------------------------------------------ //Organize Comments form field //----------------------------------------------------------------------- function dabble_wpb_move_comment_field_to_bottom( $fields ) { $comment_field = $fields['comment']; unset( $fields['comment'] ); $fields['comment'] = $comment_field; return $fields; } add_filter( 'comment_form_fields', 'dabble_wpb_move_comment_field_to_bottom' ); add_filter( 'get_the_archive_title', function ($title) { if ( is_category() ) { $title = single_cat_title( '', false ); } elseif ( is_tag() ) { $title = single_tag_title( '', false ); } elseif ( is_author() ) { $title = '<span class="vcard">' . get_the_author() . '</span>' ; } return $title; }); function dabble_comment_textarea_placeholder( $args ) { $args['comment_field'] = str_replace( 'textarea', 'textarea placeholder="Comment"', $args['comment_field'] ); return $args; } add_filter( 'comment_form_defaults', 'dabble_comment_textarea_placeholder' ); /** * Comment Form Fields Placeholder * */ function dabble_comment_form_fields( $fields ) { foreach( $fields as &$field ) { $field = str_replace( 'id="author"', 'id="author" placeholder="Name*"', $field ); $field = str_replace( 'id="email"', 'id="email" placeholder="Email*"', $field ); $field = str_replace( 'id="url"', 'id="url" placeholder="website"', $field ); } return $fields; } add_filter( 'comment_form_default_fields', 'dabble_comment_form_fields' );