Changeset 3366420
- Timestamp:
- 09/23/2025 11:26:47 AM (6 months ago)
- Location:
- google-sitemap-plugin
- Files:
-
- 235 added
- 12 edited
-
tags/3.3.5 (added)
-
tags/3.3.5/bws_menu (added)
-
tags/3.3.5/bws_menu/bws_functions.php (added)
-
tags/3.3.5/bws_menu/bws_include.php (added)
-
tags/3.3.5/bws_menu/bws_menu.php (added)
-
tags/3.3.5/bws_menu/class-bws-settings.php (added)
-
tags/3.3.5/bws_menu/css (added)
-
tags/3.3.5/bws_menu/css/general_style.css (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4 (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/animated-overlay.gif (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_flat_0_aaaaaa_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_flat_75_ffffff_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_glass_55_fbf9ee_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_glass_65_ffffff_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_glass_75_dadada_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_glass_75_e6e6e6_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_glass_95_fef1ec_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-bg_highlight-soft_75_cccccc_1x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-icons_222222_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-icons_2e83ff_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-icons_454545_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-icons_888888_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/images/ui-icons_cd0a0a_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.10.4/jquery-ui.css (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4 (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_flat_0_aaaaaa_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_flat_75_ffffff_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_glass_55_fbf9ee_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_glass_65_ffffff_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_glass_75_dadada_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_glass_75_e6e6e6_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_glass_95_fef1ec_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-bg_highlight-soft_75_cccccc_1x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-icons_222222_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-icons_2e83ff_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-icons_454545_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-icons_888888_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/images/ui-icons_cd0a0a_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.11.4/jquery-ui.css (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1 (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_glass_55_fbf9ee_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_glass_65_ffffff_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_glass_75_dadada_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_glass_75_e6e6e6_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_glass_95_fef1ec_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-bg_highlight-soft_75_cccccc_1x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-icons_222222_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-icons_2e83ff_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-icons_454545_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-icons_888888_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/images/ui-icons_cd0a0a_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.12.1/jquery-ui.css (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2 (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_flat_0_aaaaaa_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_flat_75_ffffff_40x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_glass_55_fbf9ee_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_glass_65_ffffff_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_glass_75_dadada_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_glass_75_e6e6e6_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_glass_95_fef1ec_1x400.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-bg_highlight-soft_75_cccccc_1x100.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-icons_222222_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-icons_2e83ff_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-icons_454545_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-icons_888888_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/images/ui-icons_cd0a0a_256x240.png (added)
-
tags/3.3.5/bws_menu/css/jquery-ui-styles/1.9.2/jquery-ui.css (added)
-
tags/3.3.5/bws_menu/css/modal.css (added)
-
tags/3.3.5/bws_menu/css/style.css (added)
-
tags/3.3.5/bws_menu/deactivation-form.php (added)
-
tags/3.3.5/bws_menu/deprecated.php (added)
-
tags/3.3.5/bws_menu/fonts (added)
-
tags/3.3.5/bws_menu/fonts/bwsicons.eot (added)
-
tags/3.3.5/bws_menu/fonts/bwsicons.svg (added)
-
tags/3.3.5/bws_menu/fonts/bwsicons.ttf (added)
-
tags/3.3.5/bws_menu/fonts/bwsicons.woff (added)
-
tags/3.3.5/bws_menu/icons (added)
-
tags/3.3.5/bws_menu/icons/plugins (added)
-
tags/3.3.5/bws_menu/icons/plugins/bike-rental.png (added)
-
tags/3.3.5/bws_menu/icons/plugins/gpt-ai-content-creator.png (added)
-
tags/3.3.5/bws_menu/icons/themes (added)
-
tags/3.3.5/bws_menu/icons/themes/opening.png (added)
-
tags/3.3.5/bws_menu/icons/themes/realestate.png (added)
-
tags/3.3.5/bws_menu/icons/themes/rent-a-bike.png (added)
-
tags/3.3.5/bws_menu/icons/themes/renty.png (added)
-
tags/3.3.5/bws_menu/icons/themes/unity.png (added)
-
tags/3.3.5/bws_menu/images (added)
-
tags/3.3.5/bws_menu/images/affiliate-background.png (added)
-
tags/3.3.5/bws_menu/images/close_banner.png (added)
-
tags/3.3.5/bws_menu/images/earn-icon.svg (added)
-
tags/3.3.5/bws_menu/images/join-icon.svg (added)
-
tags/3.3.5/bws_menu/images/membership-background.jpg (added)
-
tags/3.3.5/bws_menu/images/promote-icon.svg (added)
-
tags/3.3.5/bws_menu/images/tooltip_icons.png (added)
-
tags/3.3.5/bws_menu/js (added)
-
tags/3.3.5/bws_menu/js/bws_menu.js (added)
-
tags/3.3.5/bws_menu/js/bws_tooltip.js (added)
-
tags/3.3.5/bws_menu/js/c_o_o_k_i_e.js (added)
-
tags/3.3.5/bws_menu/js/general_script.js (added)
-
tags/3.3.5/bws_menu/js/shortcode-button.js (added)
-
tags/3.3.5/bws_menu/languages (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-cs_CZ.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-cs_CZ.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-de_DE.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-de_DE.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-es_ES.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-es_ES.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-fr_FR.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-fr_FR.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-id_ID.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-id_ID.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-it_IT.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-it_IT.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-ja.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-ja.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-nl_NL.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-nl_NL.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-pl_PL.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-pl_PL.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-pt_BR.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-pt_BR.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-ru_RU.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-ru_RU.po (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-uk.mo (added)
-
tags/3.3.5/bws_menu/languages/bestwebsoft-uk.po (added)
-
tags/3.3.5/bws_menu/product_list.php (added)
-
tags/3.3.5/css (added)
-
tags/3.3.5/css/icon.css (added)
-
tags/3.3.5/css/style.css (added)
-
tags/3.3.5/google-sitemap-plugin.php (added)
-
tags/3.3.5/google_api (added)
-
tags/3.3.5/google_api/Auth (added)
-
tags/3.3.5/google_api/Auth/Abstract.php (added)
-
tags/3.3.5/google_api/Auth/AppIdentity.php (added)
-
tags/3.3.5/google_api/Auth/AssertionCredentials.php (added)
-
tags/3.3.5/google_api/Auth/ComputeEngine.php (added)
-
tags/3.3.5/google_api/Auth/Exception.php (added)
-
tags/3.3.5/google_api/Auth/LoginTicket.php (added)
-
tags/3.3.5/google_api/Auth/OAuth2.php (added)
-
tags/3.3.5/google_api/Auth/Simple.php (added)
-
tags/3.3.5/google_api/Cache (added)
-
tags/3.3.5/google_api/Cache/Abstract.php (added)
-
tags/3.3.5/google_api/Cache/Apc.php (added)
-
tags/3.3.5/google_api/Cache/Exception.php (added)
-
tags/3.3.5/google_api/Cache/File.php (added)
-
tags/3.3.5/google_api/Cache/Memcache.php (added)
-
tags/3.3.5/google_api/Cache/Null.php (added)
-
tags/3.3.5/google_api/Client.php (added)
-
tags/3.3.5/google_api/Collection.php (added)
-
tags/3.3.5/google_api/Config.php (added)
-
tags/3.3.5/google_api/Exception.php (added)
-
tags/3.3.5/google_api/Http (added)
-
tags/3.3.5/google_api/Http/Batch.php (added)
-
tags/3.3.5/google_api/Http/CacheParser.php (added)
-
tags/3.3.5/google_api/Http/MediaFileUpload.php (added)
-
tags/3.3.5/google_api/Http/REST.php (added)
-
tags/3.3.5/google_api/Http/Request.php (added)
-
tags/3.3.5/google_api/IO (added)
-
tags/3.3.5/google_api/IO/Abstract.php (added)
-
tags/3.3.5/google_api/IO/Curl.php (added)
-
tags/3.3.5/google_api/IO/Exception.php (added)
-
tags/3.3.5/google_api/IO/Stream.php (added)
-
tags/3.3.5/google_api/IO/cacerts.pem (added)
-
tags/3.3.5/google_api/Logger (added)
-
tags/3.3.5/google_api/Logger/Abstract.php (added)
-
tags/3.3.5/google_api/Logger/Exception.php (added)
-
tags/3.3.5/google_api/Logger/File.php (added)
-
tags/3.3.5/google_api/Logger/Null.php (added)
-
tags/3.3.5/google_api/Logger/Psr.php (added)
-
tags/3.3.5/google_api/Model.php (added)
-
tags/3.3.5/google_api/Service (added)
-
tags/3.3.5/google_api/Service.php (added)
-
tags/3.3.5/google_api/Service/Exception.php (added)
-
tags/3.3.5/google_api/Service/Resource.php (added)
-
tags/3.3.5/google_api/Service/SiteVerification.php (added)
-
tags/3.3.5/google_api/Service/Webmasters.php (added)
-
tags/3.3.5/google_api/Signer (added)
-
tags/3.3.5/google_api/Signer/Abstract.php (added)
-
tags/3.3.5/google_api/Signer/P12.php (added)
-
tags/3.3.5/google_api/Task (added)
-
tags/3.3.5/google_api/Task/Exception.php (added)
-
tags/3.3.5/google_api/Task/Retryable.php (added)
-
tags/3.3.5/google_api/Task/Runner.php (added)
-
tags/3.3.5/google_api/Utils (added)
-
tags/3.3.5/google_api/Utils.php (added)
-
tags/3.3.5/google_api/Utils/URITemplate.php (added)
-
tags/3.3.5/google_api/Verifier (added)
-
tags/3.3.5/google_api/Verifier/Abstract.php (added)
-
tags/3.3.5/google_api/Verifier/Pem.php (added)
-
tags/3.3.5/google_api/autoload.php (added)
-
tags/3.3.5/image_sitemap.xsl (added)
-
tags/3.3.5/images (added)
-
tags/3.3.5/images/pro_screen_1.png (added)
-
tags/3.3.5/includes (added)
-
tags/3.3.5/includes/class-gglstmp-settings.php (added)
-
tags/3.3.5/includes/pro_banners.php (added)
-
tags/3.3.5/js (added)
-
tags/3.3.5/js/admin_script.js (added)
-
tags/3.3.5/languages (added)
-
tags/3.3.5/languages/google-sitemap-plugin-cs_CZ.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-cs_CZ.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-da.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-da.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-de_DE.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-de_DE.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-es_ES.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-es_ES.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-fr_FR.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-fr_FR.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-it_IT.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-it_IT.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-ja.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-ja.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-no.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-no.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-pt_BR.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-pt_BR.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-ru_RU.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-ru_RU.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-sv.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-sv.po (added)
-
tags/3.3.5/languages/google-sitemap-plugin-uk.mo (added)
-
tags/3.3.5/languages/google-sitemap-plugin-uk.po (added)
-
tags/3.3.5/readme.txt (added)
-
tags/3.3.5/screenshot-1.png (added)
-
tags/3.3.5/screenshot-2.png (added)
-
tags/3.3.5/screenshot-3.png (added)
-
tags/3.3.5/sitemap-index.xsl (added)
-
tags/3.3.5/sitemap.xsl (added)
-
tags/3.3.5/video_sitemap.xsl (added)
-
trunk/bws_menu/bws_functions.php (modified) (9 diffs)
-
trunk/bws_menu/bws_menu.php (modified) (1 diff)
-
trunk/bws_menu/css/general_style.css (modified) (2 diffs)
-
trunk/bws_menu/fonts/bwsicons.eot (modified) (previous)
-
trunk/bws_menu/fonts/bwsicons.svg (modified) (3 diffs)
-
trunk/bws_menu/fonts/bwsicons.ttf (modified) (previous)
-
trunk/bws_menu/fonts/bwsicons.woff (modified) (previous)
-
trunk/bws_menu/product_list.php (modified) (14 diffs)
-
trunk/google-sitemap-plugin.php (modified) (7 diffs)
-
trunk/includes/class-gglstmp-settings.php (modified) (6 diffs)
-
trunk/js/admin_script.js (modified) (1 diff)
-
trunk/readme.txt (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
google-sitemap-plugin/trunk/bws_menu/bws_functions.php
r3184465 r3366420 2 2 /** 3 3 * @package BWS Menu 4 * @version 2.4. 34 * @version 2.4.4 5 5 * Main functions 6 6 */ … … 233 233 */ 234 234 function bws_admin_notices() { 235 global $bws_versions_notice_array, $bws_plugin_banner_to_settings, $bstwbsftwppdtplgns_options, $bws_plugin_banner_go_pro, $bstwbsftwppdtplgns_banner_array, $bws_plugin_banner_timeout , $bws_plugin_banner_to_promo;235 global $bws_versions_notice_array, $bws_plugin_banner_to_settings, $bstwbsftwppdtplgns_options, $bws_plugin_banner_go_pro, $bstwbsftwppdtplgns_banner_array, $bws_plugin_banner_timeout; 236 236 237 237 /* bws_plugin_banner_go_pro */ … … 367 367 } 368 368 369 /* banner_to_setting_promo */370 if ( ! empty( $bws_plugin_banner_to_promo ) ) {371 $key = rand( 0, count( $bws_plugin_banner_to_promo ) - 1 );372 ?>373 <div class="updated" style="padding: 0; margin: 0; border: none; background: none;">374 <div class="bws_banner_on_plugin_page bws_banner_to_settings">375 <div class="icon">376 <img title="" src="<?php echo esc_url( $bws_plugin_banner_to_promo[$key]['banner_url'] ); ?>" alt="" />377 </div>378 <div class="text">379 <strong><?php echo esc_html( $bws_plugin_banner_to_promo[$key]['message'][0] ); ?></strong>380 <br />381 <?php echo esc_html( $bws_plugin_banner_to_promo[$key]['message'][1] ); ?>382 </div>383 <div class="button_div">384 <a class="button" href="<?php echo esc_url( self_admin_url( $bws_plugin_banner_to_promo[$key]['settings_url'] ) ); ?>"><?php esc_html_e( 'Go to Settings', 'bestwebsoft' ); ?></a>385 </div>386 <form action="" method="post">387 <button class="notice-dismiss bws_hide_promo_notice" title="<?php esc_html_e( 'Close notice', 'bestwebsoft' ); ?>"></button>388 <input type="hidden" name="bws_hide_settings_promo_notice_<?php echo esc_html( $bws_plugin_banner_to_promo[$key]['plugin_options_name'] ); ?>" value="hide" />389 <?php wp_nonce_field( plugin_basename( __FILE__ ), 'bws_settings_nonce_name' ); ?>390 </form>391 </div>392 </div>393 <?php394 }395 396 369 /** 397 370 * Show notices about deprecated_function … … 455 428 456 429 if ( false === strrpos( $banner_url_or_slug, '/' ) ) { 457 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256. gif';430 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256.png'; 458 431 } 459 432 … … 489 462 490 463 if ( false === strrpos( $banner_url_or_slug, '/' ) ) { 491 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256. gif';464 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256.png'; 492 465 } 493 466 … … 535 508 536 509 if ( false === strrpos( $banner_url_or_slug, '/' ) ) { 537 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256. gif';510 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256.png'; 538 511 } 539 512 … … 543 516 'banner_url' => $banner_url_or_slug, 544 517 'settings_url' => $settings_url, 545 'post_type_url' => $post_type_url,546 );547 }548 }549 550 if ( ! function_exists( 'bws_plugin_banner_to_promo' ) ) {551 /**552 * Function settings for banner553 *554 * @param array $plugin_info Plugin info.555 * @param array $plugin_options_name Plugin option name.556 * @param array $banner_url_or_slug Url or slug for icon.557 * @param array $settings_url Url for settings.558 * @param array $post_type_url (Optional) Url for banner.559 * @return global array560 */561 function bws_plugin_banner_to_promo( $plugin_info, $plugin_options_name, $banner_url_or_slug, $settings_url, $message = array(), $post_type_url = false ) {562 global $bws_plugin_banner_to_promo;563 564 $is_network_admin = is_network_admin();565 566 $plugin_options = $is_network_admin ? get_site_option( $plugin_options_name ) : get_option( $plugin_options_name );567 568 if ( isset( $plugin_options['display_promo_time'] ) && $plugin_options['display_promo_time'] + 604800000 < time() ) {569 $plugin_options['display_promo_notice'] = 1;570 if ( $is_network_admin ) {571 update_site_option( $plugin_options_name, $plugin_options );572 } else {573 update_option( $plugin_options_name, $plugin_options );574 }575 }576 577 if ( isset( $plugin_options['display_promo_notice'] ) && 0 === $plugin_options['display_promo_notice'] ) {578 return;579 }580 581 if ( isset( $_POST[ 'bws_hide_settings_promo_notice_' . $plugin_options_name ] ) && check_admin_referer( plugin_basename( __FILE__ ), 'bws_settings_nonce_name' ) ) {582 $plugin_options['display_promo_notice'] = 0;583 $plugin_options['display_promo_time'] = time();584 if ( $is_network_admin ) {585 update_site_option( $plugin_options_name, $plugin_options );586 } else {587 update_option( $plugin_options_name, $plugin_options );588 }589 return;590 }591 592 if ( false === strrpos( $banner_url_or_slug, '/' ) ) {593 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256.gif';594 }595 596 $bws_plugin_banner_to_promo[] = array(597 'plugin_info' => $plugin_info,598 'plugin_options_name' => $plugin_options_name,599 'banner_url' => $banner_url_or_slug,600 'settings_url' => $settings_url,601 'message' => $message,602 518 'post_type_url' => $post_type_url, 603 519 ); … … 664 580 665 581 if ( false === strrpos( $banner_url_or_slug, '/' ) ) { 666 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256. gif';582 $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-256x256.png'; 667 583 } 668 584 ?> … … 685 601 </div> 686 602 <?php 687 }688 }689 690 if ( ! function_exists( 'bws_plugin_promo_banner' ) ) {691 /**692 * Function display for feature banner693 *694 * @param array $plugin_info Plugin info.695 * @param array $plugin_options_name Plugin option name.696 * @param array $banner_url_or_slug Url or slug for icon.697 * @echo string698 */699 function bws_plugin_promo_banner( $plugin_info, $plugin_options_name, $banner_url_or_slug, $plugin_url ) {700 $is_network_admin = is_network_admin();701 702 $promo_plugins = array( 'google-captcha', 'contact-form-plugin' );703 704 $plugin_options = $is_network_admin ? get_site_option( $plugin_options_name ) : get_option( $plugin_options_name );705 706 if ( in_array( $banner_url_or_slug, $promo_plugins ) ) {707 if ( isset( $plugin_options['display_promo_banner_time'] ) && $plugin_options['display_promo_banner_time'] + 604800000 < time() ) {708 $plugin_options['display_promo_banner'] = 1;709 if ( $is_network_admin ) {710 update_site_option( $plugin_options_name, $plugin_options );711 } else {712 update_option( $plugin_options_name, $plugin_options );713 }714 }715 if ( isset( $plugin_options['display_promo_banner'] ) && 0 === $plugin_options['display_promo_banner'] ) {716 return;717 }718 719 if ( isset( $_POST[ 'bws_hide_promo_banner_' . $plugin_options_name ] ) && check_admin_referer( $plugin_info['Name'], 'bws_settings_nonce_name' ) ) {720 $plugin_options['display_promo_banner'] = 0;721 $plugin_options['display_promo_banner_time'] = time();722 if ( $is_network_admin ) {723 update_site_option( $plugin_options_name, $plugin_options );724 } else {725 update_option( $plugin_options_name, $plugin_options );726 }727 return;728 }729 ?>730 <div style="padding: 0; margin: 0; border: none; background: none; position: relative;">731 <div class="bws_banner_on_plugin_page bws_promo_banner">732 <div class="promo-banner-left">733 <div class="promo-banner-upgrade"><?php esc_html_e( 'Upgrade to pro', 'bestwebsoft' ); ?></div>734 <div class="promo-banner-off"><?php esc_html_e( '30% OFF', 'bestwebsoft' ); ?></div>735 </div>736 <div class="promo-banner-text">737 <div class="promo-banner-text-top"><?php esc_html_e( 'Get exclusive Pro features and premium support.', 'bestwebsoft' ); ?></div>738 <div class="promo-banner-text-bottom"><?php printf( '%s <span>%s</span> %s', esc_html__( 'Use', 'bestwebsoft' ), esc_html__( 'UPGRADE', 'bestwebsoft' ), esc_html__( 'promo code for instant savings!', 'bestwebsoft' ) ); ?></div>739 </div>740 <div class="promo-banner-get-pro"><?php esc_html_e( 'Get PRO NOW', 'bestwebsoft' ); ?></div>741 </div>742 <a href="<?php echo esc_url( $plugin_url ); ?>" class="promo-banner-link"></a>743 <form action="" method="post">744 <button class="notice-dismiss bws_hide_settings_notice bws_hide_promo_notice" title="Close notice"></button>745 <input type="hidden" name="bws_hide_promo_banner_gglcptch_options" value="hide">746 <?php wp_nonce_field( $plugin_info['Name'], 'bws_settings_nonce_name' ); ?>747 </form>748 </div>749 <?php750 }751 603 } 752 604 } -
google-sitemap-plugin/trunk/bws_menu/bws_menu.php
r3015189 r3366420 6 6 /** 7 7 * Function for displaying BestWebSoft menu 8 * Version: 2.4. 38 * Version: 2.4.4 9 9 */ 10 10 if ( ! function_exists( 'bws_admin_enqueue_scripts' ) ) { -
google-sitemap-plugin/trunk/bws_menu/css/general_style.css
r3184465 r3366420 535 535 -webkit-box-shadow: 0 0 3px #555; 536 536 -moz-box-shadow: 0 0 3px #555; 537 max-width: 300px;538 position: absolute;539 z-index: 2;540 537 } 541 538 .bws-tooltip-content a { … … 912 909 } 913 910 } 914 /* Promo banner */915 .bws_promo_banner {916 background: radial-gradient(74% 10281.6% at 33.47% 26%, rgba(64, 128, 255, 0.92) 0%, #566fef 100%);917 text-align: center;918 display: flex;919 color: #fff;920 padding: 23px 75px 20px;921 justify-content: space-between;922 align-items: center;923 }924 .promo-banner-left {925 display: flex;926 }927 .promo-banner-upgrade {928 font-size: 48px;929 position: relative;930 padding-right: 30px;931 text-transform: uppercase;932 font-weight: 700;933 line-height: 36px;934 }935 .promo-banner-upgrade:after{936 display: table;937 position: absolute;938 width: 4px;939 height: 42px;940 background-color: #fff;941 content: '';942 right: 0;943 top: 0;944 }945 .promo-banner-off {946 position: relative;947 font-size: 30px;948 background-color: #ffbb01;949 padding: 18px 10px 20px;950 margin-left: 30px;951 margin-top: -4px;952 font-weight: 700;953 }954 .promo-banner-text {955 font-size: 22px;956 line-height: 26px;957 }958 .promo-banner-text-bottom span {959 color: #ffbb01;960 }961 .promo-banner-get-pro {962 border: 3px solid #ffc411f7;963 font-size: 27px;964 padding: 1px 15px 5px;965 line-height: 29px;966 font-weight: 600;967 }968 .bws_hide_promo_notice::before {969 color: #fff;970 }971 .promo-banner-link {972 position: absolute;973 left: 0;974 right: 0;975 top: 0;976 bottom: 0;977 }978 @media screen and (max-width: 1700px) {979 .bws_promo_banner {980 padding: 23px 25px 20px;981 }982 }983 @media screen and (max-width: 1580px) {984 .bws_promo_banner {985 flex-wrap: wrap;986 }987 .promo-banner-left {988 width: 100%;989 justify-content: center;990 padding-bottom: 15px;991 }992 }993 @media screen and (max-width: 835px) {994 .bws_promo_banner {995 justify-content: center;996 }997 .promo-banner-text {998 width: 100%;999 }1000 }1001 @media screen and (max-width: 835px) {1002 .bws_promo_banner {1003 justify-content: center;1004 }1005 .promo-banner-left {1006 padding-bottom: 10px;1007 }1008 .promo-banner-text {1009 width: 100%;1010 padding-bottom: 15px;1011 }1012 }1013 @media screen and (max-width: 768px) {1014 .promo-banner-upgrade {1015 font-size: 34px;1016 }1017 .promo-banner-upgrade:after {1018 padding-right: 10px;1019 display: none;1020 }1021 .promo-banner-off {1022 padding: 10px;1023 margin-top: 0;1024 margin-left: 0;1025 font-size: 28px;1026 }1027 }1028 @media screen and (max-width: 560px) {1029 .promo-banner-upgrade {1030 letter-spacing: -1px;1031 padding-right: 10px;1032 font-size: 28px;1033 }1034 .promo-banner-text-top {1035 display: none;1036 }1037 .promo-banner-text-bottom {1038 font-size: 16px;1039 }1040 .promo-banner-off {1041 font-size: 24px;1042 }1043 .promo-banner-get-pro {1044 font-size: 18px;1045 }1046 }1047 @media screen and (max-width: 450px) {1048 .bws_promo_banner {1049 padding: 14px 10px;1050 }1051 .promo-banner-upgrade {1052 font-size: 24px;1053 }1054 .promo-banner-off {1055 font-size: 20px;1056 }1057 .promo-banner-get-pro {1058 font-size: 16px;1059 }1060 }1061 @media screen and (max-width: 365px) {1062 .promo-banner-left {1063 display: block;1064 text-align: center;1065 }1066 .promo-banner-upgrade {1067 padding-bottom: 10px;1068 }1069 .promo-banner-get-pro {1070 width: 100%;1071 }1072 } -
google-sitemap-plugin/trunk/bws_menu/fonts/bwsicons.svg
r3184465 r3366420 6 6 <![CDATA[ 7 7 { 8 "fontFamily": " bwsicons",8 "fontFamily": "icomoon", 9 9 "majorVersion": 1, 10 10 "minorVersion": 0, 11 11 "version": "Version 1.0", 12 "fontId": " bwsicons",13 "psName": " bwsicons",12 "fontId": "icomoon", 13 "psName": "icomoon", 14 14 "subFamily": "Regular", 15 "fullName": " bwsicons",15 "fullName": "icomoon", 16 16 "description": "Font generated by IcoMoon." 17 17 } … … 20 20 </metadata> 21 21 <defs> 22 <font id=" bwsicons" horiz-adv-x="1024">22 <font id="icomoon" horiz-adv-x="1024"> 23 23 <font-face units-per-em="1024" ascent="960" descent="-64" /> 24 24 <missing-glyph horiz-adv-x="1024" /> … … 86 86 <glyph unicode="" glyph-name="Columns" data-tags="Columns" d="M249.6 817.2v-738.4h-128v738.4h128zM467.2 817.2v-738.4h-128v738.4h128zM684.8 817.2v-738.4h-128v738.4h128zM902.4 817.2v-738.4h-128v738.4h128z" /> 87 87 <glyph unicode="" glyph-name="GPTAi" data-tags="GPT Ai" d="M409.919 184.994l329.81-142.572h-659.627l329.81 142.572zM409.919 737.754l400.483-702.805-400.483 173.731-400.483-173.731 400.483 702.805zM809.819 784.196l102.953 103.537 101.792-102.365-102.953-103.537-101.792 102.365zM810.403 753.518l102.088-97.994 102.088 97.994v-718.601h-204.17v718.601z" /> 88 <glyph unicode="" glyph-name="AdBock-Detector" data-tags="AdBock Detector" d="M463.97 833.512c-12.177-12.091-17.25-21.663-17.25-32.747v-15.114l-25.368 3.023c-28.92 3.527-45.156-4.534-60.884-30.228-9.133-14.61-10.148-25.693-10.148-118.392v-102.774l-17.25 10.58c-23.847 14.61-41.605 13.602-59.362-4.534l-15.221-15.114 1.522-134.514c2.537-151.641 4.566-163.731 39.068-216.631 23.846-36.779 60.884-67.007 100.459-82.621 26.89-10.583 39.068-12.094 137.499-13.605 105.532-1.511 108.067-1.511 134.452 10.578 30.949 14.107 55.808 37.282 71.029 65.998 11.165 20.152 11.165 25.192 12.686 272.553 1.014 165.246 0 257.944-3.554 270.035-3.042 9.572-11.16 23.175-18.77 30.228-10.653 10.076-17.756 12.091-42.62 11.587l-29.428-0.504-2.535 25.189c-2.028 20.656-5.075 28.213-18.775 40.304-15.221 13.602-19.277 14.61-44.648 12.595-26.887-2.519-29.428-1.511-45.155 14.61-14.714 14.61-20.291 16.625-42.615 16.625-22.834 0-27.907-2.015-43.129-17.129zM524.855 814.871l13.193-10.076 1.014-152.146 1.521-152.146h25.366l2.54 138.543c1.521 76.073 4.563 141.567 6.596 145.093 7.103 10.076 43.127 7.557 49.212-3.527 3.047-6.046 5.075-63.982 5.075-153.657 0-78.592 1.521-146.604 3.042-151.139 3.554-8.564 19.789-11.084 24.864-3.526 1.521 2.519 3.042 46.349 3.042 97.232 0 97.233 4.061 133.506 15.221 140.559 13.193 8.565 37.038 3.023 43.634-10.58 8.117-15.618 9.639-486.162 1.521-513.87-6.596-23.681-31.963-53.402-56.822-65.998-18.775-9.574-27.399-10.076-127.354-8.565-97.92 1.511-109.589 3.022-131.914 12.596-52.259 24.183-95.386 79.599-110.099 142.068-7.103 28.717-9.133 246.861-2.537 256.937 8.625 14.61 37.546-4.030 52.766-33.25 3.044-6.046 5.581-37.279 5.581-73.049 0-65.496 3.044-76.576 18.265-73.554 9.133 1.511 9.64 11.080 12.177 202.021 2.537 191.442 3.044 201.014 12.177 208.067 12.684 9.068 28.92 9.068 41.604 0 9.133-6.549 9.64-15.114 11.162-136.529 1.522-111.842 2.537-129.475 9.64-131.994 19.28-7.557 21.31 8.564 21.817 168.771 0 84.134 1.522 155.673 3.044 158.192 3.044 4.534 20.297 13.099 27.907 13.603 2.028 0.504 9.131-4.030 16.742-10.076zM463.761 714.725c-100.293-22.541-179.13-97.678-204.578-195.356-9.98-39.071-9.48-108.7 0.499-143.263 8.981-30.556 28.94-72.629 40.916-86.155 6.986-8.013 6.986-9.519 0-16.528-6.486-6.512-9.98-7.014-18.961-2.003-10.479 5.508-17.464 0-109.275-92.17l-97.798-98.18v-25.043c0-21.539 2.495-27.051 16.466-41.074 13.971-14.028 19.46-16.533 40.916-16.533h24.948l97.798 98.18c86.821 87.159 97.299 99.179 92.31 108.196-3.992 7.516-3.493 12.522 1.497 19.536 6.486 8.515 7.983 9.017 16.466 1.501 13.472-12.522 55.385-32.559 85.823-41.571 34.429-10.021 103.788-10.523 142.705-0.502 94.805 25.043 171.147 104.692 194.6 203.368 45.404 194.355-129.735 371.177-324.332 327.598zM585.012 682.667c45.404-12.022 76.343-30.055 110.771-65.62 59.874-61.111 81.831-140.756 62.37-224.909-20.455-87.159-91.812-159.292-179.627-181.333-13.471-3.504-43.411-5.006-71.854-3.504-42.911 2.003-52.89 4.509-86.321 20.54-51.893 25.043-91.811 65.118-116.759 117.213-17.464 35.562-18.961 43.078-20.957 91.663-1.497 44.583-0.499 57.607 8.982 85.157 41.913 125.228 167.155 194.354 293.396 160.793zM326.045 243.364c-2.994-3.504-7.485-5.508-10.478-4.007-2.495 1.506-1.996 6.010 1.497 10.021 2.994 3.504 7.485 5.508 10.479 4.007 2.494-1.506 1.996-6.010-1.497-10.021zM323.525 914.532h391.863l277.216-273.236v-386.593l-277.216-273.234h-391.863l-277.215 273.234v386.593l277.215 273.236zM333.716 889.677l-262.551-258.782v-365.794l262.55-258.779h371.483l262.552 258.779v365.794l-262.552 258.782h-371.482z" />89 88 </font></defs></svg> -
google-sitemap-plugin/trunk/bws_menu/product_list.php
r3184465 r3366420 19 19 'security' => array( 'name' => __( 'Security', 'bestwebsoft' ) ), 20 20 'seo' => array( 'name' => __( 'SEO', 'bestwebsoft' ) ), 21 'smm' => array( 'name' => __( 'SMM', 'bestwebsoft' ) ),22 21 ); 23 22 … … 45 44 'pro_settings' => 'admin.php?page=captcha_pro.php', 46 45 ), 47 'bws-car-rental/bws-car-rental.php' => array(48 'category' => array( 'ecommerce' ),49 'name' => 'Car Rental V2',50 'description' => __( 'Create your own rental website for car renting and booking.', 'bestwebsoft' ),51 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/?k=ca43df54beefae7128a7005bce0ec651&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,52 'settings' => 'admin.php?page=bws-car-rental-settings',53 'pro_version' => 'bws-car-rental-pro/bws-car-rental-pro.php',54 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/buy/?k=63cac1b736047a3f5a2f5a7c5336f3c4&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,55 'pro_settings' => 'edit.php?post_type=bws_bkng_products&page=bws-car-rental-pro-settings',56 'icon' => '//ps.w.org/car-rental/assets/icon-128x128.png',57 'install_url' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/',58 ),59 'columns-bws/columns-bws.php' => array(60 'category' => array( 'content' ),61 'name' => 'Columns',62 'description' => __( 'Add columns with custom content to WordPress website pages, posts, widgets, etc.', 'bestwebsoft' ),63 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/columns/?k=6d2cddc059a04e4d528cec14de47fb1e&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,64 'settings' => 'admin.php?page=columns-settings.php',65 ),66 46 'contact-form-plugin/contact_form.php' => array( 67 47 'category' => array( 'marketing', 'recommended' ), … … 74 54 'pro_settings' => 'admin.php?page=contact_form_pro.php', 75 55 ), 76 'contact-form-multi/contact-form-multi.php' => array(77 'category' => array( 'marketing', 'recommended' ),78 'name' => 'Contact Form Multi',79 'description' => __( 'Add unlimited number of contact forms to WordPress website.', 'bestwebsoft' ),80 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/contact-form-multi/?k=83cdd9e72a9f4061122ad28a67293c72&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,81 'settings' => '',82 'pro_version' => 'contact-form-multi-pro/contact-form-multi-pro.php',83 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/contact-form-multi/buy/?k=fde3a18581c143654f060c398b07e8ac&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,84 'pro_settings' => '',85 ),86 'contact-form-to-db/contact_form_to_db.php' => array(87 'category' => array( 'admin-tools', 'recommended' ),88 'name' => 'Contact Form to DB',89 'description' => __( 'Save and manage Contact Form messages. Never lose important data.', 'bestwebsoft' ),90 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/contact-form-to-db/?k=ba3747d317c2692e4136ca096a8989d6&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,91 'settings' => 'admin.php?page=contact_form_to_db.php',92 'pro_version' => 'contact-form-to-db-pro/contact_form_to_db_pro.php',93 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/contact-form-to-db/buy/?k=6ce5f4a9006ec906e4db643669246c6a&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,94 'pro_settings' => 'admin.php?page=contact_form_to_db_pro.php',95 ),96 'custom-admin-page/custom-admin-page.php' => array(97 'category' => array( 'admin-tools' ),98 'name' => 'Custom Admin Page',99 'description' => __( 'Add unlimited custom pages to WordPress admin dashboard.', 'bestwebsoft' ),100 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/custom-admin-page/?k=9ac03f16c25e845e8e055a221c3e1467&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,101 'settings' => 'edit.php?post_type=bws-admin_page&page=custom-admin-page.php',102 'pro_version' => 'custom-admin-page-pro/custom-admin-page-pro.php',103 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/custom-admin-page/buy/?k=b986f456dba092b537f1a7755a363be9&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,104 'pro_settings' => 'edit.php?post_type=bws-admin_page&page=custom-admin-page-pro.php',105 ),106 56 'custom-search-plugin/custom-search-plugin.php' => array( 107 57 'category' => array( 'navigation' ), … … 114 64 'pro_settings' => 'admin.php?page=custom_search_pro.php', 115 65 ), 116 'donate-button/donate.php' => array(117 'category' => array( 'ecommerce' ),118 'name' => 'Donate',119 'description' => __( 'Add PayPal and 2CO donate buttons to receive charity payments.', 'bestwebsoft' ),120 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/donate/?k=a8b2e2a56914fb1765dd20297c26401b&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,121 'settings' => 'admin.php?page=donate.php',122 ),123 66 'error-log-viewer/error-log-viewer.php' => array( 124 67 'category' => array( 'admin-tools' ), … … 127 70 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/error-log-viewer/?k=da0de8bd2c7a0b2fea5df64d55a368b3&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 128 71 'settings' => 'admin.php?page=rrrlgvwr.php&tab=settings', 129 ),130 'facebook-button-plugin/facebook-button-plugin.php' => array(131 'category' => array( 'smm' ),132 'name' => 'Like & Share',133 'description' => __( 'Add Facebook Follow, Like, and Share buttons to WordPress posts, pages, and widgets.', 'bestwebsoft' ),134 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/facebook-like-button/?k=05ec4f12327f55848335802581467d55&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,135 'settings' => 'admin.php?page=facebook-button-plugin.php',136 'pro_version' => 'facebook-button-pro/facebook-button-pro.php',137 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/facebook-like-button/buy/?k=8da168e60a831cfb3525417c333ad275&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,138 'pro_settings' => 'admin.php?page=facebook-button-pro.php',139 72 ), 140 73 'gallery-plugin/gallery-plugin.php' => array( … … 158 91 'pro_settings' => 'admin.php?page=google-2-step-verification-pro.php', 159 92 ), 160 'bws-adsense/bws-adsense.php' => array(161 'category' => array( 'marketing' ),162 'name' => 'AdS',163 'description' => __( 'Add Adsense ads to WordPress website pages, posts, custom posts, search results, categories, tags, and widgets.', 'bestwebsoft' ),164 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/google-adsense/?k=9d719e415eee289845b00843e8847bc9&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,165 'settings' => 'admin.php?page=bws-adsense.php',166 'pro_version' => 'adsense-pro/adsense-pro.php',167 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/google-adsense/buy/?k=60e3979921e354feb0347e88e7d7b73d&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,168 'pro_settings' => 'admin.php?page=adsense-pro.php',169 ),170 'bws-google-analytics/bws-google-analytics.php' => array(171 'category' => array( 'admin-tools' ),172 'name' => 'Analytics',173 'description' => __( 'Add Google Analytics code to WordPress website and track basic stats.', 'bestwebsoft' ),174 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/bws-google-analytics/?k=261c74cad753fb279cdf5a5db63fbd43&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,175 'settings' => 'admin.php?page=bws-google-analytics.php',176 'pro_version' => 'bws-google-analytics-pro/bws-google-analytics-pro.php',177 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/bws-google-analytics/buy/?k=83796e84fec3f70ecfcc8894a73a6c4a&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,178 'pro_settings' => 'admin.php?page=bws-google-analytics-pro.php',179 ),180 93 'google-captcha/google-captcha.php' => array( 181 94 'category' => array( 'security', 'recommended' ), … … 188 101 'pro_settings' => 'admin.php?page=google-captcha-pro.php', 189 102 ), 190 'bws-google-maps/bws-google-maps.php' => array(191 'category' => array( 'content' ),192 'name' => 'Maps',193 'description' => __( 'Add customized Google maps to WordPress posts, pages and widgets.', 'bestwebsoft' ),194 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/bws-google-maps/?k=d8fac412d7359ebaa4ff53b46572f9f7&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,195 'settings' => 'admin.php?page=bws-google-maps.php',196 'pro_version' => 'bws-google-maps-pro/bws-google-maps-pro.php',197 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/bws-google-maps/buy/?k=117c3f9fc17f2c83ef430a8a9dc06f56&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,198 'pro_settings' => 'admin.php?page=bws-google-maps-pro.php',199 ),200 103 'google-sitemap-plugin/google-sitemap-plugin.php' => array( 201 104 'category' => array( 'seo', 'recommended' ), … … 208 111 'pro_settings' => 'admin.php?page=google-sitemap-pro.php', 209 112 ), 210 'google-shortlink/google-shortlink.php' => array( 211 'category' => array( 'seo' ), 212 'name' => 'Shortlink', 213 'description' => __( 'Replace external WordPress website links with Google shortlinks and track click stats.', 'bestwebsoft' ), 214 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/google-shortlink/?k=afcf3eaed021bbbbeea1090e16bc22db&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 215 'settings' => 'admin.php?page=gglshrtlnk_options', 216 ), 217 'gpt-ai-content-creator-by-bestwebsoft/gpt-ai-content-creator-by-bestwebsoft.php' => array( 218 'category' => array( 'content', 'recommended' ), 219 'name' => 'GPT AI Content Creator', 220 'description' => __( 'Create Content with GPT.', 'bestwebsoft' ), 221 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/gpt-ai-content-creator/?k=f1ef1b7d7d05f93c570b940cc9acfe15&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 222 'settings' => 'admin.php?page=gpt-ai-content-creator.php', 223 'icon' => bws_menu_url( 'icons/plugins/' ) . 'gpt-ai-content-creator.png', 224 'pro_version' => 'gpt-ai-content-creator-pro-by-bestwebsoft/gpt-ai-content-creator-pro-by-bestwebsoft.php', 225 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/gpt-ai-content-creator/buy/?k=8b19619d4a36f8b42c5d4fbcbd9775bb&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 226 'pro_settings' => 'admin.php?page=gpt-ai-content-creator-pro.php', 227 ), 228 'htaccess/htaccess.php' => array( 113 'htaccess/htaccess.php' => array( 229 114 'category' => array( 'security' ), 230 115 'name' => 'Htaccess', … … 235 120 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/htaccess/buy/?k=59e9209a32864be534fda77d5e591c15&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 236 121 'pro_settings' => 'admin.php?page=htaccess-pro.php', 237 ),238 'job-board/job-board.php' => array(239 'category' => array( 'ecommerce' ),240 'name' => 'Job Board',241 'description' => __( 'Create your personal job board and listing WordPress website. Search jobs, submit CV/resumes, choose candidates.', 'bestwebsoft' ),242 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/job-board/?k=b0c504c9ce6edd6692e04222af3fed6f&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,243 'settings' => 'admin.php?page=job-board.php',244 122 ), 245 123 'limit-attempts/limit-attempts.php' => array( … … 253 131 'pro_settings' => 'admin.php?page=limit-attempts-pro.php', 254 132 ), 255 'bws-l inkedin/bws-linkedin.php'=> array(256 'category' => array( ' smm' ),257 'name' => 'L inkedIn',133 'bws-login-register/bws-login-register.php' => array( 134 'category' => array( 'admin-tools', 'navigation' ), 135 'name' => 'Login & Register Form', 258 136 'description' => __( 'Add LinkedIn Share and Follow buttons to WordPress posts, pages and widgets. 5 plugins included – profile, insider, etc.', 'bestwebsoft' ), 259 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/l inkedin/?k=d63c7319622ccc5f589dd2d545c1d77c&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,260 'settings' => 'admin.php?page=l inkedin.php',261 'pro_version' => 'bws-l inkedin-pro/bws-linkedin-pro.php',262 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/l inkedin/buy/?k=41dcc36192994408d24b103a02134567&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,263 'pro_settings' => 'admin.php?page= linkedin-pro.php',137 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/login-and-register/?k=7d503ba164eca02ddf5b2c4942cbb953&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 138 'settings' => 'admin.php?page=login-register-form.php', 139 'pro_version' => 'bws-login-register-pro/bws-login-register-pro.php', 140 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/login-and-register/buy/?k=df2a23c0abf357439d325bf3953deaf8&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 141 'pro_settings' => 'admin.php?page=bws-login-register-pro.php', 264 142 ), 265 143 'multilanguage/multilanguage.php' => array( … … 293 171 'pro_settings' => 'admin.php?page=pdf-print-pro.php', 294 172 ), 295 'bws-pinterest/bws-pinterest.php' => array(296 'category' => array( 'smm' ),297 'name' => 'Pinterest',298 'description' => __( 'Add Pinterest Follow, Pin It buttons and profile widgets (Pin, Board, Profile) to WordPress posts, pages and widgets.', 'bestwebsoft' ),299 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/pinterest/?k=504107b6213f247a67fe7ffb94e97c78&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,300 'settings' => 'admin.php?page=pinterest.php',301 'pro_version' => 'bws-pinterest-pro/bws-pinterest-pro.php',302 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/pinterest/buy/?k=ab0069edd1914a3ca8f541bfd88bb0bb&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,303 'pro_settings' => 'admin.php?page=pinterest-pro.php',304 ),305 'portfolio/portfolio.php' => array(306 'category' => array( 'content', 'recommended' ),307 'name' => 'Portfolio',308 'description' => __( 'Create your personal portfolio WordPress website. Manage and showcase past projects to get more clients.', 'bestwebsoft' ),309 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/portfolio/?k=1249a890c5b7bba6bda3f528a94f768b&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,310 'settings' => 'admin.php?page=portfolio.php',311 'pro_version' => 'portfolio-pro/portfolio-pro.php',312 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/portfolio/buy/?k=2cc716026197d36538a414b728e49fdd&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,313 'pro_settings' => 'admin.php?page=portfolio-pro.php',314 ),315 'post-to-csv/post-to-csv.php' => array(316 'category' => array( 'admin-tools' ),317 'name' => 'Post to CSV',318 'description' => __( 'Export WordPress posts to CSV file format easily. Configure data order.', 'bestwebsoft' ),319 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/post-to-csv/?k=653aa55518ae17409293a7a894268b8f&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,320 'settings' => 'admin.php?page=post-to-csv.php',321 'pro_version' => 'post-to-csv-pro/post-to-csv-pro.php',322 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/post-to-csv/buy/?k=b6521601d1579ed9c556ba98234f2d8f&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,323 'pro_settings' => 'admin.php?page=post-to-csv-pro.php',324 ),325 173 'profile-extra-fields/profile-extra-fields.php' => array( 326 174 'category' => array( 'admin-tools' ), … … 333 181 'pro_settings' => 'admin.php?page=profile-extra-fields-pro.php', 334 182 ), 335 'promobar/promobar.php' => array(336 'category' => array( 'marketing' ),337 'name' => 'PromoBar',338 'description' => __( 'Add and display HTML advertisement banner on WordPress website. Customize bar styles and appearance.', 'bestwebsoft' ),339 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/promobar/?k=619eac2232d9cfa382c4e678c3b14766&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,340 'settings' => 'admin.php?page=promobar.php',341 'pro_version' => 'promobar-pro/promobar-pro.php',342 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/promobar/buy/?k=a9b09708502f12a1483532ba12fe2103&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,343 'pro_settings' => 'admin.php?page=promobar-pro.php',344 ),345 183 'quotes-and-tips/quotes-and-tips.php' => array( 346 184 'category' => array( 'content' ), … … 349 187 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/quotes-and-tips/?k=5738a4e85a798c4a5162240c6515098d&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version, 350 188 'settings' => 'admin.php?page=quotes-and-tips.php', 351 ),352 'rating-bws/rating-bws.php' => array(353 'category' => array( 'marketing' ),354 'name' => 'Rating',355 'description' => __( 'Add rating plugin to your WordPress website to receive feedback from your customers.', 'bestwebsoft' ),356 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/rating/?k=c00e0824bb999735a3224616ef51f4c5&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,357 'settings' => 'admin.php?page=rating.php',358 'pro_version' => 'rating-bws-pro/rating-bws-pro.php',359 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/rating/buy/?k=ba459f3115edb7be610e8d6f8e05df6c&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,360 'pro_settings' => 'admin.php?page=rating-bws-pro.php',361 ),362 'realty/realty.php' => array(363 'category' => array( 'ecommerce' ),364 'name' => 'Realty',365 'description' => __( 'Create your personal real estate WordPress website. Sell, rent and buy properties. Add, search and browse listings easily.', 'bestwebsoft' ),366 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/realty/?k=d55de979dbbbb7af0b2ff1d7f43884fa&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,367 'settings' => 'admin.php?page=realty_settings',368 'pro_version' => 'realty-pro/realty-pro.php',369 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/realty/buy/?k=c7791f0a72acfb36f564a614dbccb474&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,370 'pro_settings' => 'admin.php?page=realty_pro_settings',371 ),372 'relevant/related-posts-plugin.php' => array(373 'category' => array( 'marketing', 'recommended' ),374 'name' => 'Relevant - Related, Featured, Latest, and Popular Posts',375 'description' => __( 'Add related, featured, latest, and popular posts to your WordPress website. Connect your blog readers with a relevant content.', 'bestwebsoft' ),376 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/related-posts/?k=73fb737037f7141e66415ec259f7e426&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,377 'settings' => 'admin.php?page=related-posts-plugin.php',378 ),379 'sender/sender.php' => array(380 'category' => array( 'marketing', 'recommended' ),381 'name' => 'Sender',382 'description' => __( 'Send bulk email messages to WordPress users. Custom templates, advanced settings and detailed reports.', 'bestwebsoft' ),383 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/sender/?k=89c297d14ba85a8417a0f2fc05e089c7&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,384 'settings' => 'admin.php?page=sndr_settings',385 'pro_version' => 'sender-pro/sender-pro.php',386 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/sender/buy/?k=dc5d1a87bdc8aeab2de40ffb99b38054&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,387 'pro_settings' => 'admin.php?page=sndrpr_settings',388 ),389 'slider-bws/slider-bws.php' => array(390 'category' => array( 'content' ),391 'name' => 'Slider',392 'description' => __( 'The best responsive slider plugin for your WordPress website. Create beautifully animated slides just in a few clicks.', 'bestwebsoft' ),393 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/slider/?k=02acebf8531b2995e7de8474ae28e290&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,394 'settings' => 'admin.php?page=slider-settings.php',395 ),396 'bws-smtp/bws-smtp.php' => array(397 'category' => array( 'admin-tools' ),398 'name' => 'SMTP',399 'description' => __( 'Configure SMTP server to receive email messages from WordPress to Gmail, Yahoo, Hotmail and other services.', 'bestwebsoft' ),400 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/smtp/?k=0546419f962704429ad2d9b88567752f&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,401 'settings' => 'admin.php?page=bwssmtp_settings',402 ),403 'social-buttons-pack/social-buttons-pack.php' => array(404 'category' => array( 'smm', 'recommended' ),405 'name' => 'Social Buttons Pack',406 'description' => __( 'Add social media buttons and widgets to WordPress posts, pages and widgets. FB, Twitter, Pinterest, LinkedIn.', 'bestwebsoft' ),407 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/social-buttons-pack/?k=b6440fad9f54274429e536b0c61b42da&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,408 'settings' => 'admin.php?page=social-buttons.php',409 'pro_version' => 'social-buttons-pack-pro/social-buttons-pack-pro.php',410 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/social-buttons-pack/buy/?k=e7059cacde0d275b224a5d995c9160fd&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,411 'pro_settings' => 'admin.php?page=social-buttons-pro.php',412 ),413 'social-login-bws/social-login-bws.php' => array(414 'category' => array( 'smm' ),415 'name' => 'Social Login',416 'description' => __( 'Add social media login, registration, and commenting to your WordPress website.', 'bestwebsoft' ),417 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/social-login/?k=62817c9c94f24129e40894e1d9c3f49d&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,418 'settings' => 'admin.php?page=social-login.php',419 ),420 'subscriber/subscriber.php' => array(421 'category' => array( 'marketing', 'recommended' ),422 'name' => 'Subscriber',423 'description' => __( 'Add email newsletter sign up form to WordPress posts, pages and widgets. Collect data and subscribe your users.', 'bestwebsoft' ),424 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/subscriber/?k=a4ecc1b7800bae7329fbe8b4b04e9c88&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,425 'settings' => 'admin.php?page=subscriber.php',426 'pro_version' => 'subscriber-pro/subscriber-pro.php',427 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/subscriber/buy/?k=02dbb8b549925d9b74e70adc2a7282e4&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,428 'pro_settings' => 'admin.php?page=subscriber-pro.php',429 ),430 'bws-testimonials/bws-testimonials.php' => array(431 'category' => array( 'marketing', 'recommended' ),432 'name' => 'Testimonials',433 'description' => __( 'Add testimonials and feedbacks from your customers to WordPress website posts, pages, and widgets.', 'bestwebsoft' ),434 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/testimonials/?k=3fe4bb89dc901c98e43a113e08f8db73&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,435 'settings' => 'admin.php?page=testimonials.php',436 'pro_version' => 'bws-testimonials-pro/bws-testimonials-pro.php',437 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/testimonials/buy/?k=3fe4bb89dc901c98e43a113e08f8db73&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,438 'pro_settings' => 'edit.php?post_type=bws-testimonial&page=testimonials-ro.php',439 ),440 'timesheet/timesheet.php' => array(441 'category' => array( 'admin-tools' ),442 'name' => 'Timesheet',443 'description' => __( 'Best timesheet plugin for WordPress. Track employee time, streamline attendance and generate reports.', 'bestwebsoft' ),444 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/timesheet/?k=06a58bb78c17a43df01825925f05a5c1&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,445 'settings' => 'admin.php?page=timesheet_settings',446 'pro_version' => 'timesheet-pro/timesheet-pro.php',447 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/timesheet/buy/?k=a448ce4cab0d365b7774c9bc3903b851&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,448 'pro_settings' => 'admin.php?page=timesheet_pro_settings',449 ),450 'twitter-plugin/twitter.php' => array(451 'category' => array( 'smm' ),452 'name' => 'Twitter',453 'description' => __( 'Add Twitter Follow, Tweet, Hashtag, and Mention buttons to WordPress posts and pages.', 'bestwebsoft' ),454 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/twitter/?k=f8cb514e25bd7ec4974d64435c5eb333&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,455 'settings' => 'admin.php?page=twitter.php',456 'pro_version' => 'twitter-pro/twitter-pro.php',457 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/twitter/buy/?k=63ecbf0cc9cebf060b5a3c9362299700&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,458 'pro_settings' => 'admin.php?page=twitter-pro.php',459 189 ), 460 190 'updater/updater.php' => array( … … 478 208 'pro_settings' => 'admin.php?page=user-role-pro.php', 479 209 ), 480 'visitors-online/visitors-online.php' => array(481 'category' => array( 'admin-tools' ),482 'name' => 'Visitors Online',483 'description' => __( 'Display live count of online visitors who are currently browsing your WordPress website.', 'bestwebsoft' ),484 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/visitors-online/?k=93c28013a4f830671b3bba9502ed5177&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,485 'settings' => 'admin.php?page=visitors-online.php',486 'pro_version' => 'visitors-online-pro/visitors-online-pro.php',487 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/visitors-online/buy/?k=f9a746075ff8a0a6cb192cb46526afd2&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,488 'pro_settings' => 'admin.php?page=visitors-online-pro.php',489 ),490 'zendesk-help-center/zendesk-help-center.php' => array(491 'category' => array( 'admin-tools' ),492 'name' => 'Help Center',493 'description' => __( 'Backup and export Zendesk Help Center content automatically to your WordPress website database.', 'bestwebsoft' ),494 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/zendesk-help-center/?k=2a5fd2f4b2f4bde46f2ca44b8d15846d&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,495 'settings' => 'admin.php?page=zendesk_hc.php',496 'pro_version' => 'zendesk-help-center-pro/zendesk-help-center-pro.php',497 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/zendesk-help-center/buy/?k=45199e4538b5befe4d9566868a61a3aa&pn=' . $bws_plugin_info['id'] . '&v=' . $bws_plugin_info['version'] . '&wp_v=' . $wp_version,498 'pro_settings' => 'admin.php?page=zendesk_hc_pro.php',499 ),500 210 ); 501 211 -
google-sitemap-plugin/trunk/google-sitemap-plugin.php
r3290352 r3366420 7 7 Text Domain: google-sitemap-plugin 8 8 Domain Path: /languages 9 Version: 3.3. 39 Version: 3.3.5 10 10 Author URI: https://bestwebsoft.com/ 11 11 License: GPLv2 or later … … 185 185 add_action( 'embed_head', 'gglstmp_canonical_tag' ); 186 186 } 187 188 if ( ! empty( $gglstmp_options['google_news_sitemap'] ) && 1 === $gglstmp_options['google_news_sitemap'] && ! wp_next_scheduled ( 'gglstmp_schedule_news_sitemap' ) ) { 189 wp_schedule_event( time(), 'daily', 'gglstmp_schedule_news_sitemap' ); 190 } 187 191 } 188 192 } … … 311 315 'split_sitemap' => 0, 312 316 'split_sitemap_items' => array(), 317 'google_news_sitemap' => 0, 318 'google_news_post_type' => 'post' 313 319 ); 314 320 … … 380 386 } 381 387 } 388 389 if ( ! function_exists( 'gglstmp_prepare_news_sitemap' ) ) { 390 /** 391 * Function prepares all the items that should be included into news sitemap. 392 * After array of items is prepared, it is divided into multiple parts according to the limit value. 393 * A single sitemap file will be created if the limit isn't reached, 394 * otherwise sitemap file for each part of array of items will be created. Blog index file would be created also. 395 * If multisite network is used, network index file will be created also. 396 * 397 * @since 3.1.0 398 * 399 * @param mixed $blog_id (int)The blog id the sitemap is created for. Default is false - for current blog. 400 */ 401 function gglstmp_prepare_news_sitemap( $blog_id = false ) { 402 global $wpdb, $gglstmp_options; 403 if ( ! empty( $gglstmp_options['google_news_sitemap'] ) && 1 === $gglstmp_options['google_news_sitemap'] ) { 404 $default_name = 'news_sitemap'; 405 $existing_files = glob( ABSPATH . $default_name . '*.xml' ); 406 array_map( 'unlink', $existing_files ); 407 $posts = new WP_Query( 408 array( 409 'post_type' => $gglstmp_options['google_news_post_type'], 410 'post_status' => 'publish', 411 'order' => 'DESC', 412 'orderby' => 'post_date', 413 'posts_per_page' => -1, 414 'ignore_sticky_posts' => true, 415 'date_query' => array( 416 array( 417 'after' => '2 days ago', 418 'inclusive' => true, 419 ), 420 ) 421 ) 422 ); 423 if( $posts->have_posts() ) { 424 if ( $posts->found_posts <= $gglstmp_options['limit'] ) { 425 $part_num = 0; 426 gglstmp_create_news_sitemap( $posts->posts, $part_num ); 427 } else if ( 0 < $gglstmp_options['limit'] ) { 428 $parts = array_chunk( $posts->posts, $gglstmp_options['limit'] ); 429 foreach ( $parts as $part_num => $parts_elements ) { 430 gglstmp_create_news_sitemap( $parts_elements, $part_num + 1 ); 431 } 432 } else { 433 $part_num = 0; 434 gglstmp_create_news_sitemap( $posts->posts, $part_num ); 435 } 436 } else { 437 gglstmp_create_news_sitemap( array(), 0 ); 438 } 439 } 440 } 441 } 442 382 443 383 444 if ( ! function_exists( 'gglstmp_prepare_sitemap' ) ) { … … 764 825 } 765 826 } 827 828 gglstmp_prepare_news_sitemap( $blog_id ); 829 766 830 if ( $is_multisite ) { 767 831 /* Removing main index file */ … … 909 973 gglstmp_save_sitemap_info( $filename ); 910 974 975 } 976 } 977 978 if ( ! function_exists( 'gglstmp_create_news_sitemap' ) ) { 979 /** 980 * Function creates xml sitemap file with the provided list of elements. 981 * Global variables are used and function mltlngg_get_lang_link() is called from the plugin Multilanguage. 982 * Filename is generated in the following way: 983 * On a single site: 984 * a) $part_num isn't set: "sitemap.xml" 985 * b) $part_num is set and equals 2: "sitemap_2.xml". 986 * On single subsite of multisite network, $blog_id == 1: 987 * a) $part_num isn't set: "sitemap_1.xml" 988 * b) $part_num is set and equals 2: "sitemap_1_2.xml". 989 * 990 * @since 3.1.0 991 * 992 * @param array $elements An array of elements to include to the sitemap. 993 * @param int $part_num (optional) Indicates the number of the part of elements. It is included to the sitemap filename. 994 */ 995 function gglstmp_create_news_sitemap( $elements, $part_num = 0 ) { 996 global $blog_id, $mltlngg_languages, $mltlngg_enabled_languages, $gglstmp_options; 997 998 $languages = array( 999 'af' => 'afg', 1000 'ax' => 'ala', 1001 'al' => 'alb', 1002 'dz' => 'dza', 1003 'as' => 'asm', 1004 'ad' => 'and', 1005 'ao' => 'ago', 1006 'ai' => 'aia', 1007 'aq' => 'ata', 1008 'ag' => 'atg', 1009 'ar' => 'arg', 1010 'am' => 'arm', 1011 'aw' => 'abw', 1012 'au' => 'aus', 1013 'at' => 'aut', 1014 'az' => 'aze', 1015 'bs' => 'bhs', 1016 'bh' => 'bhr', 1017 'bd' => 'bgd', 1018 'bb' => 'brb', 1019 'by' => 'blr', 1020 'be' => 'bel', 1021 'bz' => 'blz', 1022 'bj' => 'ben', 1023 'bm' => 'bmu', 1024 'bt' => 'btn', 1025 'bo' => 'bol', 1026 'bq' => 'bes', 1027 'ba' => 'bih', 1028 'bw' => 'bwa', 1029 'bv' => 'bvt', 1030 'br' => 'bra', 1031 'io' => 'iot', 1032 'bn' => 'brn', 1033 'bg' => 'bgr', 1034 'bf' => 'bfa', 1035 'bi' => 'bdi', 1036 'cv' => 'cpv', 1037 'kh' => 'khm', 1038 'cm' => 'cmr', 1039 'ca' => 'can', 1040 'ky' => 'cym', 1041 'cf' => 'caf', 1042 'td' => 'tcd', 1043 'cl' => 'chl', 1044 'cn' => 'chn', 1045 'cx' => 'cxr', 1046 'cc' => 'cck', 1047 'co' => 'col', 1048 'km' => 'com', 1049 'cg' => 'cog', 1050 'cd' => 'cod', 1051 'ck' => 'cok', 1052 'cr' => 'cri', 1053 'ci' => 'civ', 1054 'hr' => 'hrv', 1055 'cu' => 'cub', 1056 'cw' => 'cuw', 1057 'cy' => 'cyp', 1058 'cz' => 'cze', 1059 'dk' => 'dnk', 1060 'dj' => 'dji', 1061 'dm' => 'dma', 1062 'do' => 'dom', 1063 'ec' => 'ecu', 1064 'eg' => 'egy', 1065 'sv' => 'slv', 1066 'gq' => 'gnq', 1067 'er' => 'eri', 1068 'ee' => 'est', 1069 'sz' => 'swz', 1070 'et' => 'eth', 1071 'fk' => 'flk', 1072 'fo' => 'fro', 1073 'fj' => 'fji', 1074 'fi' => 'fin', 1075 'fr' => 'fra', 1076 'gf' => 'guf', 1077 'pf' => 'pyf', 1078 'tf' => 'atf', 1079 'ga' => 'gab', 1080 'gm' => 'gmb', 1081 'ge' => 'geo', 1082 'de' => 'deu', 1083 'gh' => 'gha', 1084 'gi' => 'gib', 1085 'gr' => 'grc', 1086 'gl' => 'grl', 1087 'gd' => 'grd', 1088 'gp' => 'glp', 1089 'gu' => 'gum', 1090 'gt' => 'gtm', 1091 'gg' => 'ggy', 1092 'gn' => 'gin', 1093 'gw' => 'gnb', 1094 'gy' => 'guy', 1095 'ht' => 'hti', 1096 'hm' => 'hmd', 1097 'va' => 'vat', 1098 'hn' => 'hnd', 1099 'hk' => 'hkg', 1100 'hu' => 'hun', 1101 'is' => 'isl', 1102 'in' => 'ind', 1103 'id' => 'idn', 1104 'ir' => 'irn', 1105 'iq' => 'irq', 1106 'ie' => 'irl', 1107 'im' => 'imn', 1108 'il' => 'isr', 1109 'it' => 'ita', 1110 'jm' => 'jam', 1111 'jp' => 'jpn', 1112 'je' => 'jey', 1113 'jo' => 'jor', 1114 'kz' => 'kaz', 1115 'ke' => 'ken', 1116 'ki' => 'kir', 1117 'kp' => 'prk', 1118 'kr' => 'kor', 1119 'kw' => 'kwt', 1120 'kg' => 'kgz', 1121 'la' => 'lao', 1122 'lv' => 'lva', 1123 'lb' => 'lbn', 1124 'ls' => 'lso', 1125 'lr' => 'lbr', 1126 'ly' => 'lby', 1127 'li' => 'lie', 1128 'lt' => 'ltu', 1129 'lu' => 'lux', 1130 'mo' => 'mac', 1131 'mk' => 'mkd', 1132 'mg' => 'mdg', 1133 'mw' => 'mwi', 1134 'my' => 'mys', 1135 'mv' => 'mdv', 1136 'ml' => 'mli', 1137 'mt' => 'mlt', 1138 'mh' => 'mhl', 1139 'mq' => 'mtq', 1140 'mr' => 'mrt', 1141 'mu' => 'mus', 1142 'yt' => 'myt', 1143 'mx' => 'mex', 1144 'fm' => 'fsm', 1145 'md' => 'mda', 1146 'mc' => 'mco', 1147 'mn' => 'mng', 1148 'me' => 'mne', 1149 'ms' => 'msr', 1150 'ma' => 'mar', 1151 'mz' => 'moz', 1152 'mm' => 'mmr', 1153 'na' => 'nam', 1154 'nr' => 'nru', 1155 'np' => 'npl', 1156 'nl' => 'nld', 1157 'nc' => 'ncl', 1158 'nz' => 'nzl', 1159 'ni' => 'nic', 1160 'ne' => 'ner', 1161 'ng' => 'nga', 1162 'nu' => 'niu', 1163 'nf' => 'nfk', 1164 'mp' => 'mnp', 1165 'no' => 'nor', 1166 'om' => 'omn', 1167 'pk' => 'pak', 1168 'pw' => 'plw', 1169 'ps' => 'pse', 1170 'pa' => 'pan', 1171 'pg' => 'png', 1172 'py' => 'pry', 1173 'pe' => 'per', 1174 'ph' => 'phl', 1175 'pn' => 'pcn', 1176 'pl' => 'pol', 1177 'pt' => 'prt', 1178 'pr' => 'pri', 1179 'qa' => 'qat', 1180 're' => 'reu', 1181 'ro' => 'rou', 1182 'ru' => 'rus', 1183 'rw' => 'rwa', 1184 'bl' => 'blm', 1185 'sh' => 'shn', 1186 'kn' => 'kna', 1187 'lc' => 'lca', 1188 'mf' => 'maf', 1189 'pm' => 'spm', 1190 'vc' => 'vct', 1191 'ws' => 'wsm', 1192 'sm' => 'smr', 1193 'st' => 'stp', 1194 'sa' => 'sau', 1195 'sn' => 'sen', 1196 'rs' => 'srb', 1197 'sc' => 'syc', 1198 'sl' => 'sle', 1199 'sg' => 'sgp', 1200 'sx' => 'sxm', 1201 'sk' => 'svk', 1202 'si' => 'svn', 1203 'sb' => 'slb', 1204 'so' => 'som', 1205 'za' => 'zaf', 1206 'gs' => 'sgs', 1207 'ss' => 'ssd', 1208 'es' => 'esp', 1209 'lk' => 'lka', 1210 'sd' => 'sdn', 1211 'sr' => 'sur', 1212 'sj' => 'sjm', 1213 'se' => 'swe', 1214 'ch' => 'che', 1215 'sy' => 'syr', 1216 'tw' => 'twn', 1217 'tj' => 'tjk', 1218 'tz' => 'tza', 1219 'th' => 'tha', 1220 'tl' => 'tls', 1221 'tg' => 'tgo', 1222 'tk' => 'tkl', 1223 'to' => 'ton', 1224 'tt' => 'tto', 1225 'tn' => 'tun', 1226 'tr' => 'tur', 1227 'tm' => 'tkm', 1228 'tc' => 'tca', 1229 'tv' => 'tuv', 1230 'ug' => 'uga', 1231 'ua' => 'ukr', 1232 'ae' => 'are', 1233 'gb' => 'gbr', 1234 'us' => 'usa', 1235 'um' => 'umi', 1236 'uy' => 'ury', 1237 'uz' => 'uzb', 1238 'vu' => 'vut', 1239 've' => 'ven', 1240 'vn' => 'vnm', 1241 'vg' => 'vgb', 1242 'vi' => 'vir', 1243 'wf' => 'wlf', 1244 'eh' => 'esh', 1245 'ye' => 'yem', 1246 'zm' => 'zmb', 1247 'zw' => 'zwe' 1248 ); 1249 1250 $xml = new DomDocument( '1.0', 'utf-8' ); 1251 $home_url = site_url( '/' ); 1252 $xml_stylesheet_path = ( defined( 'WP_CONTENT_DIR' ) ) ? $home_url . basename( WP_CONTENT_DIR ) : $home_url . 'wp-content'; 1253 $xml_stylesheet_path .= ( defined( 'WP_PLUGIN_DIR' ) ) ? '/' . basename( WP_PLUGIN_DIR ) . '/google-sitemap-plugin/sitemap.xsl' : '/plugins/google-sitemap-plugin/sitemap.xsl'; 1254 $xslt = $xml->createProcessingInstruction( 'xml-stylesheet', "type=\"text/xsl\" href=\"$xml_stylesheet_path\"" ); 1255 $xml->appendChild( $xslt ); 1256 $urlset = $xml->appendChild( $xml->createElementNS( 'http://www.sitemaps.org/schemas/sitemap/0.9', 'urlset' ) ); 1257 1258 /* Used to check compatibility and work with the plugin Multilanguage*/ 1259 $count_lang = empty( $mltlngg_enabled_languages ) ? '' : count( $mltlngg_enabled_languages ); 1260 $compatibility = false; 1261 if ( ! empty( $gglstmp_options['alternate_language'] ) && ( '' !== $count_lang ) ) { 1262 $compatibility = true; 1263 } 1264 1265 /* Create an array with active languages and add a value for hreflang */ 1266 $enabled_languages = array(); 1267 if ( $compatibility ) { 1268 $urlset->setAttributeNS( 'http://www.w3.org/2000/xmlns/', 'xmlns:xhtml', 'http://www.w3.org/1999/xhtml' ); 1269 1270 foreach ( $mltlngg_enabled_languages as $language ) { 1271 foreach ( $mltlngg_languages as $item ) { 1272 if ( $language['name'] === $item[2] ) { 1273 $language['lang'] = $item[0]; 1274 $enabled_languages[ $item[2] ] = $language; 1275 } 1276 } 1277 } 1278 1279 if ( function_exists( 'mltlngg_get_lang_link' ) ) { 1280 $lang_link = 'mltlngg_get_lang_link'; 1281 } 1282 $args_links = array(); 1283 } 1284 1285 $site_name = get_bloginfo( 'name' ); 1286 $site_lang = get_bloginfo( 'language' ); 1287 1288 foreach ( $elements as $element ) { 1289 if ( $compatibility ) { 1290 foreach ( $enabled_languages as $language ) { 1291 $args_links['lang'] = $language['locale']; 1292 $args_links['url'] = $element['url']; 1293 1294 $lang = explode( '_', $language['locale'] ); 1295 1296 $url = $urlset->appendChild( $xml->createElement( 'url' ) ); 1297 $loc = $url->appendChild( $xml->createElement( 'loc' ) ); 1298 $loc->appendChild( $xml->createTextNode( $lang_link( $args_links ) ) ); 1299 1300 $news = $url->appendChild( $xml->createElement( 'news:news' ) ); 1301 $publication = $news->appendChild( $xml->createElement( 'news:publication' ) ); 1302 $name = $publication->appendChild( $xml->createElement( 'news:name' ) ); 1303 $name->appendChild( $xml->createTextNode( $site_name ) ); 1304 $language = $publication->appendChild( $xml->createElement( 'news:language' ) ); 1305 $language->appendChild( $xml->createTextNode( isset( $languages[ $lang[0] ] ) ? $languages[ $lang[0] ] : $language['locale'] ) ); 1306 $publication_date = $news->appendChild( $xml->createElement( 'news:publication_date' ) ); 1307 $publication_date->appendChild( $xml->createTextNode( $element->post_date ) ); 1308 $title = $news->appendChild( $xml->createElement( 'news:title' ) ); 1309 $title->appendChild( $xml->createTextNode( $element->post_title ) ); 1310 } 1311 } else { 1312 $lang = explode( '_', $site_lang ); 1313 1314 $url = $urlset->appendChild( $xml->createElement( 'url' ) ); 1315 $loc = $url->appendChild( $xml->createElement( 'loc' ) ); 1316 $loc->appendChild( $xml->createTextNode( get_permalink( $element->ID ) ) ); 1317 1318 $news = $url->appendChild( $xml->createElement( 'news:news' ) ); 1319 $publication = $news->appendChild( $xml->createElement( 'news:publication' ) ); 1320 $name = $publication->appendChild( $xml->createElement( 'news:name' ) ); 1321 $name->appendChild( $xml->createTextNode( $site_name ) ); 1322 $language = $publication->appendChild( $xml->createElement( 'news:language' ) ); 1323 $language_text_node = apply_filters( 'gglstmp_news_language', isset( $languages[ $lang[0] ] ) ? $languages[ $lang[0] ] : 'en', $element ); 1324 $language->appendChild( $xml->createTextNode( $language_text_node ) ); 1325 $publication_date = $news->appendChild( $xml->createElement( 'news:publication_date' ) ); 1326 $publication_date->appendChild( $xml->createTextNode( $element->post_date ) ); 1327 $title = $news->appendChild( $xml->createElement( 'news:title' ) ); 1328 $title->appendChild( $xml->createTextNode( $element->post_title ) ); 1329 } 1330 } 1331 1332 $xml->formatOutput = true; 1333 1334 if ( ! is_writable( ABSPATH ) ) { 1335 @chmod( ABSPATH, 0755 ); 1336 } 1337 1338 $part_num = ( absint( $part_num ) > 0 ) ? '_' . absint( $part_num ) : ''; 1339 1340 $default_name = 'news_sitemap'; 1341 1342 if ( is_multisite() ) { 1343 $filename = $default_name . '_' . absint( $blog_id ) . $part_num . '.xml'; 1344 } else { 1345 $filename = $default_name . $part_num . '.xml'; 1346 } 1347 1348 $result = $xml->save( ABSPATH . $filename ); 1349 1350 gglstmp_save_sitemap_info( $filename ); 911 1351 } 912 1352 } … … 2350 2790 2351 2791 add_action( 'gglstmp_sitemap_cron', 'gglstmp_prepare_sitemap' ); 2792 add_action( 'gglstmp_schedule_news_sitemap', 'gglstmp_prepare_news_sitemap' ); 2352 2793 2353 2794 /* Rebuild sitemap on permalink structure change, on taxonomy term add/edit/delete */ -
google-sitemap-plugin/trunk/includes/class-gglstmp-settings.php
r3184465 r3366420 267 267 } 268 268 269 $google_news_sitemap = isset( $_POST['gglstmp_google_news_sitemap'] ) ? 1 : 0; 270 269 271 $split_sitemap = isset( $_POST['gglstmp_split_sitemap'] ) ? 1 : 0; 270 272 271 if ( $this->options['split_sitemap'] != $split_sitemap ) {273 if ( $this->options['split_sitemap'] != $split_sitemap || $google_news_sitemap != $this->options['google_news_sitemap'] ) { 272 274 $sitemapcreate = true; 273 275 $reschedule = true; 274 276 } 275 277 276 $this->options['split_sitemap'] = $split_sitemap; 278 $this->options['split_sitemap'] = $split_sitemap; 279 $this->options['google_news_sitemap'] = $google_news_sitemap; 277 280 278 281 $split_items = array(); … … 285 288 } 286 289 } 287 if ( $this->options['split_sitemap_items'] !== $split_items ) { 290 291 $google_news_post_type = isset( $_POST['gglstmp_google_news_post_type'] ) ? sanitize_text_field( wp_unslash( $_POST['gglstmp_google_news_post_type'] ) ) : 'post'; 292 293 if ( $this->options['split_sitemap_items'] !== $split_items || $this->options['google_news_post_type'] !== $google_news_post_type ) { 288 294 $sitemapcreate = true; 289 295 $reschedule = true; 290 296 } 291 $this->options['split_sitemap_items'] = $split_items; 297 298 $this->options['split_sitemap_items'] = $split_items; 299 $this->options['google_news_post_type'] = $google_news_post_type; 292 300 293 301 $this->options['remove_automatic_canonical'] = isset( $_POST['gglstmp_automatic_canonical'] ) ? 1 : 0; … … 476 484 <?php } ?> 477 485 <table class="form-table gglstmp_settings_form"> 486 <tr> 487 <th><?php esc_html_e( 'Google News Sitemap', 'google-sitemap-plugin' ); ?></th> 488 <td> 489 <input type='checkbox' id="gglstmp_google_news_sitemap" name="gglstmp_google_news_sitemap" value="1" <?php checked( $this->options['google_news_sitemap'], 1 ); ?> /> 490 <span class="bws_info"><?php esc_html_e( 'Create a separate sitemap for news. Only include recent URLs for articles that were created in the last two days', 'google-sitemap-plugin' ); ?></span> 491 <a 492 href="https://developers.google.com/search/docs/crawling-indexing/sitemaps/news-sitemap" 493 target="_blank"><?php esc_html_e( 'Learn More', 'google-sitemap-plugin' ); ?></a> 494 </td> 495 </tr> 496 <tr class="gglstmp_google_news_post_type <?php echo 1 !== $this->options['google_news_sitemap'] ? 'hidden' : ''; ?>"> 497 <th><?php esc_html_e( 'Google News Sitemap Post Type', 'google-sitemap-plugin' ); ?></th> 498 <td> 499 <?php 500 foreach ( $this->all_post_types as $post_type ) { 501 ?> 502 <label><input type='radio' name="gglstmp_google_news_post_type" value="<?php echo esc_attr( $post_type->name ); ?>" <?php checked( $this->options['google_news_post_type'] == $post_type->name ); ?> /><?php echo esc_html( $post_type->label ); ?></label><br /> 503 <?php 504 } 505 ?> 506 </td> 507 </tr> 478 508 <tr> 479 509 <th><?php esc_html_e( 'Split Sitemap', 'google-sitemap-plugin' ); ?></th> … … 737 767 */ 738 768 public function information_postbox_top() { 769 global $gglstmp_options; 739 770 $default_name = 'sitemap'; 740 771 … … 748 779 } 749 780 781 if ( ! empty( $gglstmp_options['google_news_sitemap'] ) && 1 === $gglstmp_options['google_news_sitemap'] ) { 782 $default_news_name = 'news_sitemap'; 783 $existing_files = glob( ABSPATH . $default_news_name . '*.xml' ); 784 } 785 750 786 if ( isset( $xml_file ) && file_exists( ABSPATH . $xml_file ) ) { 751 787 … … 757 793 ) 758 794 ); 795 if ( ! empty( $existing_files ) ) { 796 $xml_news_url = str_replace( ABSPATH, home_url( '/' ), $existing_files[0] ); 797 printf( 798 '<div class="misc-pub-section"><strong>%s</strong></div>', 799 sprintf( 800 esc_html__( "News Sitemap File: %s", 'google-sitemap-plugin' ), 801 '<a href="' . esc_url( $xml_news_url ) . '" target="_blank">' . str_replace( ABSPATH, '', $existing_files[0] ) . '</a>' 802 ) 803 ); 804 } 759 805 760 806 if ( ! $this->is_multisite ) { -
google-sitemap-plugin/trunk/js/admin_script.js
r2841034 r3366420 9 9 } 10 10 }); 11 $( '#gglstmp_google_news_sitemap' ).on ( 'change', function(){ 12 if ( $( this ).is( ':checked' ) ) { 13 $( '.gglstmp_google_news_post_type' ).removeClass( 'hidden' ); 14 } else { 15 $( '.gglstmp_google_news_post_type' ).addClass( 'hidden' ); 16 } 17 }); 11 18 }); 12 19 } )( jQuery ); -
google-sitemap-plugin/trunk/readme.txt
r3290352 r3366420 3 3 Donate link: https://bestwebsoft.com/donate/ 4 4 Tags: add pages to sitemap, add posts to sitemap, add sitemap, google, google sitemap, google sitemap plugin, sitemap file path, update sitemap, google webmaster tools, site map, sitemaps, webmaster tools 5 Requires at least: 5.66 Tested up to: 6.8 7 Stable tag: 3.3. 35 Requires at least: 6.2 6 Tested up to: 6.8.2 7 Stable tag: 3.3.5 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 41 41 * Delete website 42 42 * Get website info 43 * Add Sitemap to Google News Sitemap 43 44 * Split Sitemap Items 44 45 * Disable automatic canonical tag … … 174 175 == Changelog == 175 176 177 = V3.3.5 - 27.05.2025 178 * NEW : Added compatibility with Google News Sitemap. 179 * Update : We updated all functionality for wordpress 6.8.2. 180 * Update : BWS Panel section was updated. 181 176 182 = V3.3.3 - 09.05.2025 177 183 * Update : We updated all functionality for wordpress 6.8. … … 463 469 == Upgrade Notice == 464 470 471 = V3.3.5 = 472 * The compatibility with new WordPress version updated. 473 * New feature added 474 465 475 = V3.3.3 = 466 476 * The compatibility with new WordPress version updated.
Note: See TracChangeset
for help on using the changeset viewer.