PluginProbe
JetFormBuilder — Dynamic Blocks Form Builder / 1.1.0
JetFormBuilder — Dynamic Blocks Form Builder v1.1.0
3.6.6.1 3.6.6 3.6.5.4 3.6.5.3 3.6.5.2 3.6.5.1 3.6.5 3.6.4.2 3.6.4.1 3.6.4 3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 All 134 releases
jetformbuilder / includes / form-patterns / manager.php

manager.php in JetFormBuilder — Dynamic Blocks Form Builder 1.1.0, at includes/form-patterns/manager.php

57 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Jet_Form_Builder\Form_Patterns;
4
5 use Jet_Form_Builder\Plugin;
6
7 class Manager {
8
9 public function __construct() {
10 add_action( 'current_screen', array( $this, 'maybe_register_patterns' ) );
11 }
12
13 private function namespace() {
14 return Plugin::instance()->post_type->slug();
15 }
16
17 public function maybe_register_patterns() {
18 if ( get_current_screen()->post_type !== $this->namespace() ) {
19 return;
20 }
21
22 $this->register_block_patterns();
23 }
24
25 public function register_block_patterns() {
26 register_block_pattern_category(
27 $this->namespace(),
28 array(
29 'label' => __( 'JetForms', 'jet-form-builder' )
30 )
31 );
32
33 $form = new \WP_Query( array(
34 'post_type' => $this->namespace(),
35 'posts_per_page' => 1
36 ) );
37
38 if ( empty( $form->posts ) || empty( $form->posts[0] ) ) {
39 return;
40 }
41
42 register_block_pattern(
43 $this->pattern_name( 'test-form' ),
44 array(
45 'title' => __( 'Jet Form X', 'jet-form-builder' ),
46 'description' => _x( 'Two horizontal buttons, the left button is filled in, and the right button is outlined.', 'Block pattern description', 'jet-form-builder' ),
47 'content' => $form->posts[0]->post_content,
48 'categories' => array( $this->namespace() )
49 )
50 );
51 }
52
53 private function pattern_name( $name ) {
54 return $this->namespace() . '/' . $name;
55 }
56
57 }