PNG %k25u25%fgd5n!pro['toggle_state_woocommerce'])){ return $robots; } if(!empty($siteseo->pro['woocommerce_cart_page_no_index'])){ if(is_cart() && isset($robots['index'])){ unset($robots['index']); $robots['noindex'] = true; } } if(!empty($siteseo->pro['woocommerce_checkout_page_no_index'])){ if(is_checkout() && isset($robots['index'])){ unset($robots['index']); $robots['noindex'] = true; } } if(!empty($siteseo->pro['woocommerce_customer_account_page_no_index'])){ if(is_account_page() && isset($robots['index'])){ unset($robots['index']); $robots['noindex'] = true; } } return array_filter($robots); } // WooCommerce SEO Tags static function woocommerce(){ global $siteseo; if(!class_exists('WooCommerce') || empty($siteseo->pro['toggle_state_woocommerce'])){ return; } // WooCommerce Product og price meta if(!empty($siteseo->pro['woocommerce_product_og_price'])){ if(is_product() && function_exists('wc_get_product')){ $product = wc_get_product(get_the_ID()); if(!empty($product)){ $product_price = $product->get_price(); echo '' . "\n"; } } } // WooCommerce og currency meta if(!empty($siteseo->pro['woocommerce_product_og_currency'])){ if(function_exists('get_woocommerce_currency')){ $currency = get_woocommerce_currency(); echo '' . "\n"; } } // woocommerce generator tag if(!empty($siteseo->pro['woocommerce_meta_generator'])){ remove_action('get_the_generator_html', 'wc_generator_tag', 10, 2); remove_action('get_the_generator_xhtml', 'wc_generator_tag', 10, 2); } // Remove WooCommerce schema output if(!empty($siteseo->pro['woocommerce_schema_output'])){ add_filter('woocommerce_structured_data_product', '__return_false'); if(function_exists('WC')){ remove_action('wp_footer', [WC()->structured_data, 'output_structured_data'], 10); remove_action('woocommerce_email_order_details', [WC()->structured_data, 'output_email_structured_data'], 30); } } // Remove wooCommerce Breadcrumbs schema output if(!empty($siteseo->pro['woocommerce_schema_breadcrumbs_output'])){ add_filter('woocommerce_structured_data_breadcrumbs', '__return_false'); } } // Easy Digital Downloads SEO tags static function easy_digital_downloads(){ global $siteseo; if(!class_exists('Easy_Digital_Downloads') || empty($siteseo->pro['toggle_state_easy_digital'])){ return; } // OG price meta if(!empty($siteseo->pro['edd_product_og_price'])){ if(function_exists('get_the_ID') && function_exists('edd_get_download_price')){ $product_id = get_the_ID(); $price = edd_get_download_price($product_id); echo '' . "\n"; } } // OG currency meta if(!empty($siteseo->pro['edd_product_og_currency'])){ if(function_exists('edd_get_currency')){ $currency = edd_get_currency(); echo '' . "\n"; } } // Remove header if(!empty($siteseo->pro['edd_meta_generator'])){ remove_action('wp_head', 'edd_version_in_header'); } } // Dublin Core SEO tags static function dublin_core(){ global $siteseo; if(empty($siteseo->pro['dublin_core_enable']) || empty($siteseo->pro['toggle_state_dublin_core'])){ return; } if(function_exists('siteseo_titles_the_title')){ $title = siteseo_titles_the_title(); echo '' . "\n"; } $description = get_option('blogdescription'); if(!empty($description)){ echo '' . "\n"; } $source = htmlspecialchars(urldecode(user_trailingslashit(get_home_url()))); if(!empty($source)){ echo '' . "\n"; echo '' . "\n"; } $lang = get_locale(); if(!empty($lang)){ echo '' . "\n"; } $subject = get_bloginfo('description'); if(!empty($subject)){ echo '' . "\n"; } } // local business feature static function local_business(){ global $siteseo; if(empty($siteseo->pro['toggle_state_local_buz'])){ return; } $business_name = isset($siteseo->pro['business_type']) ? $siteseo->pro['business_type'] : ''; $street = isset($siteseo->pro['street_address']) ? $siteseo->pro['street_address'] : ''; $city = isset($siteseo->pro['city']) ? $siteseo->pro['city'] : ''; $state = isset($siteseo->pro['state']) ? $siteseo->pro['state'] : ''; $place_id = isset($siteseo->pro['postal_code']) ? $siteseo->pro['postal_code'] : ''; $country = isset($siteseo->pro['country']) ? $siteseo->pro['country'] : ''; $phone = isset($siteseo->pro['telephone']) ? $siteseo->pro['telephone'] : ''; $price_range = isset($siteseo->pro['price_range']) ? $siteseo->pro['price_range'] : ''; $latitude = isset($siteseo->pro['latitude']) ? $siteseo->pro['latitude'] : ''; $longitude = isset($siteseo->pro['longitude']) ? $siteseo->pro['longitude'] : ''; $output = '

'.esc_attr($business_name).'
'.esc_attr($street).'
'.esc_attr($place_id).'    '.esc_attr($city).'
'.esc_attr($state).'
'.esc_attr($country).'

Phone: '.esc_attr($phone).'

'; if(!empty($latitude) && !empty($longitude) && !empty($place_id)){ $output .= '' . __('View on Google Maps', 'siteseo-pro') . '

'; $output .= '
'; } // Opening hours if(isset($siteseo->pro['opening_hours']) && is_array($siteseo->pro['opening_hours'])){ $output .= '
'; $days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']; foreach($days as $key => $day){ $hours = $siteseo->pro['opening_hours'][$key]; if(!empty($hours['closed'])){ $output .= ''; } else{ $morning = ''; $afternoon = ''; if(!empty($hours['open_morning'])){ $morning = esc_html("{$hours['open_morning_start_hour']}:{$hours['open_morning_start_min']} - {$hours['open_morning_end_hour']}:{$hours['open_morning_end_min']}"); } if(!empty($hours['open_afternoon'])){ $afternoon = esc_html("{$hours['open_afternoon_start_hour']}:{$hours['open_afternoon_start_min']} - {$hours['open_afternoon_end_hour']}:{$hours['open_afternoon_end_min']}"); } $output .= ''; } } $output .= '
' . esc_html($day) . ' Closed
' . $day . ' '.$morning .' '. $afternoon .'
'; } return $output; } // structured data schema static function structured_data(){ global $siteseo; if(empty($siteseo->pro['toggle_state_stru_data']) || empty($siteseo->pro['enable_structured_data'])){ return; } if(!is_front_page() || !is_home()){ return; } // Data load $organization_logo = !empty($siteseo->pro['structured_data_image_url']) ? $siteseo->pro['structured_data_image_url'] : ''; $org_email_id = !empty($siteseo->pro['org_email']) ? $siteseo->pro['org_email'] : ''; $org_phone = !empty($siteseo->pro['org_phone_no']) ? $siteseo->pro['org_phone_no'] : ''; $org_name = !empty($siteseo->pro['org_name']) ? $siteseo->pro['org_name'] : ''; $org_legal_name = !empty($siteseo->pro['org_legal']) ? $siteseo->pro['org_legal'] : ''; $org_establish_date = !empty($siteseo->pro['establish_date']) ? $siteseo->pro['establish_date'] : ''; $org_no_emp = !empty($siteseo->pro['number_emp']) ? $siteseo->pro['number_emp'] : ''; $org_vat_id = !empty($siteseo->pro['vat_id']) ? $siteseo->pro['vat_id'] : ''; $org_tax_id = !empty($siteseo->pro['tax_id']) ? $siteseo->pro['tax_id'] : ''; $org_iso_code = !empty($siteseo->pro['iso_code']) ? $siteseo->pro['iso_code'] : ''; $org_lei_code = !empty($siteseo->pro['let_code']) ? $siteseo->pro['let_code'] : ''; $org_dnus_code = !empty($siteseo->pro['dnus_number']) ? $siteseo->pro['dnus_number'] : ''; $org_naics = !empty($siteseo->pro['naics_code']) ? $siteseo->pro['naics_code'] : ''; // JSON-LD $json_ld = [ '@context' => 'https://schema.org', '@type' => 'Organization', 'logo' => esc_url($organization_logo) ]; // Not empty if(!empty($org_email_id)) $json_ld['email'] = esc_attr($org_email_id); if(!empty($org_legal_name)) $json_ld['legalName'] = esc_attr($org_legal_name); if(!empty($org_establish_date)) $json_ld['foundingDate'] = esc_attr($org_establish_date); if(!empty($org_no_emp)) $json_ld['numberOfEmployees'] = esc_attr($org_no_emp); if(!empty($org_vat_id)) $json_ld['VatID'] = esc_attr($org_vat_id); if(!empty($org_tax_id)) $json_ld['taxID'] = esc_attr($org_tax_id); if(!empty($org_iso_code)) $json_ld['iso6523Code'] = esc_attr($org_iso_code); if(!empty($org_lei_code)) $json_ld['leiCode'] = esc_attr($org_lei_code); if(!empty($org_dnus_code)) $json_ld['duns'] = esc_attr($org_dnus_code); if(!empty($org_naics)) $json_ld['naics'] = esc_attr($org_naics); if(!empty($org_email_id) && !empty($org_phone)){ $json_ld['contactPoint'] = [ '@type' => 'ContactPoint', 'contactType' => 'Customer Support', 'email' => $org_email_id, 'telephone' => $org_phone ]; } // JSON-LD script echo ''; } static function load_data_local_business($attributes){ $data = \SiteSEOPro\Tags::local_business(); if(is_front_page() && !empty($attributes['displayOnHomepage'])){ return '
' . $data . '
'; } if(!is_front_page() && empty($attributes['displayOnHomepage'])){ return '
' . $data . '
'; } return ''; } }