From 1c48ba53a6d490b3307d7d60591d2d46fd36ccdc Mon Sep 17 00:00:00 2001 From: girishkrishaweb Date: Mon, 3 May 2021 12:31:12 +0530 Subject: [PATCH 1/2] Add license and creator setting fields #794 --- classes/Visualizer/Module/Frontend.php | 37 +++++++++++++++++++- classes/Visualizer/Render/Sidebar/Google.php | 15 +++++++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/classes/Visualizer/Module/Frontend.php b/classes/Visualizer/Module/Frontend.php index fb48bcde7..8a7d794fd 100644 --- a/classes/Visualizer/Module/Frontend.php +++ b/classes/Visualizer/Module/Frontend.php @@ -484,13 +484,48 @@ private function addSchema( $id ) { return ''; } + $license = ''; + if ( isset( $settings['license'] ) && ! empty( $settings['license'] ) ) { + $license = $settings['license']; + if ( is_array( $license ) ) { + $license = $settings['license']['text']; + } + } + $license = apply_filters( 'visualizer_schema_license', $license, $id ); + if ( empty( $license ) ) { + if ( $show_errors ) { + return ""; + } + return ''; + } + + $creator = ''; + if ( isset( $settings['creator'] ) && ! empty( $settings['creator'] ) ) { + $creator = $settings['creator']; + if ( is_array( $creator ) ) { + $creator = $settings['creator']['text']; + } + } + $creator = apply_filters( 'visualizer_schema_creator', $creator, $id ); + if ( empty( $creator ) ) { + if ( $show_errors ) { + return ""; + } + return ''; + } + $schema = apply_filters( 'visualizer_schema', '{ "@context":"https://schema.org/", "@type":"Dataset", "name":"' . esc_html( $title ) . '", - "description":"' . esc_html( $desc ) . '" + "description":"' . esc_html( $desc ) . '", + "license": "' . esc_html( $license ) . '", + "creator": { + "@type": "Person", + "name": "' . esc_html( $creator ) . '" + } }', $id ); diff --git a/classes/Visualizer/Render/Sidebar/Google.php b/classes/Visualizer/Render/Sidebar/Google.php index af55567a2..1a60f9155 100644 --- a/classes/Visualizer/Render/Sidebar/Google.php +++ b/classes/Visualizer/Render/Sidebar/Google.php @@ -234,7 +234,20 @@ protected function _renderGeneralSettings() { self::_renderSectionEnd(); $this->_renderAnimationSettings(); - + self::_renderSectionStart( esc_html__( 'License & Creator', 'visualizer' ), false ); + self::_renderTextItem( + esc_html__( 'License', 'visualizer' ), + 'license', + $this->license, + '' + ); + self::_renderTextItem( + esc_html__( 'Creator', 'visualizer' ), + 'creator', + $this->creator, + '' + ); + self::_renderSectionEnd(); do_action( 'visualizer_chart_settings', get_class( $this ), $this->_data, 'general', array( 'generic' => true ) ); self::_renderGroupEnd(); From 5a7d7604e95c3870ead708a41f5b128883d15f33 Mon Sep 17 00:00:00 2001 From: girishkrishaweb Date: Wed, 5 May 2021 16:52:46 +0530 Subject: [PATCH 2/2] Add description and license / creator setting fields #794 --- classes/Visualizer/Render/Sidebar/ChartJS.php | 14 ++++++++++++ .../Sidebar/Type/GoogleCharts/Gauge.php | 22 +++++++++++++++++++ .../Render/Sidebar/Type/GoogleCharts/Geo.php | 21 ++++++++++++++++++ .../Sidebar/Type/GoogleCharts/Tabular.php | 22 ++++++++++++++++++- 4 files changed, 78 insertions(+), 1 deletion(-) diff --git a/classes/Visualizer/Render/Sidebar/ChartJS.php b/classes/Visualizer/Render/Sidebar/ChartJS.php index 50c2c98f6..d122d0090 100644 --- a/classes/Visualizer/Render/Sidebar/ChartJS.php +++ b/classes/Visualizer/Render/Sidebar/ChartJS.php @@ -296,6 +296,20 @@ protected function _renderGeneralSettings() { $this->_renderAnimationSettings(); + self::_renderSectionStart( esc_html__( 'License & Creator', 'visualizer' ), false ); + self::_renderTextItem( + esc_html__( 'License', 'visualizer' ), + 'license', + $this->license, + '' + ); + self::_renderTextItem( + esc_html__( 'Creator', 'visualizer' ), + 'creator', + $this->creator, + '' + ); + self::_renderSectionEnd(); self::_renderGroupEnd(); } diff --git a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Gauge.php b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Gauge.php index 77d38aa26..d283bf039 100644 --- a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Gauge.php +++ b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Gauge.php @@ -78,6 +78,28 @@ protected function _renderGeneralSettings() { $this->title, esc_html__( 'Text to display in the back-end admin area.', 'visualizer' ) ); + + self::_renderTextAreaItem( + esc_html__( 'Chart Description', 'visualizer' ), + 'description', + $this->description, + sprintf( esc_html__( 'Description to display in the structured data schema as explained %1$shere%2$s', 'visualizer' ), '', '' ) + ); + self::_renderSectionEnd(); + + self::_renderSectionStart( esc_html__( 'License & Creator', 'visualizer' ), false ); + self::_renderTextItem( + esc_html__( 'License', 'visualizer' ), + 'license', + $this->license, + '' + ); + self::_renderTextItem( + esc_html__( 'Creator', 'visualizer' ), + 'creator', + $this->creator, + '' + ); self::_renderSectionEnd(); self::_renderGroupEnd(); diff --git a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Geo.php b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Geo.php index e9a8ff8a3..a3d2c443e 100644 --- a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Geo.php +++ b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Geo.php @@ -64,6 +64,27 @@ protected function _renderGeneralSettings() { $this->title, esc_html__( 'Text to display in the back-end admin area.', 'visualizer' ) ); + self::_renderTextAreaItem( + esc_html__( 'Chart Description', 'visualizer' ), + 'description', + $this->description, + sprintf( esc_html__( 'Description to display in the structured data schema as explained %1$shere%2$s', 'visualizer' ), '', '' ) + ); + self::_renderSectionEnd(); + + self::_renderSectionStart( esc_html__( 'License & Creator', 'visualizer' ), false ); + self::_renderTextItem( + esc_html__( 'License', 'visualizer' ), + 'license', + $this->license, + '' + ); + self::_renderTextItem( + esc_html__( 'Creator', 'visualizer' ), + 'creator', + $this->creator, + '' + ); self::_renderSectionEnd(); self::_renderGroupEnd(); } diff --git a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Tabular.php b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Tabular.php index 1ac6b12f0..aa96780d8 100644 --- a/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Tabular.php +++ b/classes/Visualizer/Render/Sidebar/Type/GoogleCharts/Tabular.php @@ -73,8 +73,28 @@ protected function _renderGeneralSettings() { $this->title, esc_html__( 'Text to display in the back-end admin area.', 'visualizer' ) ); + self::_renderTextAreaItem( + esc_html__( 'Chart Description', 'visualizer' ), + 'description', + $this->description, + sprintf( esc_html__( 'Description to display in the structured data schema as explained %1$shere%2$s', 'visualizer' ), '', '' ) + ); self::_renderSectionEnd(); - self::_renderGroupEnd(); + + self::_renderSectionStart( esc_html__( 'License & Creator', 'visualizer' ), false ); + self::_renderTextItem( + esc_html__( 'License', 'visualizer' ), + 'license', + $this->license, + '' + ); + self::_renderTextItem( + esc_html__( 'Creator', 'visualizer' ), + 'creator', + $this->creator, + '' + ); + self::_renderGroupEnd(); } /**