Submit
Path:
~
/
home
/
getwphos
/
www
/
pioneerasphalt
/
wp-content
/
plugins
/
hiroshi-core
/
File Content:
class-hiroshicore.php
<?php /* Plugin Name: Hiroshi Core Plugin URI: https://qodeinteractive.com Description: Plugin that adds portfolio post type, shortcodes and other modules Author: Qode Interactive Author URI: https://qodeinteractive.com Version: 1.2 Text Domain: hiroshi-core */ if ( ! class_exists( 'HiroshiCore' ) ) { class HiroshiCore { private static $instance; public function __construct() { $this->require_core(); add_filter( 'qode_framework_filter_register_admin_options', array( $this, 'create_core_options' ) ); add_action( 'qode_framework_action_before_options_init_' . HIROSHI_CORE_OPTIONS_NAME, array( $this, 'init_core_options' ) ); add_action( 'qode_framework_action_populate_meta_box', array( $this, 'init_core_meta_boxes' ) ); // Register plugin assets add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts' ) ); // Include plugin assets add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_assets' ) ); // Make plugin available for translation add_action( 'plugins_loaded', array( $this, 'load_plugin_textdomain' ), 15 ); // permission 15 is set in order to be after the qode-framework initialization // Add plugin's body classes add_filter( 'body_class', array( $this, 'add_body_classes' ) ); // Hook to include additional modules when plugin loaded do_action( 'hiroshi_core_action_plugin_loaded' ); } /** * @return HiroshiCore */ public static function get_instance() { if ( is_null( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } function require_core() { require_once dirname( __FILE__ ) . '/constants.php'; require_once HIROSHI_CORE_ABS_PATH . '/helpers/helper.php'; // Hook to include additional files before modules inclusion do_action( 'hiroshi_core_action_before_include_modules' ); foreach ( glob( HIROSHI_CORE_INC_PATH . '/*/include.php' ) as $module ) { include_once $module; } // Hook to include additional files after modules inclusion do_action( 'hiroshi_core_action_after_include_modules' ); } function create_core_options( $options ) { $hiroshi_core_options_admin = new QodeFrameworkOptionsAdmin( HIROSHI_CORE_MENU_NAME, HIROSHI_CORE_OPTIONS_NAME, array( 'label' => esc_html__( 'Hiroshi Core Options', 'hiroshi-core' ), 'code' => HiroshiCore_Dashboard::get_instance()->get_code(), ) ); $options[] = $hiroshi_core_options_admin; return $options; } function init_core_options() { $qode_framework = qode_framework_get_framework_root(); if ( ! empty( $qode_framework ) ) { $page = $qode_framework->add_options_page( array( 'scope' => HIROSHI_CORE_OPTIONS_NAME, 'type' => 'admin', 'slug' => 'general', 'title' => esc_html__( 'General', 'hiroshi-core' ), 'description' => esc_html__( 'Global Theme Options', 'hiroshi-core' ), 'icon' => 'fa fa-cog', ) ); // Hook to include additional options after default options do_action( 'hiroshi_core_action_default_options_init', $page ); } } function init_core_meta_boxes() { do_action( 'hiroshi_core_action_default_meta_boxes_init' ); } function register_scripts() { // Register 3rd party plugins style wp_register_style( 'magnific-popup', HIROSHI_CORE_URL_PATH . 'assets/plugins/magnific-popup/magnific-popup.css' ); // Register 3rd party plugins script wp_register_script( 'jquery-magnific-popup', HIROSHI_CORE_URL_PATH . 'assets/plugins/magnific-popup/jquery.magnific-popup.min.js', array( 'jquery' ), false, true ); // Hook to include additional registered scripts do_action( 'hiroshi_core_action_registered_scripts' ); } function enqueue_assets() { // CSS and JS dependency variables $style_dependency_array = apply_filters( 'hiroshi_core_filter_style_dependencies', array( 'hiroshi-main' ) ); $script_dependency_array = apply_filters( 'hiroshi_core_filter_script_dependencies', array( 'hiroshi-main-js' ) ); // Hook to include additional scripts before plugin's main style do_action( 'hiroshi_core_action_before_main_css' ); // Enqueue plugin's main style wp_enqueue_style( 'hiroshi-core-style', HIROSHI_CORE_URL_PATH . 'assets/css/hiroshi-core.min.css', $style_dependency_array ); // Enqueue plugin's 3rd party scripts wp_enqueue_script( 'gsap', HIROSHI_CORE_URL_PATH . 'assets/plugins/gsap/gsap.min.js', array( 'jquery' ), false, true ); wp_enqueue_script( 'scrollTrigger', HIROSHI_CORE_URL_PATH . 'assets/plugins/gsap/ScrollTrigger.min.js', array( 'jquery' ), false, true ); wp_enqueue_script( 'jquery-ui-core' ); wp_enqueue_script( 'modernizr', HIROSHI_CORE_URL_PATH . 'assets/plugins/modernizr/modernizr.js', array( 'jquery' ), false, true ); wp_enqueue_script( 'parallax-scroll', HIROSHI_CORE_URL_PATH . 'assets/plugins/parallax-scroll/jquery.parallax-scroll.js', array( 'jquery' ), false, true ); // Hook to include additional scripts before plugin's main script do_action( 'hiroshi_core_action_before_main_js' ); // Enqueue plugin's main script wp_enqueue_script( 'hiroshi-core-script', HIROSHI_CORE_URL_PATH . 'assets/js/hiroshi-core.min.js', $script_dependency_array, false, true ); } function load_plugin_textdomain() { load_plugin_textdomain( 'hiroshi-core', false, HIROSHI_CORE_REL_PATH . '/languages' ); } function add_body_classes( $classes ) { $classes[] = 'hiroshi-core-' . HIROSHI_CORE_VERSION; return $classes; } } } if ( ! function_exists( 'hiroshi_core_instantiate_plugin' ) ) { /** * Function that initialize plugin */ function hiroshi_core_instantiate_plugin() { HiroshiCore::get_instance(); } add_action( 'qode_framework_action_load_dependent_plugins', 'hiroshi_core_instantiate_plugin' ); } if ( ! function_exists( 'hiroshi_core_activation_trigger' ) ) { /** * Function that trigger hooks on plugin activation */ function hiroshi_core_activation_trigger() { // Set global plugin option when plugin is activated add_option( 'hiroshi_core_activated_first_time', 'yes' ); // Hook to add additional code on plugin activation do_action( 'hiroshi_core_action_on_activation' ); } register_activation_hook( __FILE__, 'hiroshi_core_activation_trigger' ); } if ( ! function_exists( 'hiroshi_core_deactivation_trigger' ) ) { /** * Function that trigger hooks on plugin deactivation */ function hiroshi_core_deactivation_trigger() { // Remove global plugin option during deactivation delete_option( 'hiroshi_core_activated_first_time' ); // Hook to add additional code on plugin deactivation do_action( 'hiroshi_core_action_on_deactivation' ); } register_deactivation_hook( __FILE__, 'hiroshi_core_deactivation_trigger' ); } if ( ! function_exists( 'hiroshi_core_plugins_loaded_option' ) ) { /** * Function that update global option that plugin is activated first time */ function hiroshi_core_plugins_loaded_option() { if ( 'yes' === get_option( 'hiroshi_core_activated_first_time' ) ) { update_option( 'hiroshi_core_activated_first_time', 'no' ); } } add_action( 'plugins_loaded', 'hiroshi_core_plugins_loaded_option', 1000 ); //needs to be last, so option can be changed after all actions } if ( ! function_exists( 'hiroshi_core_check_requirements' ) ) { /** * Function that check plugin requirements */ function hiroshi_core_check_requirements() { if ( ! defined( 'QODE_FRAMEWORK_VERSION' ) ) { add_action( 'admin_notices', 'hiroshi_core_admin_notice_content' ); } } add_action( 'plugins_loaded', 'hiroshi_core_check_requirements' ); } if ( ! function_exists( 'hiroshi_core_admin_notice_content' ) ) { /** * Function that display the error message if the requirements are not met */ function hiroshi_core_admin_notice_content() { echo sprintf( '<div class="notice notice-error"><p>%s</p></div>', esc_html__( 'Qode Framework plugin is required for Hiroshi Core plugin to work properly. Please install/activate it first.', 'hiroshi-core' ) ); if ( function_exists( 'deactivate_plugins' ) ) { deactivate_plugins( plugin_basename( __FILE__ ) ); } } }
Submit
FILE
FOLDER
Name
Size
Permission
Action
assets
---
0755
helpers
---
0755
inc
---
0755
languages
---
0755
class-hiroshicore.php
8187 bytes
0644
constants.php
1765 bytes
0644
N4ST4R_ID | Naxtarrr