Version Description
- Changed function naming to avoid conflicts reported by users.
Download this release
Release Info
Developer | WebFactory |
Plugin | WP Force SSL |
Version | 1.4 |
Comparing to | |
See all releases |
Version 1.4
- index.php +2 -0
- php-backwards-compatibility.php +39 -0
- plugin.php +21 -0
- readme.txt +43 -0
- wp-force-ssl.php +109 -0
index.php
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
<?php
|
2 |
+
//Silence is golden.
|
php-backwards-compatibility.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Prevent direct file access
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
header( 'Status: 403 Forbidden' );
|
5 |
+
header( 'HTTP/1.1 403 Forbidden' );
|
6 |
+
exit;
|
7 |
+
}
|
8 |
+
/**
|
9 |
+
* Deactivates the plugin
|
10 |
+
*
|
11 |
+
* @return bool
|
12 |
+
*/
|
13 |
+
function wpfssl_deactivate_self() {
|
14 |
+
if( ! current_user_can( 'activate_plugins' ) ) {
|
15 |
+
return false;
|
16 |
+
}
|
17 |
+
// deactivate self
|
18 |
+
deactivate_plugins( 'wp-force-ssl/wp-force-ssl.php' );
|
19 |
+
// get rid of "Plugin activated" notice
|
20 |
+
if( isset( $_GET['activate'] ) ) {
|
21 |
+
unset( $_GET['activate'] );
|
22 |
+
}
|
23 |
+
// show notice to user
|
24 |
+
add_action( 'admin_notices', 'wpfssl_requirement_notice' );
|
25 |
+
return true;
|
26 |
+
}
|
27 |
+
/**
|
28 |
+
* Outputs a notice telling the user that the plugin deactivated itself
|
29 |
+
*/
|
30 |
+
function wpfssl_requirement_notice() {
|
31 |
+
?>
|
32 |
+
<div class="updated">
|
33 |
+
<p><?php _e( 'WP Force SSL did not activate because it requires your server to run PHP 5.4 or higher. <a href="http://www.wpupdatephp.com/update/" target="_blank">Learn More</a>', 'wp-force-ssl' ); ?></p>
|
34 |
+
</div>
|
35 |
+
<?php
|
36 |
+
}
|
37 |
+
// Hook into `admin_init`
|
38 |
+
add_action( 'admin_init', 'wpfssl_deactivate_self' );
|
39 |
+
?>
|
plugin.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Prevent direct access to this file.
|
3 |
+
if( !defined( 'ABSPATH' ) ) {
|
4 |
+
exit( 'You are not allowed to access this file directly.' );
|
5 |
+
}
|
6 |
+
|
7 |
+
// "The Core"
|
8 |
+
define('FORCE_SSL' , true);
|
9 |
+
|
10 |
+
if (defined('FORCE_SSL'))
|
11 |
+
add_action('template_redirect', 'wpfssl_core');
|
12 |
+
|
13 |
+
function wpfssl_core(){
|
14 |
+
|
15 |
+
if ( FORCE_SSL && !is_ssl () )
|
16 |
+
{
|
17 |
+
wp_redirect('https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 301 );
|
18 |
+
exit();
|
19 |
+
}
|
20 |
+
}
|
21 |
+
?>
|
readme.txt
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Plugin Name ===
|
2 |
+
Contributors: kosvrouvas, webfactory
|
3 |
+
Tags: ssl, force, https, security, ssl certificate, certificate, redirect
|
4 |
+
Requires at least: 3.9
|
5 |
+
Tested up to: 5.2.2
|
6 |
+
Stable Tag: 1.4
|
7 |
+
License: GPLv2 or later
|
8 |
+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
+
|
10 |
+
== Description ==
|
11 |
+
This plugin helps you redirect HTTP traffic to HTTPS without the need of touching any code.
|
12 |
+
|
13 |
+
Want to contribute? Visit the <a href="https://bit.ly/2KIS3wC" target="_blank">Github repo</a>.
|
14 |
+
|
15 |
+
= Notes: =
|
16 |
+
- You need an SSL Certificate in order for this plugin to work.
|
17 |
+
- You need to <strong>add https to the WordPress Address (URL) and Site Address (URL) parameters under General > Settings</strong>. (Required by WordPress itself)
|
18 |
+
|
19 |
+
== Installation ==
|
20 |
+
You need to <strong>add https to the WordPress Address (URL) and Site Address (URL) parameters under General > Settings</strong>. (Required by WordPress itself)
|
21 |
+
|
22 |
+
1. Add https to the WordPress Address (URL) and Site Address (URL) parameters under General > Settings. (Required by WordPress itself)
|
23 |
+
2. Install as a regular WordPress plugin.
|
24 |
+
3. Activate the plugin.
|
25 |
+
4. Done.
|
26 |
+
|
27 |
+
== Changelog ==
|
28 |
+
= 1.4 =
|
29 |
+
- Changed function naming to avoid conflicts reported by users.
|
30 |
+
|
31 |
+
= 1.3 =
|
32 |
+
- Dropping support for PHP 5.3: Only 15.9% of the people that use WordPress use PHP 5.3, it reached end of life and you should ask your host to upgrade.
|
33 |
+
|
34 |
+
= 1.2.1 =
|
35 |
+
- Fixed an issue where some users were getting a error message for no valid header when activating the plugin.
|
36 |
+
|
37 |
+
= 1.2 =
|
38 |
+
- Dropping support for PHP 5.2: Only 5.7% of the people that use WordPress use PHP 5.2, it's old, buggy, and insecure.
|
39 |
+
|
40 |
+
== Upgrade Notice ==
|
41 |
+
|
42 |
+
= 1.3 =
|
43 |
+
In this version, we are dropping support for PHP 5.3. Do not upgrade if your website is running on it just yet, and ask you host to upgrade.
|
wp-force-ssl.php
ADDED
@@ -0,0 +1,109 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Plugin Name: WP Force SSL
|
4 |
+
Plugin URI: https://www.kosvrouvas.com
|
5 |
+
Description: Redirect all traffic from HTTP to HTTPS to all pages of your WordPress website.
|
6 |
+
Stable Tag: 1.4
|
7 |
+
Author: Kostas Vrouvas
|
8 |
+
Version: 1.4
|
9 |
+
*/
|
10 |
+
|
11 |
+
//
|
12 |
+
register_activation_hook( __FILE__, 'wpfssl_welcome_screen_activate' );
|
13 |
+
function wpfssl_welcome_screen_activate() {
|
14 |
+
set_transient( '_welcome_screen_activation_redirect', true, 30 );
|
15 |
+
}
|
16 |
+
|
17 |
+
add_action( 'admin_init', 'wpfssl_welcome_screen_do_activation_redirect' );
|
18 |
+
function wpfssl_welcome_screen_do_activation_redirect() {
|
19 |
+
// Bail if no activation redirect
|
20 |
+
if ( ! get_transient( '_welcome_screen_activation_redirect' ) ) {
|
21 |
+
return;
|
22 |
+
}
|
23 |
+
|
24 |
+
// Delete the redirect transient
|
25 |
+
delete_transient( '_welcome_screen_activation_redirect' );
|
26 |
+
|
27 |
+
// Bail if activating from network, or bulk
|
28 |
+
if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
|
29 |
+
return;
|
30 |
+
}
|
31 |
+
|
32 |
+
// Redirect to bbPress about page
|
33 |
+
wp_safe_redirect( add_query_arg( array( 'page' => 'wpfssl-welcome-screen' ), admin_url( 'index.php' ) ) );
|
34 |
+
}
|
35 |
+
|
36 |
+
add_action('admin_menu', 'wpfssl_welcome_screen_pages');
|
37 |
+
function wpfssl_welcome_screen_pages() {
|
38 |
+
add_dashboard_page(
|
39 |
+
'Welcome to WP Force SSL',
|
40 |
+
'Welcome to WP Force SSL',
|
41 |
+
'read',
|
42 |
+
'wpfssl-welcome-screen',
|
43 |
+
'wpfssl_welcome_screen_content'
|
44 |
+
);
|
45 |
+
}
|
46 |
+
function wpfssl_welcome_screen_content() {
|
47 |
+
?>
|
48 |
+
<div id="wpbody">
|
49 |
+
<div id="wpbody-content">
|
50 |
+
<div class="wrap about-wrap">
|
51 |
+
<h1>Thank you for installing WP Force SSL!</h1>
|
52 |
+
<div class="about-text">
|
53 |
+
This plugin helps you redirect HTTP traffic to HTTPS without the need of touching any code.</div>
|
54 |
+
<h3>Some things are required for this to happen:</h3>
|
55 |
+
<ul class="ul-disc">
|
56 |
+
<li>You need an SSL Certificate in order for this plugin to work.</li>
|
57 |
+
<li>You need to add https to the WordPress Address (URL) and Site Address (URL) parameters under General > Settings. (Required by WordPress itself)</li>
|
58 |
+
</ul>
|
59 |
+
<br>
|
60 |
+
<br>
|
61 |
+
<hr>
|
62 |
+
<h1>Changelog:</h1>
|
63 |
+
<br>
|
64 |
+
<h4>1.4</h4>
|
65 |
+
<p><small>Release date: December 9th, 2018</small></p>
|
66 |
+
<ul class="ul-disc">
|
67 |
+
<li>Changed function naming to avoid conflicts reported by users.</li>
|
68 |
+
</ul>
|
69 |
+
<h4>1.3</h4>
|
70 |
+
<p><small>Release date: February 11th, 2016</small></p>
|
71 |
+
<ul class="ul-disc">
|
72 |
+
<li>Dropping support for PHP 5.3: Only 15.9% of the people that use WordPress use PHP 5.3, it reached end of life and you should ask your host to upgrade.</li>
|
73 |
+
</ul>
|
74 |
+
<h4>1.2.1</h4>
|
75 |
+
<p><small>Release date: April 22th, 2015</small></p>
|
76 |
+
<ul class="ul-disc">
|
77 |
+
<li>Fixed an issue where some users were getting a error message for no valid header when activating the plugin.</li>
|
78 |
+
</ul>
|
79 |
+
<h4>1.2</h4>
|
80 |
+
<ul class="ul-disc">
|
81 |
+
<li>Dropping support for PHP 5.2: Only 5.7% of the people that use WordPress use PHP 5.2, it's old, buggy, and insecure.</li>
|
82 |
+
</ul>
|
83 |
+
</div>
|
84 |
+
</div>
|
85 |
+
</div><!-- wpbody-content -->
|
86 |
+
|
87 |
+
<?php
|
88 |
+
}
|
89 |
+
|
90 |
+
add_action( 'admin_head', 'wpfssl_welcome_screen_remove_menus' );
|
91 |
+
function wpfssl_welcome_screen_remove_menus() {
|
92 |
+
remove_submenu_page( 'index.php', 'wpfssl-welcome-screen' );
|
93 |
+
}
|
94 |
+
|
95 |
+
|
96 |
+
// Prevent direct access to this file.
|
97 |
+
if( !defined( 'ABSPATH' ) ) {
|
98 |
+
exit( 'You are not allowed to access this file directly.' );
|
99 |
+
}
|
100 |
+
|
101 |
+
// Check if PHP is at the minimum required version
|
102 |
+
if( version_compare( PHP_VERSION, '5.4', '>=' ) ) {
|
103 |
+
define( 'WP_FORCE_SSL_FILE', __FILE__ );
|
104 |
+
require_once dirname( __FILE__ ) . '/plugin.php';
|
105 |
+
} else {
|
106 |
+
require_once dirname( __FILE__ ) . '/php-backwards-compatibility.php';
|
107 |
+
}
|
108 |
+
|
109 |
+
?>
|