Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/jetpack/modules/shortcod...
File: unavailable.php
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
[0] Fix | Delete
/**
[1] Fix | Delete
* Display a message on the frontend when we retire a shortcode,
[2] Fix | Delete
* explaining why the shortcode is not available anymore.
[3] Fix | Delete
*
[4] Fix | Delete
* @package automattic/jetpack
[5] Fix | Delete
*/
[6] Fix | Delete
[7] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[8] Fix | Delete
exit( 0 );
[9] Fix | Delete
}
[10] Fix | Delete
[11] Fix | Delete
// phpcs:disable Universal.Files.SeparateFunctionsFromOO.Mixed -- TODO: Move classes to appropriately-named class files.
[12] Fix | Delete
[13] Fix | Delete
/**
[14] Fix | Delete
* Class Jetpack_Shortcode_Unavailable
[15] Fix | Delete
*
[16] Fix | Delete
* @phan-constructor-used-for-side-effects
[17] Fix | Delete
*/
[18] Fix | Delete
class Jetpack_Shortcode_Unavailable {
[19] Fix | Delete
/**
[20] Fix | Delete
* Shortcodes that are unavailable.
[21] Fix | Delete
*
[22] Fix | Delete
* Key is the shortcode, value is string explaining why.
[23] Fix | Delete
*
[24] Fix | Delete
* @var array
[25] Fix | Delete
*/
[26] Fix | Delete
public $shortcodes;
[27] Fix | Delete
[28] Fix | Delete
/**
[29] Fix | Delete
* Set up the actions and filters for the class to listen to.
[30] Fix | Delete
*
[31] Fix | Delete
* @param array $shortcodes An associative array of keys being the shortcodes that are unavailable, and a string explaining why.
[32] Fix | Delete
*/
[33] Fix | Delete
public function __construct( $shortcodes ) {
[34] Fix | Delete
$this->shortcodes = $shortcodes;
[35] Fix | Delete
[36] Fix | Delete
add_action( 'template_redirect', array( $this, 'add_shortcodes' ) );
[37] Fix | Delete
}
[38] Fix | Delete
[39] Fix | Delete
/**
[40] Fix | Delete
* For all of our defined unavailable shortcodes, if something else hasn't
[41] Fix | Delete
* already claimed them, add a handler to nullify their output.
[42] Fix | Delete
*/
[43] Fix | Delete
public function add_shortcodes() {
[44] Fix | Delete
foreach ( array_keys( $this->shortcodes ) as $shortcode ) {
[45] Fix | Delete
if ( ! shortcode_exists( $shortcode ) ) {
[46] Fix | Delete
add_shortcode( $shortcode, array( $this, 'stub_shortcode' ) );
[47] Fix | Delete
}
[48] Fix | Delete
}
[49] Fix | Delete
}
[50] Fix | Delete
[51] Fix | Delete
/**
[52] Fix | Delete
* Nullify the output of unavailable shortcodes. Includes a filter to make
[53] Fix | Delete
* it easier to notify admins that a shortcode that they used is unavailable.
[54] Fix | Delete
*
[55] Fix | Delete
* @param array $atts Shortcode attributes.
[56] Fix | Delete
* @param string $content Post content.
[57] Fix | Delete
* @param string $shortcode Shortcode name.
[58] Fix | Delete
*
[59] Fix | Delete
* @return mixed|void
[60] Fix | Delete
*/
[61] Fix | Delete
public function stub_shortcode( $atts, $content = '', $shortcode = '' ) {
[62] Fix | Delete
$str = '';
[63] Fix | Delete
if ( current_user_can( 'edit_posts' ) && ! empty( $this->shortcodes[ $shortcode ] ) ) {
[64] Fix | Delete
$str = sprintf( '<div><strong>%s</strong></div>', $this->shortcodes[ $shortcode ] );
[65] Fix | Delete
}
[66] Fix | Delete
/**
[67] Fix | Delete
* Filter the front-end output of unavailable shortcodes.
[68] Fix | Delete
*
[69] Fix | Delete
* @module shortcodes
[70] Fix | Delete
*
[71] Fix | Delete
* @since 4.5.0
[72] Fix | Delete
*
[73] Fix | Delete
* @param string $str The html displayed in lieu of the shortcode.
[74] Fix | Delete
* @param array $atts The attributes (numeric or named) passed to the shortcode.
[75] Fix | Delete
* @param string $content The content (if any) between the opening and closing tags.
[76] Fix | Delete
* @param string $shortcode The shortcode tag used to invoke this.
[77] Fix | Delete
*/
[78] Fix | Delete
return apply_filters( 'jetpack_stub_shortcode', $str, $atts, $content, $shortcode );
[79] Fix | Delete
}
[80] Fix | Delete
}
[81] Fix | Delete
[82] Fix | Delete
/**
[83] Fix | Delete
* Init class.
[84] Fix | Delete
*/
[85] Fix | Delete
function jetpack_init_shortcode_unavailable() {
[86] Fix | Delete
new Jetpack_Shortcode_Unavailable(
[87] Fix | Delete
array(
[88] Fix | Delete
'digg' => __( 'The Digg API was shut down in 2014.', 'jetpack' ),
[89] Fix | Delete
'hulu' => __( 'Hulu no longer allows embedding content.', 'jetpack' ),
[90] Fix | Delete
'blip.tv' => __( 'The Blip.tv service has been shut down since August 20th, 2015.', 'jetpack' ),
[91] Fix | Delete
'googlevideo' => __( 'The Google Video embed service is not available anymore, it has been replaced by YouTube.', 'jetpack' ),
[92] Fix | Delete
'jetpack-email-subscribe' => __( 'The Email Subscribe shortcode is now available as a block in the Block editor.', 'jetpack' ),
[93] Fix | Delete
'lytro' => __( 'Lytro has been shut down since March 2019.', 'jetpack' ),
[94] Fix | Delete
)
[95] Fix | Delete
);
[96] Fix | Delete
}
[97] Fix | Delete
add_action( 'init', 'jetpack_init_shortcode_unavailable' );
[98] Fix | Delete
[99] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function