Changeset 1725416
- Timestamp:
- 09/06/2017 09:17:14 AM (9 years ago)
- Location:
- wp-ssl-redirect
- Files:
-
- 3 edited
- 2 copied
-
tags/1.1 (copied) (copied from wp-ssl-redirect/trunk)
-
tags/1.1/trunk (copied) (copied from wp-ssl-redirect/trunk)
-
tags/1.1/trunk/readme.txt (modified) (2 diffs)
-
tags/1.1/trunk/wp-ssl-redirect.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wp-ssl-redirect/tags/1.1/trunk/readme.txt
r1662712 r1725416 4 4 Requires at least: 3.95 5 5 Tested up to: 4.7.5 6 Stable tag: 1. 06 Stable tag: 1.1 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 31 31 32 32 == Changelog == 33 none 33 1.1 Added options to force www or non-www -
wp-ssl-redirect/tags/1.1/trunk/wp-ssl-redirect.php
r1662709 r1725416 4 4 * Plugin Name: WP SSL Redirect 5 5 * Description: A very tiny plugin to force SSL on WordPress websites (via 301 redirects for SEO purpose). 6 * Version: 1. 06 * Version: 1.1 7 7 * Author: Rehmat Alam 8 8 * Author URI: https://supportivehands.net/ … … 12 12 defined( 'ABSPATH' ) or die(); // Prevents direct access to pluin dir 13 13 14 add_action('admin_menu', function() { 15 add_options_page( 'WP SSL Redirect Settings', 'WP SSL Redirect', 'manage_options', 'wp-ssl-redirect', 'wp_ssl_redirect' ); 16 }); 17 18 add_action( 'admin_init', function() { 19 register_setting( 'wp-ssl-redirect-settings', 'wp_ssl_redirect_protocol' ); 20 }); 21 22 23 function wp_ssl_redirect() { 24 ?> 25 <div class="wrap"> 26 <h3>WP SSL Redirect Options</h3> 27 <hr> 28 <form action="options.php" method="post"> 29 30 <?php 31 settings_fields( 'wp-ssl-redirect-settings' ); 32 do_settings_sections( 'wp-ssl-redirect-settings' ); 33 ?> 34 <table> 35 36 <tr> 37 <th>Preferred Domain</th> 38 <td> 39 40 <select name="wp_ssl_redirect_protocol"> 41 <option value="auto-detect" <?php echo esc_attr( get_option('wp_ssl_redirect_protocol') ) == 'auto-detect' ? 'selected="selected"' : ''; ?>>Auto-detect</option> 42 <option value="www" <?php echo esc_attr( get_option('wp_ssl_redirect_protocol') ) == 'www' ? 'selected="selected"' : ''; ?>>Force www version</option> 43 <option value="non-www" <?php echo esc_attr( get_option('wp_ssl_redirect_protocol') ) == 'non-www' ? 'selected="selected"' : ''; ?>>Force non-www version</option> 44 </select> 45 46 </td> 47 </tr> 48 49 <tr> 50 <td><?php submit_button(); ?></td> 51 </tr> 52 53 </table> 54 55 </form> 56 </div> 57 <?php 58 } 59 14 60 function do_the_ssl_redirect() { 15 if($_SERVER["HTTPS"] != "on") { 16 http_response_code(301); 17 header("Location: https://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]); 18 exit(); 61 $wpsslredir_requested_url = site_url().$_SERVER[REQUEST_URI]; 62 $wpsslredir_parse_url = parse_url($wpsslredir_requested_url); 63 if(get_option('wp_ssl_redirect_protocol') == 'www') { 64 if(strpos($wpsslredir_parse_url['host'], 'www.') === false) { 65 $wpsslredir_parse_url['host'] = 'www.'.$wpsslredir_parse_url['host']; 66 } 67 } else if(get_option('wp_ssl_redirect_protocol') == 'non-www') { 68 if(strpos($wpsslredir_parse_url['host'], 'www.') !== false) { 69 $wpsslredir_parse_url['host'] = str_replace('www.', '', $wpsslredir_parse_url['host']); 70 } 71 } else { 72 $wpssl_site_default_url = parse_url(site_url()); 73 $wpsslredir_parse_url['host'] = $wpssl_site_default_url['host']; 74 } 75 $wpsslredir_url = 'https://'.$wpsslredir_parse_url['host'].$wpsslredir_parse_url['path']; 76 $wpsslredir_new_siteurl = 'https://'.$wpsslredir_parse_url['host']; 77 if($wpsslredir_new_siteurl !== site_url()) { 78 update_option('siteurl', $wpsslredir_new_siteurl); 79 update_option('home', $wpsslredir_new_siteurl); 80 } 81 if($wpsslredir_requested_url !== $wpsslredir_url) { 82 header('Location: '.$wpsslredir_url, true, 301); 83 exit; 19 84 } 20 85 } -
wp-ssl-redirect/trunk/readme.txt
r1662712 r1725416 4 4 Requires at least: 3.95 5 5 Tested up to: 4.7.5 6 Stable tag: 1. 06 Stable tag: 1.1 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 31 31 32 32 == Changelog == 33 none 33 1.1 Added options to force www or non-www
Note: See TracChangeset
for help on using the changeset viewer.