ng_attempts; $rval = $this->contact_service( 'ping', array( 'args' => $vaultpress_pings ) ); if ( $rval || $ping_attempts >= 3 ) break; if ( !$rval ) usleep(500000); } while ( true ); if ( !$rval ) { if ( $this->get_option( 'connection_error_code' ) !== -8 ) { // Do not save pings when the subscription is inactive. $__vp_recursive_ping_lock = true; $this->ai_ping_insert( serialize( $vaultpress_pings ) ); } } $this->reset_pings(); if ( $close_wpdb ) { $wpdb->__destruct(); unset( $wpdb ); } return $rval; } function resolve_content_dir() { // Take the easy way out if ( defined( 'WP_CONTENT_DIR' ) ) { if ( substr( WP_CONTENT_DIR, -1 ) != DIRECTORY_SEPARATOR ) return WP_CONTENT_DIR . DIRECTORY_SEPARATOR; return WP_CONTENT_DIR; } // Best guess if ( defined( 'ABSPATH' ) ) { if ( substr( ABSPATH, -1 ) != DIRECTORY_SEPARATOR ) return ABSPATH . DIRECTORY_SEPARATOR . 'wp-content' . DIRECTORY_SEPARATOR; return ABSPATH . 'wp-content' . DIRECTORY_SEPARATOR; } // Run with a solid assumption: WP_CONTENT_DIR/vaultpress/vaultpress.php return dirname( __DIR__ ) . DIRECTORY_SEPARATOR; } function resolve_upload_path() { $upload_path = false; $upload_dir = wp_upload_dir(); if ( isset( $upload_dir['basedir'] ) ) $upload_path = $upload_dir['basedir']; // Nothing recorded? use a best guess! if ( !$upload_path || $upload_path == realpath( ABSPATH ) ) return $this->resolve_content_dir() . 'uploads' . DIRECTORY_SEPARATOR; if ( substr( $upload_path, -1 ) != DIRECTORY_SEPARATOR ) $upload_path .= DIRECTORY_SEPARATOR; return $upload_path; } function load_first( $value ) { $value = array_unique( $value ); // just in case there are duplicates return array_merge( preg_grep( '/vaultpress\.php$/', $value ), preg_grep( '/vaultpress\.php$/', $value, PREG_GREP_INVERT ) ); } function is_multisite() { if ( function_exists( 'is_multisite' ) ) return is_multisite(); return false; } function is_main_site() { if ( !function_exists( 'is_main_site' ) || !$this->is_multisite() ) return true; return is_main_site(); } function is_registered() { $key = $this->get_option( 'key' ); $secret = $this->get_option( 'secret' ); return !empty( $key ) && !empty( $secret ); } function clear_connection() { $this->delete_option( 'connection' ); $this->delete_option( 'connection_error_code' ); $this->delete_option( 'connection_error_message' ); $this->delete_option( 'connection_test' ); } function site_url() { $site_url = ''; // compatibility for WordPress MU Domain Mapping plugin if ( defined( 'DOMAIN_MAPPING' ) && DOMAIN_MAPPING && ! function_exists( 'domain_mapping_siteurl' ) ) { if ( !function_exists( 'is_plugin_active' ) ) require_once ABSPATH . '/wp-admin/includes/plugin.php'; $plugin = 'wordpress-mu-domain-mapping/domain_mapping.php'; if ( is_plugin_active( $plugin ) ) include_once( WP_PLUGIN_DIR . '/' . $plugin ); } if ( function_exists( 'domain_mapping_siteurl' ) ) $site_url = domain_mapping_siteurl( false ); if ( empty( $site_url ) ) $site_url = site_url(); return $site_url; } /** * Sync the VaultPress options to WordPress.com if the Jetpack plugin is active. */ function sync_jetpack_options() { if ( class_exists( 'Jetpack_Sync' ) && method_exists( 'Jetpack_Sync', 'sync_options' ) && defined( 'JETPACK__VERSION' ) && version_compare( JETPACK__VERSION, '4.1', '<' ) ) { Jetpack_Sync::sync_options( __FILE__, $this->auto_register_option, $this->option_name ); } } /** * Add the VaultPress options to the Jetpack options management whitelist. * Allows Jetpack to register VaultPress options automatically. * * @param array $options The list of whitelisted option names. * * @return array The updated whitelist */ function add_to_jetpack_options_whitelist( $options ) { $options[] = $this->option_name; $options[] = $this->auto_register_option; return $options; } /** * When the VaultPress auto-register option is updated, run the registration call. * * This should only be run when the option is updated from the Jetpack/WP.com * API call, and only if the new key is different than the old key. * * @param mixed $old_value The old option value, or the option name (if add_option). * @param mixed $value The new option value. */ function updated_auto_register_option( $old_value, $value ) { // Not an API call or CLI call if ( ! class_exists( 'WPCOM_JSON_API_Update_Option_Endpoint' ) && ! ( defined( 'WP_CLI' ) && WP_CLI ) ) { return; } remove_action( "update_option_{$this->auto_register_option}", array( $this, 'updated_auto_register_option' ) ); $defaults = array( 'key' => false, 'action' => 'register', // or `response` 'status' => 'working', 'error' => false, ); // `wp_parse_args` uses arrays, might as well be explicit about it. $registration = (array) json_decode( $value ); $registration = wp_parse_args( $registration, $defaults ); // If we have a working connection, don't update the key. if ( $this->check_connection( true ) ) { $registration['action'] = 'response'; $registration['error'] = 'VaultPress is already registered on this site.'; update_option( $this->auto_register_option, json_encode( $registration ) ); return; } if ( ! $registration['key'] ) { return; } $registration['action'] = 'response'; $response = $this->register( $registration['key'] ); if ( is_wp_error( $response ) ) { $registration['status'] = 'broken'; $registration['error'] = $response->get_error_message(); } else if ( $this->get_option( 'connection_error_code' ) ) { $registration['status'] = 'broken'; $registration['error'] = $this->get_option( 'connection_error_message' ); } else { $registration['error'] = false; } update_option( $this->auto_register_option, json_encode( $registration ) ); } function add_global_actions_and_filters() { add_action( 'init', array( $this, 'sync_jetpack_options' ), 0, 99 ); add_filter( 'jetpack_options_whitelist', array( $this, 'add_to_jetpack_options_whitelist' ) ); add_action( "update_option_{$this->auto_register_option}", array( $this, 'updated_auto_register_option' ), 10, 2 ); add_action( "add_option_{$this->auto_register_option}", array( $this, 'updated_auto_register_option' ), 10, 2 ); add_action( 'admin_enqueue_scripts', array( $this, 'styles' ) ); } function add_admin_actions_and_filters() { add_action( 'admin_init', array( $this, 'admin_init' ) ); add_action( 'admin_menu', array( $this, 'admin_menu' ), 5 ); # Priority 5, so it's called before Jetpack's admin_menu. add_action( 'admin_head', array( $this, 'admin_head' ) ); } function add_listener_actions_and_filters() { add_action( 'admin_bar_menu', array( $this, 'toolbar' ), 999 ); // Comments add_action( 'delete_comment', array( $this, 'comment_action_handler' ) ); add_action( 'wp_set_comment_status', array( $this, 'comment_action_handler' ) ); add_action( 'trashed_comment', array( $this, 'comment_action_handler' ) ); add_action( 'untrashed_comment', array( $this, 'comment_action_handler' ) ); add_action( 'wp_insert_comment', array( $this, 'comment_action_handler' ) ); add_action( 'comment_post', array( $this, 'comment_action_handler' ) ); add_action( 'edit_comment', array( $this, 'comment_action_handler' ) ); // Commentmeta add_action( 'added_comment_meta', array( $this, 'commentmeta_insert_handler' ), 10, 2 ); add_action( 'updated_comment_meta', array( $this, 'commentmeta_modification_handler' ), 10, 4 ); add_action( 'deleted_comment_meta', array( $this, 'commentmeta_modification_handler' ), 10, 4 ); // Users if ( $this->is_main_site() ) { add_action( 'user_register', array( $this, 'userid_action_handler' ) ); add_action( 'password_reset', array( $this, 'userid_action_handler' ) ); add_action( 'profile_update', array( $this, 'userid_action_handler' ) ); add_action( 'user_register', array( $this, 'userid_action_handler' ) ); add_action( 'deleted_user', array( $this, 'userid_action_handler' ) ); } // Usermeta if ( $this->is_main_site() ) { // Keeping these action hooks for backward compatibility add_action( 'added_usermeta', array( $this, 'usermeta_action_handler' ), 10, 4 ); add_action( 'update_usermeta', array( $this, 'usermeta_action_handler' ), 10, 4 ); add_action( 'delete_usermeta', array( $this, 'usermeta_action_handler' ), 10, 4 ); add_action( 'added_user_meta', array( $this, 'usermeta_action_handler' ), 10, 4 ); add_action( 'update_user_meta', array( $this, 'usermeta_action_handler' ), 10, 4 ); add_action( 'delete_user_meta', array( $this, 'usermeta_action_handler' ), 10, 4 ); } // Posts add_action( 'delete_post', array( $this, 'post_action_handler' ) ); add_action( 'trash_post', array( $this, 'post_action_handler' ) ); add_action( 'untrash_post', array( $this, 'post_action_handler' ) ); add_action( 'edit_post', array( $this, 'post_action_handler' ) ); add_action( 'save_post', array( $this, 'post_action_handler' ) ); add_action( 'wp_insert_post', array( $this, 'post_action_handler' ) ); add_action( 'edit_attachment', array( $this, 'post_action_handler' ) ); add_action( 'add_attachment', array( $this, 'post_action_handler' ) ); add_action( 'delete_attachment', array( $this, 'post_action_handler' ) ); add_action( 'private_to_publish', array( $this, 'post_action_handler' ) ); add_action( 'wp_restore_post_revision', array( $this, 'post_action_handler' ) ); // Postmeta add_action( 'added_post_meta', array( $this, 'postmeta_insert_handler' ), 10, 4 ); add_action( 'update_post_meta', array( $this, 'postmeta_modification_handler' ), 10, 4 ); add_action( 'updated_post_meta', array( $this, 'postmeta_modification_handler' ), 10, 4 ); add_action( 'delete_post_meta', array( $this, 'postmeta_modification_handler' ), 10, 4 ); add_action( 'deleted_post_meta', array( $this, 'postmeta_modification_handler' ), 10, 4 ); add_action( 'added_postmeta', array( $this, 'postmeta_action_handler' ), 10, 3 ); add_action( 'update_postmeta', array( $this, 'postmeta_action_handler' ), 10, 3 ); add_action( 'delete_postmeta', array( $this, 'postmeta_action_handler' ), 10, 3 ); // Links add_action( 'edit_link', array( $this, 'link_action_handler' ) ); add_action( 'add_link', array( $this, 'link_action_handler' ) ); add_action( 'delete_link', array( $this, 'link_action_handler' ) ); // Taxonomy add_action( 'created_term', array( $this, 'term_handler' ), 2 ); add_action( 'edited_terms', array( $this, 'term_handler' ), 2 ); add_action( 'delete_term', array( $this, 'term_handler' ), 2 ); add_action( 'edit_term_taxonomy', array( $this, 'term_taxonomy_handler' ) ); add_action( 'delete_term_taxonomy', array( $this, 'term_taxonomy_handler' ) ); add_action( 'edit_term_taxonomies', array( $this, 'term_taxonomies_handler' ) ); add_action( 'add_term_relationship', array( $this, 'term_relationship_handler' ), 10, 2 ); add_action( 'delete_term_relationships', array( $this, 'term_relationships_handler' ), 10, 2 ); add_action( 'set_object_terms', array( $this, 'set_object_terms_handler' ), 10, 3 ); // Files if ( $this->is_main_site() ) { add_action( 'switch_theme', array( $this, 'theme_action_handler' ) ); add_action( 'activate_plugin', array( $this, 'plugin_action_handler' ) ); add_action( 'deactivate_plugin', array( $this, 'plugin_action_handler' ) ); } add_action( 'wp_handle_upload', array( $this, 'upload_handler' ) ); // Options add_action( 'deleted_option', array( $this, 'option_handler' ), 1 ); add_action( 'updated_option', array( $this, 'option_handler' ), 1 ); add_action( 'added_option', array( $this, 'option_handler' ), 1 ); $this->add_woocommerce_actions(); $this->add_vp_required_filters(); } function add_woocommerce_actions() { add_action( 'woocommerce_tax_rate_deleted', array( $this, 'woocommerce_tax_rate_handler' ), 10, 1 ); add_action( 'woocommerce_tax_rate_updated', array( $this, 'woocommerce_tax_rate_handler' ), 10, 1 ); add_action( 'woocommerce_tax_rate_added', array( $this, 'woocommerce_tax_rate_handler' ), 10, 1 ); add_action( 'woocommerce_new_order_item', array( $this, 'woocommerce_order_item_handler' ), 10, 1 ); add_action( 'woocommerce_update_order_item', array( $this, 'woocommerce_order_item_handler' ), 10, 1 ); add_action( 'woocommerce_delete_order_item', array( $this, 'woocommerce_order_item_handler' ), 10, 1 ); add_action( 'added_order_item_meta', array( $this, 'woocommerce_order_item_meta_handler' ), 10, 1 ); add_action( 'updated_order_item_meta', array( $this, 'woocommerce_order_item_meta_handler' ), 10, 1 ); add_action( 'deleted_order_item_meta', array( $this, 'woocommerce_order_item_meta_handler' ), 10, 1 ); add_action( 'woocommerce_attribute_added', array( $this, 'woocommerce_attribute_handler' ), 10, 1 ); add_action( 'woocommerce_attribute_updated', array( $this, 'woocommerce_attribute_handler' ), 10, 1 ); add_action( 'woocommerce_attribute_deleted', array( $this, 'woocommerce_attribute_handler' ), 10, 1 ); } function add_vp_required_filters() { // Log ins if ( $this->get_option( 'login_lockdown' ) ) { add_action( 'login_form', array( $this, 'add_js_token' ) ); add_filter( 'authenticate', array( $this, 'authenticate' ), 999 ); } // Report back to VaultPress add_action( 'shutdown', array( $this, 'do_pings' ) ); // VaultPress likes being first in line add_filter( 'pre_update_option_active_plugins', array( $this, 'load_first' ) ); } function get_jetpack_email() { if ( ! class_exists( 'Jetpack' ) ) { return false; } // For version of Jetpack prior to 7.7. if ( defined( 'JETPACK__VERSION' ) && version_compare( JETPACK__VERSION, '7.7', '<' ) && ! class_exists( 'Jetpack_IXR_Client' ) ) { Jetpack::load_xml_rpc_client(); } $xml = new Jetpack_IXR_Client( array( 'user_id' => get_current_user_id() ) ); $xml->query( 'wpcom.getUserEmail' ); if ( ! $xml->isError() ) { return $xml->getResponse(); } return new WP_Error( $xml->getErrorCode(), $xml->getErrorMessage() ); } function get_key_via_jetpack( $already_purchased = false ) { if ( ! class_exists( 'Jetpack' ) ) { return false; } // For version of Jetpack prior to 7.7. if ( defined( 'JETPACK__VERSION' ) && version_compare( JETPACK__VERSION, '7.7', '<' ) && ! class_exists( 'Jetpack_IXR_Client' ) ) { Jetpack::load_xml_rpc_client(); } $xml = new Jetpack_IXR_Client( array( 'user_id' => Jetpack_Options::get_option( 'master_user' ) ) ); $xml->query( 'vaultpress.registerSite', $already_purchased ); if ( ! $xml->isError() ) { return $xml->getResponse(); } return new WP_Error( $xml->getErrorCode(), $xml->getErrorMessage() ); } function register_via_jetpack( $already_purchased = false ) { $registration_key = $this->get_key_via_jetpack( $already_purchased ); if ( is_wp_error( $registration_key ) ) { return $registration_key; } return self::register( $registration_key ); } } $vaultpress = VaultPress::init(); if ( isset( $_GET['vaultpress'] ) && $_GET['vaultpress'] ) { if ( !function_exists( 'wp_magic_quotes' ) ) { // Escape with wpdb. $_GET = add_magic_quotes( $_GET ); $_POST = add_magic_quotes( $_POST ); $_COOKIE = add_magic_quotes( $_COOKIE ); $_SERVER = add_magic_quotes( $_SERVER ); // Force REQUEST to be GET + POST. If SERVER, COOKIE, or ENV are needed, use those superglobals directly. $_REQUEST = array_merge( $_GET, $_POST ); } else { wp_magic_quotes(); } if ( !function_exists( 'wp_get_current_user' ) ) include ABSPATH . '/wp-includes/pluggable.php'; // TODO: this prevents some error notices but do we need it? is there a better way to check capabilities/logged in user/etc? if ( function_exists( 'wp_cookie_constants' ) && !defined( 'AUTH_COOKIE' ) ) wp_cookie_constants(); $vaultpress->parse_request( null ); die(); } // only load hotfixes if it's not a VP request require_once __DIR__ . '/class.vaultpress-hotfixes.php'; $hotfixes = new VaultPress_Hotfixes(); // Add a helper method to WP CLI for auto-registerion via Jetpack if ( defined( 'WP_CLI' ) && WP_CLI ) { require_once __DIR__ . '/class.vaultpress-cli.php'; } require_once __DIR__ . '/cron-tasks.php'; {"id":1717693,"date":"2019-04-04T07:56:19","date_gmt":"2019-04-04T11:56:19","guid":{"rendered":"http:\/\/specpals.com\/html_parser\/ians_download.php?param=news\/C-1-1098559-1"},"modified":"2019-04-04T08:51:20","modified_gmt":"2019-04-04T12:51:20","slug":"bjp-tops-poll-ads-spend-on-google-platforms","status":"publish","type":"post","link":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/","title":{"rendered":"BJP tops poll ads spend on Google platforms"},"content":{"rendered":"

\"BJP<\/a><\/p>\n

New Delhi, April 4 (IANS)<\/strong> Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the table with the expenditure of Rs 1.21 crore for 554 ads, the Google India Transparency Report revealed on Thursday.<\/p>\n

The YSR Congress Party, led by Y.S. Jaganmohan Reddy, follows the BJP with spending of over Rs 1.04 crore for 107 ads during the period.<\/p>\n

However, Rs 1.48 crore has been spent on promoting the Telugu Desam Party, led by Andhra Pradesh Chief Minister N. Chandrababu Naidu. While Pramanya Strategy Consulting spent Rs 85.25 lakh on promoting Naidu and his party, Digital Consulting Pvt Ltd. spent Rs 63.43 lakh on pro-TDP ads.<\/p>\n

Surprisingly, the Congress has spent just Rs 54,100 for 14 ads on the Google platforms, including YouTube.<\/p>\n

Google considers election ads as those that feature a political party, a political candidate or member of the Lok Sabha, or promotions run by a political party, political candidate, or a member of the Lok Sabha.<\/p>\n

For Google, election advertisements do not include ads run by non-political entities promoting political merchandise like T-shirts, or by news organisations to promote their coverage of political parties, Lok Sabha election campaigns, candidates, or Lok Sabha members.<\/p>\n

According to the report, the maximum money on election ads has been spent in Andhra Pradesh (Rs 1.73 crore), followed by Telangana (Rs 72 lakh), UP (Rs 18 lakh) and Maharashtra (Rs 17 lakh) for the period.<\/p>\n

Google enforced its election ads policy for India in February, which requires advertisers to provide a certificate issued by the Election Commission of India (ECI), or anyone authorised by it, for each ad they wish to run.<\/p>\n

An advertiser must first be verified by Google before submitting this pre-certificate for advertisement.<\/p>\n

Google said it introduced an India-specific Political Advertising Transparency Report and searchable Political Ads Library as part of efforts to bring transparency to poll promotions.<\/p>\n

\"In 2019, over 850 million Indians are expected to cast vote to elect the next government. We're thinking hard about elections and how we continue to support democratic processes in India and around the world,\" Chetan Krishnaswamy, Director-Public Policy, Google India, had said in a blog post.<\/p>\n

The BJP has also become the top political ad spender on Facebook. Of the Rs 10 crore spent on political advertising on Facebook till last month, the BJP and its affiliates had spent over Rs 5 crore, which is 50 per cent of the total.<\/p>\n","protected":false},"excerpt":{"rendered":"

New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the…<\/p>\n","protected":false},"author":1,"featured_media":1717748,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"BJP tops poll ads spend on Google platforms \n #BJP #Google #socialnewsxyz","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[132,143,182,1,130,13,110],"tags":[],"better_featured_image":{"id":1717748,"alt_text":"Lok Sabha Polls: Who's spending how much on Google. (IANS Infographics)","caption":"Lok Sabha Polls: Who's spending how much on Google. (IANS Infographics)","description":"","media_type":"image","media_details":{"width":815,"height":1500,"file":"2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg","sizes":{"thumbnail":{"file":"ff86242b0216495465bd77c69b080855-150x150c.jpg","width":150,"height":150,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=150%2C150&quality=80&zoom=1&ssl=1"},"medium":{"file":"ff86242b0216495465bd77c69b080855-163x300.jpg","width":163,"height":300,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=163%2C300&quality=80&zoom=1&ssl=1"},"large":{"file":"ff86242b0216495465bd77c69b080855-556x1024.jpg","width":556,"height":1024,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=556%2C1024&quality=80&zoom=1&ssl=1"},"admin-thumbs":{"file":"ff86242b0216495465bd77c69b080855-54x100.jpg","width":54,"height":100,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=54%2C100&quality=80&zoom=1&ssl=1"},"content-single":{"file":"ff86242b0216495465bd77c69b080855-777x437c.jpg","width":777,"height":437,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=777%2C437&quality=80&zoom=1&ssl=1"},"content-list":{"file":"ff86242b0216495465bd77c69b080855-260x146c.jpg","width":260,"height":146,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=260%2C146&quality=80&zoom=1&ssl=1"},"home-thumbnail":{"file":"ff86242b0216495465bd77c69b080855-360x165c.jpg","width":360,"height":165,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=360%2C165&quality=80&zoom=1&ssl=1"},"cp-thumb-small":{"file":"ff86242b0216495465bd77c69b080855-75x50c.jpg","width":75,"height":50,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=75%2C50&quality=80&zoom=1&ssl=1"},"rpwe-thumbnail":{"file":"ff86242b0216495465bd77c69b080855-45x45c.jpg","width":45,"height":45,"source_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?resize=45%2C45&quality=80&zoom=1&ssl=1"}},"image_meta":{"aperture":"0","credit":"IANS","camera":"","caption":"Lok Sabha Polls: Who's spending how much on Google. (IANS Infographics)","created_timestamp":"1554389286","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"Lok Sabha Polls: Who's spending how much on Google. (IANS Infographics)","orientation":"0","keywords":["April 2019,Infographics,All India Importance of top 10 governance issues"]}},"post":1717693,"source_url":"https:\/\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg"},"jetpack_publicize_connections":[],"yoast_head":"\nBJP tops poll ads spend on Google platforms - Social News XYZ<\/title>\n<meta name=\"description\" content=\"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BJP tops poll ads spend on Google platforms - Social News XYZ\" \/>\n<meta property=\"og:description\" content=\"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\" \/>\n<meta property=\"og:site_name\" content=\"Social News XYZ\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/socialnewsxyz\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-04T11:56:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-04-04T12:51:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=815%2C1500&quality=80&zoom=1&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"815\" \/>\n\t<meta property=\"og:image:height\" content=\"1500\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Gopi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/agk4444\" \/>\n<meta name=\"twitter:site\" content=\"@Social_News_XYZ\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Gopi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\"},\"author\":{\"name\":\"Gopi\",\"@id\":\"https:\/\/www.socialnews.xyz\/#\/schema\/person\/0128fee9d22643f97e445badb789aaba\"},\"headline\":\"BJP tops poll ads spend on Google platforms\",\"datePublished\":\"2019-04-04T11:56:19+00:00\",\"dateModified\":\"2019-04-04T12:51:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\"},\"wordCount\":407,\"publisher\":{\"@id\":\"https:\/\/www.socialnews.xyz\/#organization\"},\"articleSection\":[\"Business\",\"Main Story\",\"National\",\"Politics\",\"Study\",\"Technology\",\"Top\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\",\"url\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\",\"name\":\"BJP tops poll ads spend on Google platforms - Social News XYZ\",\"isPartOf\":{\"@id\":\"https:\/\/www.socialnews.xyz\/#website\"},\"datePublished\":\"2019-04-04T11:56:19+00:00\",\"dateModified\":\"2019-04-04T12:51:20+00:00\",\"description\":\"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ\",\"breadcrumb\":{\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.socialnews.xyz\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"General\",\"item\":\"https:\/\/www.socialnews.xyz\/category\/general\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Business\",\"item\":\"https:\/\/www.socialnews.xyz\/category\/general\/business\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"BJP tops poll ads spend on Google platforms\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.socialnews.xyz\/#website\",\"url\":\"https:\/\/www.socialnews.xyz\/\",\"name\":\"Social News XYZ\",\"description\":\"The Millennial Media\",\"publisher\":{\"@id\":\"https:\/\/www.socialnews.xyz\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.socialnews.xyz\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.socialnews.xyz\/#organization\",\"name\":\"AGK FIRE INC (DBA: Social News XYZ)\",\"url\":\"https:\/\/www.socialnews.xyz\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.socialnews.xyz\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2016\/07\/12\/Social-News-XYZ.jpg?fit=512%2C512&quality=80&zoom=1&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2016\/07\/12\/Social-News-XYZ.jpg?fit=512%2C512&quality=80&zoom=1&ssl=1\",\"width\":512,\"height\":512,\"caption\":\"AGK FIRE INC (DBA: Social News XYZ)\"},\"image\":{\"@id\":\"https:\/\/www.socialnews.xyz\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/socialnewsxyz\/\",\"https:\/\/twitter.com\/Social_News_XYZ\",\"https:\/\/www.instagram.com\/socialnewsxyz\/\",\"https:\/\/www.linkedin.com\/company\/socialnewsxyz\/\",\"https:\/\/www.pinterest.com\/socialnewsxyz\/\",\"https:\/\/www.youtube.com\/socialnewsxyz\/\",\"https:\/\/flipboard.com\/@SocialNewsXYZ\",\"https:\/\/news.google.com\/publications\/CAAqKQgKIiNDQklTRkFnTWFoQUtEbk52WTJsaGJHNWxkM011ZUhsNktBQVAB?ceid=US:en&oc=3\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.socialnews.xyz\/#\/schema\/person\/0128fee9d22643f97e445badb789aaba\",\"name\":\"Gopi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.socialnews.xyz\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a529f8b3731b5abf1f9994aa34434368?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a529f8b3731b5abf1f9994aa34434368?s=96&d=mm&r=g\",\"caption\":\"Gopi\"},\"description\":\"Gopi Adusumilli is a Programmer. He is the editor of SocialNews.XYZ and President of AGK Fire Inc. He enjoys designing websites, developing mobile applications and publishing news articles on current events from various authenticated news sources. When it comes to writing he likes to write about current world politics and Indian Movies. His future plans include developing SocialNews.XYZ into a News website that has no bias or judgment towards any. He can be reached at gopi@socialnews.xyz\",\"sameAs\":[\"https:\/\/www.socialnews.xyz\",\"https:\/\/twitter.com\/https:\/\/twitter.com\/agk4444\"],\"url\":\"https:\/\/www.socialnews.xyz\/author\/gopi\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BJP tops poll ads spend on Google platforms - Social News XYZ","description":"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/","og_locale":"en_US","og_type":"article","og_title":"BJP tops poll ads spend on Google platforms - Social News XYZ","og_description":"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ","og_url":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/","og_site_name":"Social News XYZ","article_publisher":"https:\/\/www.facebook.com\/socialnewsxyz\/","article_published_time":"2019-04-04T11:56:19+00:00","article_modified_time":"2019-04-04T12:51:20+00:00","og_image":[{"width":815,"height":1500,"url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=815%2C1500&quality=80&zoom=1&ssl=1","type":"image\/jpeg"}],"author":"Gopi","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/agk4444","twitter_site":"@Social_News_XYZ","twitter_misc":{"Written by":"Gopi","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#article","isPartOf":{"@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/"},"author":{"name":"Gopi","@id":"https:\/\/www.socialnews.xyz\/#\/schema\/person\/0128fee9d22643f97e445badb789aaba"},"headline":"BJP tops poll ads spend on Google platforms","datePublished":"2019-04-04T11:56:19+00:00","dateModified":"2019-04-04T12:51:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/"},"wordCount":407,"publisher":{"@id":"https:\/\/www.socialnews.xyz\/#organization"},"articleSection":["Business","Main Story","National","Politics","Study","Technology","Top"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/","url":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/","name":"BJP tops poll ads spend on Google platforms - Social News XYZ","isPartOf":{"@id":"https:\/\/www.socialnews.xyz\/#website"},"datePublished":"2019-04-04T11:56:19+00:00","dateModified":"2019-04-04T12:51:20+00:00","description":"New Delhi, April 4 (IANS) Political parties in India spent over Rs 3.76 crore on 831 election ads on Google platforms between February 19 and April 3, with the Bharatiya Janata Party (BJP) leading the... - Social News XYZ","breadcrumb":{"@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.socialnews.xyz\/2019\/04\/04\/bjp-tops-poll-ads-spend-on-google-platforms\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.socialnews.xyz\/"},{"@type":"ListItem","position":2,"name":"General","item":"https:\/\/www.socialnews.xyz\/category\/general\/"},{"@type":"ListItem","position":3,"name":"Business","item":"https:\/\/www.socialnews.xyz\/category\/general\/business\/"},{"@type":"ListItem","position":4,"name":"BJP tops poll ads spend on Google platforms"}]},{"@type":"WebSite","@id":"https:\/\/www.socialnews.xyz\/#website","url":"https:\/\/www.socialnews.xyz\/","name":"Social News XYZ","description":"The Millennial Media","publisher":{"@id":"https:\/\/www.socialnews.xyz\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.socialnews.xyz\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.socialnews.xyz\/#organization","name":"AGK FIRE INC (DBA: Social News XYZ)","url":"https:\/\/www.socialnews.xyz\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.socialnews.xyz\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2016\/07\/12\/Social-News-XYZ.jpg?fit=512%2C512&quality=80&zoom=1&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2016\/07\/12\/Social-News-XYZ.jpg?fit=512%2C512&quality=80&zoom=1&ssl=1","width":512,"height":512,"caption":"AGK FIRE INC (DBA: Social News XYZ)"},"image":{"@id":"https:\/\/www.socialnews.xyz\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/socialnewsxyz\/","https:\/\/twitter.com\/Social_News_XYZ","https:\/\/www.instagram.com\/socialnewsxyz\/","https:\/\/www.linkedin.com\/company\/socialnewsxyz\/","https:\/\/www.pinterest.com\/socialnewsxyz\/","https:\/\/www.youtube.com\/socialnewsxyz\/","https:\/\/flipboard.com\/@SocialNewsXYZ","https:\/\/news.google.com\/publications\/CAAqKQgKIiNDQklTRkFnTWFoQUtEbk52WTJsaGJHNWxkM011ZUhsNktBQVAB?ceid=US:en&oc=3"]},{"@type":"Person","@id":"https:\/\/www.socialnews.xyz\/#\/schema\/person\/0128fee9d22643f97e445badb789aaba","name":"Gopi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.socialnews.xyz\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a529f8b3731b5abf1f9994aa34434368?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a529f8b3731b5abf1f9994aa34434368?s=96&d=mm&r=g","caption":"Gopi"},"description":"Gopi Adusumilli is a Programmer. He is the editor of SocialNews.XYZ and President of AGK Fire Inc. He enjoys designing websites, developing mobile applications and publishing news articles on current events from various authenticated news sources. When it comes to writing he likes to write about current world politics and Indian Movies. His future plans include developing SocialNews.XYZ into a News website that has no bias or judgment towards any. He can be reached at gopi@socialnews.xyz","sameAs":["https:\/\/www.socialnews.xyz","https:\/\/twitter.com\/https:\/\/twitter.com\/agk4444"],"url":"https:\/\/www.socialnews.xyz\/author\/gopi\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.socialnews.xyz\/wp-content\/uploads\/2019\/04\/04\/ff86242b0216495465bd77c69b080855.jpg?fit=815%2C1500&quality=80&zoom=1&ssl=1","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6Nl9c-7cQJ","_links":{"self":[{"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/posts\/1717693"}],"collection":[{"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/comments?post=1717693"}],"version-history":[{"count":0,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/posts\/1717693\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/media\/1717748"}],"wp:attachment":[{"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/media?parent=1717693"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/categories?post=1717693"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.socialnews.xyz\/wp-json\/wp\/v2\/tags?post=1717693"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}