Uname: Linux premium294.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64
Software: LiteSpeed
PHP version: 8.1.32 [ PHP INFO ] PHP os: Linux
Server Ip: 104.21.16.1
Your Ip: 216.73.216.223
User: mjbynoyq (1574) | Group: mjbynoyq (1570)
Safe Mode: OFF
Disable Function:
NONE

name : abstract-shortcode.php
<?php


abstract class Brizy_Shortcode_AbstractShortcode {

	const BRIZY_SHORTCODES_PREFIX = 'brizy_';
	const BRIZY_SHORTCODES_ACTION_PREFIX = 'brizy_shortcode_';
	const BRIZY_SHORTCODES_FILTER_PREFIX = 'brizy_shortcode_filter_';

	/**
	 * Get shortcode name
	 *
	 * @return string
	 */
	abstract public function getName();

	/**
	 * @param $atts
	 * @param null $content
	 *
	 * @return mixed
	 */
	abstract public function render( $atts, $content = null );

	/**
	 * @param $atts
	 * @param null $content
	 *
	 * @return string
	 */
	final public function masterRender( $atts, $content = null ) {
		ob_start();

		do_action( $this->getBeforeActionName() );

		echo apply_filters( $this->getFilterName(), $this->render( $atts, $content ) );

		do_action( $this->getAfterActionName() );

		return ob_get_clean();
	}

	/**
	 * Brizy_Shortcode_AbstractShortcode constructor.
	 */
	public function __construct() {
		add_shortcode( $this->getShortCodeId(), array( $this, 'masterRender' ) );
	}

	/**
	 * @return string
	 */
	private function getShortCodeId() {
		return self::BRIZY_SHORTCODES_PREFIX . $this->getName();
	}

	/**
	 * @return string
	 */
	private function getBeforeActionName() {
		return self::BRIZY_SHORTCODES_ACTION_PREFIX . 'before_' . $this->getName();
	}

	/**
	 * @return string
	 */
	private function getAfterActionName() {
		return self::BRIZY_SHORTCODES_ACTION_PREFIX . 'after_' . $this->getName();
	}

	/**
	 * @return string
	 */
	private function getFilterName() {
		return self::BRIZY_SHORTCODES_FILTER_PREFIX . $this->getName();
	}
}
© 2025 XylotrechusZ