analytics = $analytics; $this->ui = $ui; } public function init() { if ( $this->analytics->isModuleEnabled() && $this->isCriticalSearchesWidgetEnabled() ) { if ( current_user_can( Helpers::shopManagerHasAccess() ? 'manage_woocommerce' : 'manage_options' ) ) { add_action( 'wp_dashboard_setup', array( $this, 'addWidget' ) ); if ( Multilingual::isMultilingual() ) { add_action( 'admin_init', array( $this, 'enqueueTabsScript' ), 5 ); } } } } /** * Check if the Analytics widget is enabled * * @return bool */ public function isCriticalSearchesWidgetEnabled() { return DGWT_WCAS()->settings->getOption( 'analytics_critical_searches_widget_enabled', 'off' ) === 'on'; } public function addWidget() { wp_add_dashboard_widget( 'fibosearch_analytics_critical_searches', esc_html__( 'FiboSearch - Search Analytics', 'ajax-search-for-woocommerce' ), array( $this, 'render' ) ); } public function render() { $data = new Data(); $vars = array( 'days' => $this->ui->getExpirationInDays(), 'critical-searches' => array(), 'critical-searches-total' => 0, 'settings-analytics-url' => admin_url( 'admin.php?page=dgwt_wcas_settings#analytics' ), 'multilingual' => array(), ); if ( Multilingual::isMultilingual() ) { $vars['multilingual'] = array( 'current-lang' => Multilingual::getCurrentLanguage(), 'langs' => array() ); foreach ( Multilingual::getLanguages() as $lang ) { $data->setLang( $lang ); $vars['multilingual']['langs'][ $lang ] = array( 'name' => Multilingual::getLanguageField( $lang, 'name' ), 'critical-searches' => $data->getCriticalSearches( UserInterface::CRITICAL_SEARCHES_LOAD_LIMIT ), 'critical-searches-total' => $data->getTotalCriticalSearches(), ); } } else { $vars['critical-searches'] = $data->getCriticalSearches( UserInterface::CRITICAL_SEARCHES_LOAD_LIMIT ); $vars['critical-searches-total'] = $data->getTotalCriticalSearches(); } ob_start(); ?>
:
$langName ) { ?> renderTable( $vars ); } ?>%2$s', $vars['settings-analytics-url'], esc_attr__( 'Analytics tab', 'ajax-search-for-woocommerce' ) ) ); ?>
1 critical search phrase.', 'The FiboSearch analyzer found %d critical search phrases.', $vars['critical-searches-total'], 'ajax-search-for-woocommerce' ), $vars['critical-searches-total'] ); echo ' '; printf( _n( 'These phrases have been typed by users over the last 1 day.', 'These phrases have been typed by users over the last %d days.', $vars['days'], 'ajax-search-for-woocommerce' ), $vars['days'] ); echo ' '; _e( "These phrases don`t return any search results. It's time to fix it.", 'ajax-search-for-woocommerce' ); ?>
| # | ||
|---|---|---|
', '' ), array( '', '' ), ob_get_clean() ); wp_add_inline_script( 'jquery', $script ); } }