| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- <?php // phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
- /**
- * Wordads shortcode.
- *
- * Examples:
- * [wordads]
- *
- * @package automattic/jetpack
- */
- /**
- * Embed WordAds 'ad' in post
- */
- class Jetpack_WordAds_Shortcode {
- /**
- * Used to determine whether scripts and styles have been enqueued already.
- *
- * @var bool false Should we enqueue scripts and styles.
- */
- private $scripts_and_style_included = false;
- /**
- * Initialize.
- */
- public function __construct() {
- add_action( 'init', array( $this, 'action_init' ) );
- }
- /**
- * Register our shortcode and enqueue necessary files.
- */
- public function action_init() {
- global $wordads;
- if ( empty( $wordads ) ) {
- return null;
- }
- add_shortcode( 'wordads', array( $this, 'wordads_shortcode' ) );
- }
- /**
- * Our [wordads] shortcode.
- * Prints a WordAds Ad.
- *
- * @param array $atts Array of shortcode attributes.
- * @param string $content Post content.
- *
- * @return string HTML for WordAds shortcode.
- */
- public static function wordads_shortcode( $atts, $content = '' ) {
- $atts = shortcode_atts( array(), $atts, 'wordads' );
- return self::wordads_shortcode_html( $atts, $content );
- }
- /**
- * The shortcode output
- *
- * @param array $atts Array of shortcode attributes.
- * @param string $content Post content.
- *
- * @return string HTML output
- */
- private static function wordads_shortcode_html( $atts, $content = '' ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable
- global $wordads;
- if ( empty( $wordads ) ) {
- return '<div>' . __( 'The WordAds module is not active', 'jetpack' ) . '</div>';
- }
- $html = '<div class="jetpack-wordad" itemscope itemtype="https://schema.org/WPAdBlock"></div>';
- $html = $wordads->insert_inline_ad( $html );
- return $html;
- }
- }
- new Jetpack_WordAds_Shortcode();
|