field, [ 'add_title' => esc_html__( 'Add Link', 'adminify' ), 'edit_title' => esc_html__( 'Edit Link', 'adminify' ), 'remove_title' => esc_html__( 'Remove Link', 'adminify' ), ] ); $default_values = [ 'url' => '', 'text' => '', 'target' => '', ]; $value = wp_parse_args( $this->value, $default_values ); $hidden = ( ! empty( $value['url'] ) || ! empty( $value['url'] ) || ! empty( $value['url'] ) ) ? ' hidden' : ''; $maybe_hidden = ( empty( $hidden ) ) ? ' hidden' : ''; echo wp_kses_post( $this->field_before() ); echo ''; echo '
' . sprintf( '{url:"%s", text:"%s", target:"%s"}', esc_url( $value['url'] ), wp_kses_post( $value['text'] ), esc_attr( $value['target'] ) ) . '
'; echo 'field_attributes( [ 'class' => 'adminify--url' ] ) ) . ' />'; echo ''; echo ''; echo '' . wp_kses_post( $args['add_title'] ) . ' '; echo '' . wp_kses_post( $args['edit_title'] ) . ' '; echo '' . wp_kses_post( $args['remove_title'] ) . ''; echo wp_kses_post( $this->field_after() ); } public function enqueue() { if ( ! wp_script_is( 'wplink' ) ) { wp_enqueue_script( 'wplink' ); } if ( ! wp_script_is( 'jquery-ui-autocomplete' ) ) { wp_enqueue_script( 'jquery-ui-autocomplete' ); } add_action( 'admin_print_footer_scripts', [ $this, 'add_wp_link_dialog' ] ); } public function add_wp_link_dialog() { if ( ! class_exists( '_WP_Editors' ) ) { require_once ABSPATH . WPINC . '/class-wp-editor.php'; } wp_print_styles( 'editor-buttons' ); _WP_Editors::wp_link_dialog(); } } }