PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.9.0
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.9.0
4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 All 149 releases
← All changes | classes/Visualizer/Module/Frontend.php +24 -7 3.8.13.9.0 View file →
@@ -304,8 +304,19 @@
304 304 ),
305 305 $atts
306 306 );
307 307
308 + if ( Visualizer_Module::is_pro() && function_exists( 'icl_get_languages' ) ) {
309 + global $sitepress;
310 + $locale = icl_get_current_language();
311 + $locale = strtolower( str_replace( '_', '-', $locale ) );
312 + $trid = $sitepress->get_element_trid( $atts['id'], 'post_' . Visualizer_Plugin::CPT_VISUALIZER );
313 + $translations = $sitepress->get_element_translations( $trid );
314 + if ( isset( $translations[ $locale ] ) && is_object( $translations[ $locale ] ) ) {
315 + $atts['id'] = $translations[ $locale ]->element_id;
316 + }
317 + }
318 +
308 319 $chart_data = $this->getChartData( Visualizer_Plugin::CF_CHART_CACHE, $atts['id'] );
309 320 // if empty chart does not exists, then return empty string.
310 321 if ( ! $chart_data ) {
311 322 return '';
@@ -318,8 +329,12 @@
318 329 if ( ! apply_filters( 'visualizer_pro_show_chart', true, $atts['id'] ) ) {
319 330 return '';
320 331 }
321 332
333 + if ( ! is_admin() && ! empty( $chart_data['is_woocommerce_report'] ) ) {
334 + return '';
335 + }
336 +
322 337 // in case revisions exist.
323 338 // phpcs:ignore WordPress.CodeAnalysis.AssignmentInCondition.Found
324 339 if ( true === ( $revisions = $this->undoRevisions( $chart->ID, true ) ) ) {
325 340 $chart = get_post( $chart->ID );
@@ -638,10 +653,11 @@
638 653
639 654 // Get chart by ID.
640 655 $chart = get_post( $chart_id );
641 656 if ( $chart && Visualizer_Plugin::CPT_VISUALIZER === $chart->post_type ) {
642 - $settings = get_post_meta( $chart->ID, Visualizer_Plugin::CF_SETTINGS, true );
643 - $series = get_post_meta( $chart->ID, Visualizer_Plugin::CF_SERIES, true );
657 + $settings = get_post_meta( $chart->ID, Visualizer_Plugin::CF_SETTINGS, true );
658 + $series = get_post_meta( $chart->ID, Visualizer_Plugin::CF_SERIES, true );
659 + $is_woocommerce_report = get_post_meta( $chart->ID, Visualizer_Plugin::CF_IS_WOOCOMMERCE_SOURCE, true );
644 660
645 661 if ( isset( $settings['series'] ) && ! ( count( $settings['series'] ) - count( $series ) > 1 ) ) {
646 662 $diff_total_series = abs( count( $settings['series'] ) - count( $series ) );
647 663 if ( $diff_total_series ) {
@@ -650,13 +666,14 @@
650 666 }
651 667 }
652 668 }
653 669 $chart_data = array(
654 - 'chart' => $chart,
655 - 'type' => get_post_meta( $chart->ID, Visualizer_Plugin::CF_CHART_TYPE, true ),
656 - 'settings' => $settings,
657 - 'series' => $series,
658 - 'chart_image' => get_post_meta( $chart->ID, Visualizer_Plugin::CF_CHART_IMAGE, true ),
670 + 'chart' => $chart,
671 + 'type' => get_post_meta( $chart->ID, Visualizer_Plugin::CF_CHART_TYPE, true ),
672 + 'settings' => $settings,
673 + 'series' => $series,
674 + 'chart_image' => get_post_meta( $chart->ID, Visualizer_Plugin::CF_CHART_IMAGE, true ),
675 + 'is_woocommerce_report' => $is_woocommerce_report,
659 676 );
660 677
661 678 // Put the results in a transient. Expire after 12 hours.
662 679 set_transient( $cache_key, $chart_data, apply_filters( Visualizer_Plugin::FILTER_HANDLE_CACHE_EXPIRATION_TIME, 12 * HOUR_IN_SECONDS ) );