From ba79cfebd52d6052abb89b5edfca8977860a922e Mon Sep 17 00:00:00 2001 From: Piotr Potrebka <piotr.potrebka@wpdesk.net> Date: Tue, 24 Jan 2023 11:07:09 +0100 Subject: [PATCH] feat: WP Editor --- src/Field/WPEditorField.php | 12 ++++++++++++ src/Field/WyswigField.php | 5 +++++ templates/wp-editor.php | 25 +++++++++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 src/Field/WPEditorField.php create mode 100644 templates/wp-editor.php diff --git a/src/Field/WPEditorField.php b/src/Field/WPEditorField.php new file mode 100644 index 0000000..c7b99c6 --- /dev/null +++ b/src/Field/WPEditorField.php @@ -0,0 +1,12 @@ +<?php + +namespace WPDesk\Forms\Field; + +class WPEditorField extends BasicField { + + public function get_template_name(): string { + return 'wp-editor'; + } + + +} diff --git a/src/Field/WyswigField.php b/src/Field/WyswigField.php index 145908f..571df0f 100644 --- a/src/Field/WyswigField.php +++ b/src/Field/WyswigField.php @@ -2,6 +2,11 @@ namespace WPDesk\Forms\Field; +/** + * @deprecated + * + * Use WPEditorField + */ class WyswigField extends BasicField { public function get_template_name(): string { diff --git a/templates/wp-editor.php b/templates/wp-editor.php new file mode 100644 index 0000000..4554274 --- /dev/null +++ b/templates/wp-editor.php @@ -0,0 +1,25 @@ +<?php +/** + * @var \WPDesk\Forms\Field $field + * @var string $name_prefix + * @var string $value + */ + +wp_print_styles( 'media-views' ); + +$default_settings = [ + 'textarea_name' => esc_attr( $name_prefix ) . '[' . esc_attr( $this->get_name() ) . ']', + 'tinymce' => [ + 'toolbar1' => 'bold,italic,underline,separator,alignleft,aligncenter,alignright,separator,link,unlink,undo,redo', + 'toolbar2' => '', + 'toolbar3' => '', + ], + 'media_buttons' => true, + 'quicktags' => true, + 'teeny' => true, +]; +$editor_settings = wp_parse_args( $field->get_attributes(), $default_settings ); +$editor_id = uniqid( 'wyswig_' ); + +wp_editor( wp_kses_post( $value ), $editor_id, $editor_settings ); +?> -- GitLab