| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /HostingSpaces/admin/tickwaves.co.uk/wwwroot/wp-content/plugins/popup-maker/classes/ |
Upload File : |
<?php
/**
* Shortcodes class
*
* @package PopupMaker
* @copyright Copyright (c) 2024, Code Atlantic LLC
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Class PUM_Shortcodes
*
* This class maintains a global set of all registered PUM shortcodes.
*/
class PUM_Shortcodes {
/**
* @var PUM_Shortcodes Static Instance
*/
private static $instance;
/**
* @var array Holds array of registered $shortcode_tags => $shortcode_objects.
*/
private $shortcodes = [];
/**
* Main PUM_Shortcodes Instance
*
* @return PUM_Shortcodes
*/
public static function instance() {
if ( ! isset( self::$instance ) && ! ( self::$instance instanceof PUM_Shortcodes ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Add a shortcode object to the collection.
*
* @param PUM_Shortcode $shortcode
*/
public function add_shortcode( PUM_Shortcode $shortcode ) {
$this->shortcodes[ $shortcode->tag() ] = $shortcode;
}
/**
* Get all shortcodes.
*
* @return array PUM_Shortcode
*/
public function get_shortcodes() {
return $this->shortcodes;
}
/**
* Get shortcode by tag.
*
* @param $tag
*
* @return bool|mixed
*/
public function get_shortcode( $tag ) {
return isset( $this->shortcodes[ $tag ] ) ? $this->shortcodes[ $tag ] : false;
}
}