PluginProbe ʕ •ᴥ•ʔ
Kubio AI Page Builder / 2.8.4
Kubio AI Page Builder v2.8.4
2.8.4 2.8.3 2.8.2 2.8.1 trunk 1.0.0 1.0.1 1.1.0 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.9.0 2.0.0 2.1.1 2.1.2 2.1.3 2.2.0 2.2.3 2.2.4 2.2.5 2.3.0 2.3.1 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.5 2.5.0 2.5.1 2.5.2 2.5.3 2.6.0 2.6.1 2.6.2 2.6.3 2.6.5 2.6.6 2.6.7 2.7.0 2.7.1 2.7.2 2.7.3 2.8.0
kubio / build / block-library / blocks / shortcode / index.php
kubio / build / block-library / blocks / shortcode Last commit date
block.json 4 years ago index.php 3 years ago
index.php
51 lines
1 <?php
2
3 namespace Kubio\Blocks;
4
5 use Kubio\Core\Blocks\BlockBase;
6 use Kubio\Core\Registry;
7 use Kubio\Core\Utils;
8
9 class ShortcodeBlock extends BlockBase {
10 const OUTER = 'outer';
11
12 public function mapPropsToElements() {
13 $shortcode = $this->getAttribute( 'shortcode' );
14 $in_editor = $this->getAttribute( 'inEditor' );
15
16 $shortcode = wp_kses_post( $shortcode );
17
18 if ( $in_editor ) {
19 $content = $this->getEditorShortcode( $shortcode );
20 } else {
21 if ( $shortcode ) {
22 $content = $this->getLiveShortcode( $shortcode );
23 } else {
24 $content = Utils::getEmptyShortcodePlaceholder();
25 }
26 }
27
28 return array(
29 self::OUTER => array( 'innerHTML' => $content ),
30 );
31 }
32
33 public function getEditorShortcode( $shortcode ) {
34 $content = '';
35 $content = apply_filters( 'kubio/editor/before_render_shortcode', $content, $shortcode );
36 $shortcode_output = do_shortcode( $shortcode );
37 $content .= $shortcode_output;
38 $content = apply_filters( 'kubio/editor/after_render_shortcode', $content, $shortcode );
39 return urldecode( $content );
40 }
41
42 public function getLiveShortcode( $shortcode ) {
43 return do_shortcode( $shortcode );
44 }
45 }
46
47 Registry::registerBlock(
48 __DIR__,
49 ShortcodeBlock::class
50 );
51