Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save IamSohaggazi/4e6ac4f72d68fc071f0001a9f86b4b58 to your computer and use it in GitHub Desktop.
Save IamSohaggazi/4e6ac4f72d68fc071f0001a9f86b4b58 to your computer and use it in GitHub Desktop.
<?php
/**
* Shortcode_Button loader
* Handles checking for and smartly loading the newest version of this library.
*
* Shortcode_Button - Tinymce and Quicktag buttons for outputting shortcodes.
*
* @category WordPressLibrary
* @package Shortcode_Button
* @author Justin Sternberg <justin@dsgnwrks.pro>
* @copyright 2015-2016 Justin Sternberg <justin@dsgnwrks.pro>
* @license GPL-2.0+
* @version 1.0.7
* @link https://github.com/jtsternberg/Shortcode_Button
* @since 1.0.0
*/
/**
* Copyright (c) 2015-2016 Justin Sternberg (email : justin@dsgnwrks.pro)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License, version 2 or, at
* your discretion, any later version, as published by the Free
* Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
/**
* Loader versioning: http://jtsternberg.github.io/wp-lib-loader/
*/
if ( ! class_exists( 'capie_theme_shortcode', false ) ) {
/**
* Versioned loader class-name
*
* This ensures each version is loaded/checked.
*
* @category WordPressLibrary
* @package Shortcode_Button
* @author Justin Sternberg <justin@dsgnwrks.pro>
* @license GPL-2.0+
* @version 1.0.7
* @link https://github.com/jtsternberg/Shortcode_Button
* @since 1.0.0
*/
class capie_theme_shortcode_1553757877 {
/**
* Shortcode_Button version number
* @var string
* @since 1.0.0
*/
const VERSION = '2.0';
/**
* Current version hook priority.
* Will decrement with each release
*
* @var int
* @since 1.0.0
*/
const PRIORITY = 9992;
/**
* Starts the version checking process.
* Creates SHORTCODE_BUTTONS_LOADED definition for early detection by
* other scripts.
*
* Hooks Shortcode_Button inclusion to the shortcode_button_load hook
* on a high priority which decrements (increasing the priority) with
* each version release.
*
* @since 1.0.0
*/
public function __construct() {
if ( ! defined( 'capie_theme_shortcode_1553757877_load' ) ) {
/**
* A constant you can use to check if Shortcode_Button is loaded
* for your plugins/themes with Shortcode_Button dependency.
*
* Can also be used to determine the priority of the hook
* in use for the currently loaded version.
*/
define( 'capie_theme_shortcode_1553757877_load', self::PRIORITY );
}
// Use the hook system to ensure only the newest version is loaded.
add_action( 'capie_theme_shortcode_1553757877_load', array( $this, 'include_lib' ), self::PRIORITY );
/*
* Hook in to the first hook we have available and
* fire our `shortcode_button_load' hook.
*/
add_action( 'muplugins_loaded', array( __CLASS__, 'fire_hook' ), 9 );
add_action( 'plugins_loaded', array( __CLASS__, 'fire_hook' ), 9 );
add_action( 'after_setup_theme', array( __CLASS__, 'fire_hook' ), 9 );
}
/**
* Fires the shortcode_button_load action hook.
*
* @since 1.0.0
*/
public static function fire_hook() {
if ( ! did_action( 'capie_theme_shortcode_1553757877_load' ) ) {
// Then fire our hook.
do_action( 'capie_theme_shortcode_1553757877_load' );
}
}
/**
* A final check if Shortcode_Button exists before kicking off
* our Shortcode_Button loading.
*
* SHORTCODE_BUTTONS_VERSION and SHORTCODE_BUTTONS_DIR constants are
* set at this point.
*
* @since 1.0.0
*/
public function include_lib() {
if ( class_exists( 'capie_theme_shortcode_button', false ) ) {
return;
}
if ( ! defined( 'capie_theme_shortcode_button_version' ) ) {
/**
* Defines the currently loaded version of Shortcode_Button.
*/
define( 'capie_theme_shortcode_button', self::VERSION );
}
if ( ! defined( 'capie_theme_shortcode_button_dir' ) ) {
/**
* Defines the directory of the currently loaded version of Shortcode_Button.
*/
define( 'capie_theme_shortcode_button_dir', dirname( __FILE__ ) . '/' );
}
// Include and initiate Shortcode_Button.
require_once capie_theme_shortcode_button_dir . 'lib/class-shortcode-button.php';
}
}
// Kick it off.
new capie_theme_shortcode_1553757877;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment