PluginProbe ʕ •ᴥ•ʔ
Kubio AI Page Builder / 2.8.3
Kubio AI Page Builder v2.8.3
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 / search-form / index.php
kubio / build / block-library / blocks / search-form Last commit date
block.json 4 years ago index.php 1 year ago
index.php
63 lines
1 <?php
2
3 namespace Kubio\Blocks;
4
5 use Kubio\Core\Blocks\BlockBase;
6 use Kubio\Core\Registry;
7
8 class SearchForm extends BlockBase {
9
10 const OUTER = 'outer';
11 const FORM = 'form';
12 const INPUT = 'input';
13 const BUTTON = 'button';
14 const ICON = 'icon';
15 const BUTTONTEXT = 'buttonText';
16
17 public function computed() {
18 $computedProps = array(
19 'showInput' => true,
20 'showButton' => 'inputAndButton' === $this->getProp( 'layout' ),
21 'showButtonIcon' => 'icon' === $this->getProp( 'buttonType' ),
22 'showButtonText' => 'text' === $this->getProp( 'buttonType' ),
23 'iconButton' => $this->getAttribute( 'iconName' ),
24 );
25
26 return $computedProps;
27 }
28 public function mapPropsToElements() {
29 $inputPlaceholder = kubio_wpml_get_translated_string( $this->getAttribute( 'placeholderText' ) );
30 $buttonText = kubio_wpml_get_translated_string( $this->getProp( 'buttonText' ) );
31 $button = array( 'className' => array( 'search-button' ) );
32 $iconButton = $this->getAttribute( 'iconName' );
33
34 return array(
35 self::FORM => array(
36 'className' => array( 'd-flex', 'search-form' ),
37 'action' => esc_url( home_url() ),
38 'role' => 'search',
39 'method' => 'GET',
40 ),
41 self::BUTTON => $button,
42 self::INPUT => array(
43 'className' => array( 'search-input' ),
44 'placeholder' => esc_attr( $inputPlaceholder ),
45 'value' => esc_attr( get_search_query() ),
46 'name' => 's',
47 ),
48 self::ICON => array(
49 'name' => $iconButton,
50 ),
51 self::BUTTONTEXT => array(
52 'innerHTML' => wp_kses_post( $buttonText ),
53 ),
54 );
55 }
56 }
57
58
59 Registry::registerBlock(
60 __DIR__,
61 SearchForm::class
62 );
63