Version Description
That silly bug with the database tables not being created has been squashed. Improved query performance.
Download this release
Release Info
| Developer | shawn@eggplantstudios.ca |
| Plugin | |
| Version | 2.2.7 |
| Comparing to | |
| See all releases | |
Code changes from version 2.2.6 to 2.2.7
- class.drop-down-pages.php +11 -3
- eps-301-redirects.php +34 -50
- eps-form-elements.php +1 -0
- js/scripts.js +0 -5
- libs/eps-plugin-options.php +7 -5
- libs/eps-plugin.php +0 -193
- plugin.php +119 -6
- readme.txt +7 -1
- templates/admin-panel-cache.php +2 -0
- templates/admin-panel-donate.php +2 -0
- templates/admin-tab-404s.php +2 -0
- templates/admin-tab-error.php +2 -0
- templates/admin-tab-import-export.php +2 -0
- templates/admin-tab-redirects.php +2 -0
- templates/template.redirect-entry-edit-inline.php +1 -0
- templates/template.redirect-entry-edit.php +2 -0
- templates/template.redirect-entry.php +2 -0
class.drop-down-pages.php
CHANGED
|
@@ -10,9 +10,15 @@
|
|
| 10 |
* @return string or HTML content, if not displaying.
|
| 11 |
*/
|
| 12 |
|
|
|
|
| 13 |
|
| 14 |
-
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
$defaults = array(
|
| 17 |
'posts_per_page' => -1,
|
| 18 |
'offset' => 0,
|
|
@@ -73,5 +79,7 @@ class EPS_Walker_PageDropdown extends Walker {
|
|
| 73 |
$output[$object->ID] = $pad . esc_html( apply_filters( 'list_pages', $object->post_title, $object ) );
|
| 74 |
}
|
| 75 |
}
|
| 76 |
-
|
|
|
|
|
|
|
| 77 |
?>
|
| 10 |
* @return string or HTML content, if not displaying.
|
| 11 |
*/
|
| 12 |
|
| 13 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 14 |
|
| 15 |
+
|
| 16 |
+
if( !function_exists('eps_dropdown_pages'))
|
| 17 |
+
{
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
function eps_dropdown_pages($args = '')
|
| 21 |
+
{
|
| 22 |
$defaults = array(
|
| 23 |
'posts_per_page' => -1,
|
| 24 |
'offset' => 0,
|
| 79 |
$output[$object->ID] = $pad . esc_html( apply_filters( 'list_pages', $object->post_title, $object ) );
|
| 80 |
}
|
| 81 |
}
|
| 82 |
+
|
| 83 |
+
|
| 84 |
+
} // End function exists.
|
| 85 |
?>
|
eps-301-redirects.php
CHANGED
|
@@ -15,7 +15,7 @@
|
|
| 15 |
*
|
| 16 |
* @package EPS 301 Redirects
|
| 17 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 18 |
-
* @version 2.2.
|
| 19 |
*/
|
| 20 |
|
| 21 |
|
|
@@ -25,7 +25,7 @@
|
|
| 25 |
Plugin Name: Eggplant 301 Redirects
|
| 26 |
Plugin URI: http://www.eggplantstudios.ca
|
| 27 |
Description: Create your own 301 redirects using this powerful plugin.
|
| 28 |
-
Version: 2.2.
|
| 29 |
Author: Shawn Wernig http://www.eggplantstudios.ca
|
| 30 |
License: GPLv2 or later
|
| 31 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
|
@@ -36,16 +36,16 @@ if( ! defined( 'EPS_REDIRECT_PRO' ) )
|
|
| 36 |
|
| 37 |
define ( 'EPS_REDIRECT_PATH', plugin_dir_path(__FILE__) );
|
| 38 |
define ( 'EPS_REDIRECT_URL', plugins_url() . '/eps-301-redirects/');
|
| 39 |
-
define ( 'EPS_REDIRECT_VERSION', '2.2.
|
| 40 |
define ( 'EPS_REDIRECT_PRO', false);
|
| 41 |
|
| 42 |
include( EPS_REDIRECT_PATH.'eps-form-elements.php');
|
| 43 |
include( EPS_REDIRECT_PATH.'class.drop-down-pages.php');
|
| 44 |
-
include( EPS_REDIRECT_PATH.'libs/eps-plugin.php');
|
| 45 |
include( EPS_REDIRECT_PATH.'libs/eps-plugin-options.php');
|
| 46 |
include( EPS_REDIRECT_PATH.'plugin.php');
|
| 47 |
|
| 48 |
-
|
|
|
|
| 49 |
|
| 50 |
class EPS_Redirects {
|
| 51 |
|
|
@@ -101,6 +101,7 @@ class EPS_Redirects {
|
|
| 101 |
*/
|
| 102 |
public function do_redirect() {
|
| 103 |
if ( is_admin() ) return false;
|
|
|
|
| 104 |
$redirects = self::get_redirects( true ); // True for only active redirects.
|
| 105 |
|
| 106 |
if (empty($redirects)) return false; // No redirects.
|
|
@@ -108,30 +109,30 @@ class EPS_Redirects {
|
|
| 108 |
// Get current url
|
| 109 |
$url_request = self::get_url();
|
| 110 |
|
|
|
|
| 111 |
$query_string = explode('?', $url_request);
|
| 112 |
$query_string = ( isset($query_string[1]) ) ? $query_string[1] : false;
|
| 113 |
|
| 114 |
-
|
| 115 |
foreach ($redirects as $redirect )
|
| 116 |
{
|
| 117 |
$from = urldecode( $redirect->url_from );
|
| 118 |
-
$to = ($redirect->type == "url" && !is_numeric( $redirect->url_to )) ? urldecode($redirect->url_to) : get_permalink( $redirect->url_to );
|
| 119 |
|
| 120 |
if( $redirect->status != 'inactive' && rtrim( trim($url_request),'/') === self::format_from_url( trim($from) ) )
|
| 121 |
{
|
| 122 |
-
|
| 123 |
// Match, this needs to be redirected
|
|
|
|
| 124 |
// increment this hit counter.
|
| 125 |
-
self::increment_field($redirect->id, 'count');
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
} elseif ( $redirect->status == '302' ) {
|
| 130 |
-
header ('HTTP/1.1 301 Moved Temporarily');
|
| 131 |
-
}
|
| 132 |
|
|
|
|
|
|
|
| 133 |
$to = ( $query_string ) ? $to . "?" . $query_string : $to;
|
| 134 |
|
|
|
|
| 135 |
header ('Location: ' . $to, true, (int) $redirect->status);
|
| 136 |
exit();
|
| 137 |
}
|
|
@@ -139,6 +140,18 @@ class EPS_Redirects {
|
|
| 139 |
}
|
| 140 |
}
|
| 141 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 142 |
/**
|
| 143 |
*
|
| 144 |
* FORMAT FROM URL
|
|
@@ -150,7 +163,8 @@ class EPS_Redirects {
|
|
| 150 |
*
|
| 151 |
*/
|
| 152 |
private function format_from_url( $string ) {
|
| 153 |
-
|
|
|
|
| 154 |
//return strtolower( rtrim( $from,'/') );
|
| 155 |
|
| 156 |
|
|
@@ -172,16 +186,12 @@ class EPS_Redirects {
|
|
| 172 |
*/
|
| 173 |
public static function get_url() {
|
| 174 |
return strtolower( urldecode( $_SERVER['REQUEST_URI'] ) );
|
|
|
|
| 175 |
//$protocol = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ) ? 'https' : 'http';
|
| 176 |
//return strtolower( urldecode( $protocol . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ) );
|
| 177 |
}
|
| 178 |
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
|
| 184 |
-
|
| 185 |
/**
|
| 186 |
*
|
| 187 |
* PARSE SERIAL ARRAY
|
|
@@ -443,6 +453,7 @@ class EPS_Redirects {
|
|
| 443 |
echo json_encode( array( 'id' => $_POST['id']) );
|
| 444 |
exit();
|
| 445 |
}
|
|
|
|
| 446 |
private static function _delete( $id ){
|
| 447 |
global $wpdb;
|
| 448 |
$table_name = $wpdb->prefix . "redirects";
|
|
@@ -527,39 +538,12 @@ class EPS_Redirects {
|
|
| 527 |
|
| 528 |
public static function check_404()
|
| 529 |
{
|
| 530 |
-
|
|
|
|
| 531 |
}
|
| 532 |
|
| 533 |
}
|
| 534 |
|
| 535 |
-
|
| 536 |
-
|
| 537 |
-
|
| 538 |
-
|
| 539 |
-
/**
|
| 540 |
-
* Outputs an object or array in a readable form.
|
| 541 |
-
*
|
| 542 |
-
* @return void
|
| 543 |
-
* @param $string = the object to prettify; Typically a string.
|
| 544 |
-
* @author epstudios
|
| 545 |
-
*/
|
| 546 |
-
if( !function_exists('eps_prettify')) {
|
| 547 |
-
function eps_prettify( $string ) {
|
| 548 |
-
return ucwords( str_replace("_"," ",$string) );
|
| 549 |
-
}
|
| 550 |
-
}
|
| 551 |
-
|
| 552 |
-
if( !function_exists('eps_view')) {
|
| 553 |
-
function eps_view( $object ) {
|
| 554 |
-
echo '<pre>';
|
| 555 |
-
print_r($object);
|
| 556 |
-
echo '</pre>';
|
| 557 |
-
}
|
| 558 |
-
}
|
| 559 |
-
|
| 560 |
-
|
| 561 |
-
|
| 562 |
-
|
| 563 |
// Run the plugin.
|
| 564 |
$EPS_Redirects = new EPS_Redirects();
|
| 565 |
|
| 15 |
*
|
| 16 |
* @package EPS 301 Redirects
|
| 17 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 18 |
+
* @version 2.2.7
|
| 19 |
*/
|
| 20 |
|
| 21 |
|
| 25 |
Plugin Name: Eggplant 301 Redirects
|
| 26 |
Plugin URI: http://www.eggplantstudios.ca
|
| 27 |
Description: Create your own 301 redirects using this powerful plugin.
|
| 28 |
+
Version: 2.2.7
|
| 29 |
Author: Shawn Wernig http://www.eggplantstudios.ca
|
| 30 |
License: GPLv2 or later
|
| 31 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 36 |
|
| 37 |
define ( 'EPS_REDIRECT_PATH', plugin_dir_path(__FILE__) );
|
| 38 |
define ( 'EPS_REDIRECT_URL', plugins_url() . '/eps-301-redirects/');
|
| 39 |
+
define ( 'EPS_REDIRECT_VERSION', '2.2.7');
|
| 40 |
define ( 'EPS_REDIRECT_PRO', false);
|
| 41 |
|
| 42 |
include( EPS_REDIRECT_PATH.'eps-form-elements.php');
|
| 43 |
include( EPS_REDIRECT_PATH.'class.drop-down-pages.php');
|
|
|
|
| 44 |
include( EPS_REDIRECT_PATH.'libs/eps-plugin-options.php');
|
| 45 |
include( EPS_REDIRECT_PATH.'plugin.php');
|
| 46 |
|
| 47 |
+
register_activation_hook( __FILE__, array('EPS_Redirects_Plugin', '_activation'));
|
| 48 |
+
register_deactivation_hook( __FILE__, array('EPS_Redirects_Plugin', '_deactivation'));
|
| 49 |
|
| 50 |
class EPS_Redirects {
|
| 51 |
|
| 101 |
*/
|
| 102 |
public function do_redirect() {
|
| 103 |
if ( is_admin() ) return false;
|
| 104 |
+
|
| 105 |
$redirects = self::get_redirects( true ); // True for only active redirects.
|
| 106 |
|
| 107 |
if (empty($redirects)) return false; // No redirects.
|
| 109 |
// Get current url
|
| 110 |
$url_request = self::get_url();
|
| 111 |
|
| 112 |
+
// Extract the query string
|
| 113 |
$query_string = explode('?', $url_request);
|
| 114 |
$query_string = ( isset($query_string[1]) ) ? $query_string[1] : false;
|
| 115 |
|
| 116 |
+
// Check all redirects for matches
|
| 117 |
foreach ($redirects as $redirect )
|
| 118 |
{
|
| 119 |
$from = urldecode( $redirect->url_from );
|
|
|
|
| 120 |
|
| 121 |
if( $redirect->status != 'inactive' && rtrim( trim($url_request),'/') === self::format_from_url( trim($from) ) )
|
| 122 |
{
|
|
|
|
| 123 |
// Match, this needs to be redirected
|
| 124 |
+
|
| 125 |
// increment this hit counter.
|
| 126 |
+
self::increment_field( $redirect->id, 'count');
|
| 127 |
+
|
| 128 |
+
// Set the header status
|
| 129 |
+
self::set_header_status( $redirect->status );
|
|
|
|
|
|
|
|
|
|
| 130 |
|
| 131 |
+
// Resolve the new location
|
| 132 |
+
$to = ($redirect->type == "url" && !is_numeric( $redirect->url_to )) ? urldecode($redirect->url_to) : get_permalink( $redirect->url_to );
|
| 133 |
$to = ( $query_string ) ? $to . "?" . $query_string : $to;
|
| 134 |
|
| 135 |
+
// Send em off!
|
| 136 |
header ('Location: ' . $to, true, (int) $redirect->status);
|
| 137 |
exit();
|
| 138 |
}
|
| 140 |
}
|
| 141 |
}
|
| 142 |
|
| 143 |
+
private static function set_header_status( $status = '301' )
|
| 144 |
+
{
|
| 145 |
+
if( $status == '302' )
|
| 146 |
+
{
|
| 147 |
+
header ('HTTP/1.1 301 Moved Permanently');
|
| 148 |
+
}
|
| 149 |
+
else
|
| 150 |
+
{
|
| 151 |
+
header ('HTTP/1.1 301 Moved Temporarily');
|
| 152 |
+
}
|
| 153 |
+
}
|
| 154 |
+
|
| 155 |
/**
|
| 156 |
*
|
| 157 |
* FORMAT FROM URL
|
| 163 |
*
|
| 164 |
*/
|
| 165 |
private function format_from_url( $string ) {
|
| 166 |
+
// Legacy, just in case I need it again.
|
| 167 |
+
//$from = home_url() . '/' . $string;
|
| 168 |
//return strtolower( rtrim( $from,'/') );
|
| 169 |
|
| 170 |
|
| 186 |
*/
|
| 187 |
public static function get_url() {
|
| 188 |
return strtolower( urldecode( $_SERVER['REQUEST_URI'] ) );
|
| 189 |
+
// Legacy, just in case I need it again.
|
| 190 |
//$protocol = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ) ? 'https' : 'http';
|
| 191 |
//return strtolower( urldecode( $protocol . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ) );
|
| 192 |
}
|
| 193 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 194 |
|
|
|
|
| 195 |
/**
|
| 196 |
*
|
| 197 |
* PARSE SERIAL ARRAY
|
| 453 |
echo json_encode( array( 'id' => $_POST['id']) );
|
| 454 |
exit();
|
| 455 |
}
|
| 456 |
+
|
| 457 |
private static function _delete( $id ){
|
| 458 |
global $wpdb;
|
| 459 |
$table_name = $wpdb->prefix . "redirects";
|
| 538 |
|
| 539 |
public static function check_404()
|
| 540 |
{
|
| 541 |
+
// deprecated
|
| 542 |
+
return false;
|
| 543 |
}
|
| 544 |
|
| 545 |
}
|
| 546 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 547 |
// Run the plugin.
|
| 548 |
$EPS_Redirects = new EPS_Redirects();
|
| 549 |
|
eps-form-elements.php
CHANGED
|
@@ -25,6 +25,7 @@
|
|
| 25 |
* @author epstudios
|
| 26 |
*
|
| 27 |
*/
|
|
|
|
| 28 |
|
| 29 |
function eps_get_selector( $redirect = false ) {
|
| 30 |
$current_post = ( isset( $redirect->url_to ) && is_numeric( $redirect->url_to ) ) ? get_post( intval( $redirect->url_to ) ) : null;
|
| 25 |
* @author epstudios
|
| 26 |
*
|
| 27 |
*/
|
| 28 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 29 |
|
| 30 |
function eps_get_selector( $redirect = false ) {
|
| 31 |
$current_post = ( isset( $redirect->url_to ) && is_numeric( $redirect->url_to ) ) ? get_post( intval( $redirect->url_to ) ) : null;
|
js/scripts.js
CHANGED
|
@@ -1,8 +1,3 @@
|
|
| 1 |
-
/* Author:
|
| 2 |
-
|
| 3 |
-
*/
|
| 4 |
-
|
| 5 |
-
|
| 6 |
jQuery(document).ready(function ($) {
|
| 7 |
|
| 8 |
/**
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
jQuery(document).ready(function ($) {
|
| 2 |
|
| 3 |
/**
|
libs/eps-plugin-options.php
CHANGED
|
@@ -1,20 +1,21 @@
|
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
*
|
| 4 |
-
* Plugin Options Handler
|
| 5 |
*
|
| 6 |
* @author Shawn Wernig, Eggplant Studios, www.eggplantstudios.ca
|
| 7 |
-
* @version 1.0.
|
| 8 |
* @copyright 2015 Eggplant Studios
|
| 9 |
* @package EPS Boilerplate
|
| 10 |
*
|
| 11 |
*
|
| 12 |
*/
|
|
|
|
| 13 |
|
| 14 |
-
if( ! class_exists('
|
| 15 |
{
|
| 16 |
|
| 17 |
-
class
|
| 18 |
|
| 19 |
/**
|
| 20 |
*
|
|
@@ -37,12 +38,13 @@ class EPS_Plugin_Options {
|
|
| 37 |
* Initialize the Theme Options, and register some actions.
|
| 38 |
*
|
| 39 |
*/
|
| 40 |
-
public function __construct(
|
| 41 |
$this->plugin = $Plugin;
|
| 42 |
$this->build_settings();
|
| 43 |
add_action( 'admin_init', array($this, 'options_defaults') );
|
| 44 |
add_action( 'admin_init', array($this, 'register_settings') );
|
| 45 |
add_action( 'admin_menu', array($this, 'add_options_page') );
|
|
|
|
| 46 |
}
|
| 47 |
|
| 48 |
/**
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
*
|
| 4 |
+
* Plugin Options Handler - Customized for EPS 301 Redirects
|
| 5 |
*
|
| 6 |
* @author Shawn Wernig, Eggplant Studios, www.eggplantstudios.ca
|
| 7 |
+
* @version 1.0.5
|
| 8 |
* @copyright 2015 Eggplant Studios
|
| 9 |
* @package EPS Boilerplate
|
| 10 |
*
|
| 11 |
*
|
| 12 |
*/
|
| 13 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 14 |
|
| 15 |
+
if( ! class_exists('EPS_Redirects_Plugin_Options') )
|
| 16 |
{
|
| 17 |
|
| 18 |
+
class EPS_Redirects_Plugin_Options {
|
| 19 |
|
| 20 |
/**
|
| 21 |
*
|
| 38 |
* Initialize the Theme Options, and register some actions.
|
| 39 |
*
|
| 40 |
*/
|
| 41 |
+
public function __construct( EPS_Redirects_Plugin $Plugin ){
|
| 42 |
$this->plugin = $Plugin;
|
| 43 |
$this->build_settings();
|
| 44 |
add_action( 'admin_init', array($this, 'options_defaults') );
|
| 45 |
add_action( 'admin_init', array($this, 'register_settings') );
|
| 46 |
add_action( 'admin_menu', array($this, 'add_options_page') );
|
| 47 |
+
|
| 48 |
}
|
| 49 |
|
| 50 |
/**
|
libs/eps-plugin.php
DELETED
|
@@ -1,193 +0,0 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/**
|
| 3 |
-
* EPS Plugin
|
| 4 |
-
*
|
| 5 |
-
* @author Shawn Wernig, Eggplant Studios, www.eggplantstudios.ca
|
| 6 |
-
* @version 1.0.0
|
| 7 |
-
* @copyright 2015 Eggplant Studios
|
| 8 |
-
* @package EPS Boilerplate
|
| 9 |
-
*/
|
| 10 |
-
|
| 11 |
-
if( ! class_exists('EPS_Plugin') )
|
| 12 |
-
{
|
| 13 |
-
class EPS_Plugin {
|
| 14 |
-
|
| 15 |
-
protected $config = array(
|
| 16 |
-
'version' => '',
|
| 17 |
-
'option_slug' => '',
|
| 18 |
-
'page_slug' => '',
|
| 19 |
-
'page_title' => '',
|
| 20 |
-
'url' => '',
|
| 21 |
-
'path' => ''
|
| 22 |
-
);
|
| 23 |
-
|
| 24 |
-
protected $resources = array(
|
| 25 |
-
'css' => array(
|
| 26 |
-
'admin.css'
|
| 27 |
-
),
|
| 28 |
-
'js' => array(
|
| 29 |
-
'admin.js'
|
| 30 |
-
)
|
| 31 |
-
);
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
protected $tables = array();
|
| 35 |
-
|
| 36 |
-
protected $dependencies = array();
|
| 37 |
-
|
| 38 |
-
protected $options;
|
| 39 |
-
|
| 40 |
-
public $name = '';
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
/**
|
| 44 |
-
*
|
| 45 |
-
* Constructor
|
| 46 |
-
*
|
| 47 |
-
* Add some actions.
|
| 48 |
-
*
|
| 49 |
-
*/
|
| 50 |
-
public function __construct(){
|
| 51 |
-
$this->config['url'] = plugins_url() . $this->config['directory'] . '/';
|
| 52 |
-
$this->config['path'] = EPS_REDIRECT_PATH . $this->config['directory'] . '/';
|
| 53 |
-
|
| 54 |
-
if( class_exists('EPS_Plugin_Options') )
|
| 55 |
-
$this->settings = new EPS_Plugin_Options( $this );
|
| 56 |
-
|
| 57 |
-
register_activation_hook( __FILE__, array($this, '_activation'));
|
| 58 |
-
register_deactivation_hook( __FILE__, array($this, '_deactivation'));
|
| 59 |
-
if ( !self::is_current_version() ) self::update_self();
|
| 60 |
-
add_action('init', array($this, 'plugin_resources'));
|
| 61 |
-
}
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
public function resolve_dependencies()
|
| 65 |
-
{
|
| 66 |
-
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
| 67 |
-
foreach( $this->dependencies as $name => $path_to_plugin )
|
| 68 |
-
{
|
| 69 |
-
if ( ! is_plugin_active( $path_to_plugin ) )
|
| 70 |
-
{
|
| 71 |
-
echo $name . ' IS NOT INSTALLED!';
|
| 72 |
-
}
|
| 73 |
-
}
|
| 74 |
-
}
|
| 75 |
-
|
| 76 |
-
public static function plugin_resources()
|
| 77 |
-
{
|
| 78 |
-
|
| 79 |
-
}
|
| 80 |
-
|
| 81 |
-
private function resource_path( $path, $resource )
|
| 82 |
-
{
|
| 83 |
-
return strtolower(
|
| 84 |
-
$this->config['url']
|
| 85 |
-
. $path . '/'
|
| 86 |
-
. $resource );
|
| 87 |
-
}
|
| 88 |
-
|
| 89 |
-
private function resource_name( $resource )
|
| 90 |
-
{
|
| 91 |
-
return strtolower( $this->name . '_' . key( $resource ) );
|
| 92 |
-
}
|
| 93 |
-
|
| 94 |
-
/**
|
| 95 |
-
*
|
| 96 |
-
*
|
| 97 |
-
* Activation and Deactivation Handlers.
|
| 98 |
-
*
|
| 99 |
-
* @return nothing
|
| 100 |
-
* @author epstudios
|
| 101 |
-
*/
|
| 102 |
-
public function activation_error() {
|
| 103 |
-
file_put_contents($this->config('path'). '/error_activation.html', ob_get_contents());
|
| 104 |
-
}
|
| 105 |
-
|
| 106 |
-
public function _activation() {
|
| 107 |
-
if ( !self::is_current_version() ) self::update_self();
|
| 108 |
-
}
|
| 109 |
-
|
| 110 |
-
public function _deactivation() {}
|
| 111 |
-
|
| 112 |
-
public static function is_current_version()
|
| 113 |
-
{
|
| 114 |
-
return version_compare( self::current_version(), EPS_REDIRECT_VERSION, '=') ? true : false; // TODO decouple
|
| 115 |
-
}
|
| 116 |
-
public static function current_version()
|
| 117 |
-
{
|
| 118 |
-
return get_option( 'eps_redirects_version' ); // TODO decouple
|
| 119 |
-
}
|
| 120 |
-
public static function set_current_version( $version )
|
| 121 |
-
{
|
| 122 |
-
update_option( 'eps_redirects_version', $version );
|
| 123 |
-
}
|
| 124 |
-
/**
|
| 125 |
-
*
|
| 126 |
-
* CHECK VERSION
|
| 127 |
-
*
|
| 128 |
-
* This function will check the current version and do any fixes required
|
| 129 |
-
*
|
| 130 |
-
* @return string - version number.
|
| 131 |
-
* @author epstudios
|
| 132 |
-
*
|
| 133 |
-
*/
|
| 134 |
-
public function update_self() {
|
| 135 |
-
$this->set_current_version( $this->config['version'] );
|
| 136 |
-
return $this->config['version'];
|
| 137 |
-
}
|
| 138 |
-
|
| 139 |
-
public function config($name)
|
| 140 |
-
{
|
| 141 |
-
return ( isset($this->config[ $name ]) ) ? $this->config[ $name ] : false;
|
| 142 |
-
}
|
| 143 |
-
|
| 144 |
-
/**
|
| 145 |
-
*
|
| 146 |
-
* CREATE TABLES
|
| 147 |
-
*
|
| 148 |
-
* Creates the new database architecture
|
| 149 |
-
*
|
| 150 |
-
* TODO This could be more elegant - and check for syntax errors too.
|
| 151 |
-
*
|
| 152 |
-
* @return nothing
|
| 153 |
-
* @author epstudios
|
| 154 |
-
*
|
| 155 |
-
*/
|
| 156 |
-
protected function _create_tables()
|
| 157 |
-
{
|
| 158 |
-
global $wpdb;
|
| 159 |
-
|
| 160 |
-
$sql = '';
|
| 161 |
-
|
| 162 |
-
foreach( $this->tables as $name => $data )
|
| 163 |
-
{
|
| 164 |
-
$sql .= sprintf("CREATE TABLE `%s` (\n", $wpdb->prefix . $name );
|
| 165 |
-
|
| 166 |
-
foreach($data['columns'] as $name => $attr )
|
| 167 |
-
{
|
| 168 |
-
$sql .= sprintf( "`%s` %s, \n", $name, $attr );
|
| 169 |
-
}
|
| 170 |
-
|
| 171 |
-
$sql .= "PRIMARY KEY (`ID`), \n";
|
| 172 |
-
|
| 173 |
-
if( isset($data['foreign_keys']) && !empty($data['foreign_keys']) )
|
| 174 |
-
{
|
| 175 |
-
foreach( $data['foreign_keys'] as $name => $reference )
|
| 176 |
-
{
|
| 177 |
-
$sql .= sprintf( "FOREIGN KEY (`%s`) REFERENCES %s%s ON DELETE CASCADE ON UPDATE CASCADE, \n", $name, $wpdb->prefix, $reference );
|
| 178 |
-
}
|
| 179 |
-
}
|
| 180 |
-
|
| 181 |
-
$sql = substr($sql, 0, -3);
|
| 182 |
-
$sql .= "\n";
|
| 183 |
-
$sql .= ");\n\n";
|
| 184 |
-
}
|
| 185 |
-
|
| 186 |
-
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
| 187 |
-
dbDelta( $sql );
|
| 188 |
-
}
|
| 189 |
-
}
|
| 190 |
-
|
| 191 |
-
}
|
| 192 |
-
|
| 193 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin.php
CHANGED
|
@@ -6,11 +6,11 @@
|
|
| 6 |
*
|
| 7 |
*
|
| 8 |
*/
|
|
|
|
| 9 |
|
| 10 |
-
register_activation_hook( __FILE__, array('EPS_Redirects_Plugin', '_activation'));
|
| 11 |
-
register_deactivation_hook( __FILE__, array('EPS_Redirects_Plugin', '_deactivation'));
|
| 12 |
|
| 13 |
-
|
|
|
|
| 14 |
|
| 15 |
protected $config = array(
|
| 16 |
'version' => EPS_REDIRECT_VERSION,
|
|
@@ -28,9 +28,33 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 28 |
|
| 29 |
public $name = 'EPS Redirects';
|
| 30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
public function __construct()
|
| 32 |
{
|
| 33 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 34 |
|
| 35 |
// Template Hooks
|
| 36 |
add_action( 'redirects_admin_tab', array($this, 'admin_tab_redirects'), 10, 1 );
|
|
@@ -46,11 +70,39 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 46 |
|
| 47 |
}
|
| 48 |
|
| 49 |
-
public function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 50 |
{
|
| 51 |
self::_create_redirect_table(); // Maybe create the tables
|
| 52 |
if ( !self::is_current_version() ) self::update_self();
|
| 53 |
}
|
|
|
|
|
|
|
| 54 |
/**
|
| 55 |
*
|
| 56 |
* update_self
|
|
@@ -130,7 +182,7 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 130 |
);";
|
| 131 |
|
| 132 |
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
| 133 |
-
dbDelta( $sql );
|
| 134 |
}
|
| 135 |
|
| 136 |
|
|
@@ -195,6 +247,11 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 195 |
if ( isset( $_POST['eps_redirect_submit'] ) && wp_verify_nonce( $_POST['eps_redirect_nonce_submit'], 'eps_redirect_nonce') ) {
|
| 196 |
self::_save_redirects( EPS_Redirects::_parse_serial_array($_POST['redirect']) );
|
| 197 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 198 |
}
|
| 199 |
}
|
| 200 |
|
|
@@ -392,14 +449,66 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 392 |
public static function admin_header_notices()
|
| 393 |
{
|
| 394 |
global $wp_rewrite;
|
|
|
|
|
|
|
| 395 |
if( !isset($wp_rewrite->permalink_structure) || empty($wp_rewrite->permalink_structure) ) {
|
| 396 |
echo '<div class="error clear"><div class="eps-padding">';
|
| 397 |
echo '<strong>WARNING:</strong> EPS 301 Redirects requires that a permalink structure is set. The Default Wordpress permalink structure is not compatible. Please update the <a href="options-permalink.php" title="Permalinks">Permalink Structure</a>.</div>';
|
| 398 |
echo '</div></div>';
|
| 399 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 400 |
}
|
| 401 |
|
| 402 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 403 |
|
| 404 |
/**
|
| 405 |
*
|
|
@@ -410,6 +519,10 @@ class EPS_Redirects_Plugin extends EPS_Plugin {
|
|
| 410 |
* @author epstudios
|
| 411 |
*
|
| 412 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
| 413 |
function admin_notice_bad_csv() {
|
| 414 |
$this->admin_notice("WARNING: Not a valid CSV file! No new redirects have been added.", "error");
|
| 415 |
}
|
| 6 |
*
|
| 7 |
*
|
| 8 |
*/
|
| 9 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 10 |
|
|
|
|
|
|
|
| 11 |
|
| 12 |
+
|
| 13 |
+
class EPS_Redirects_Plugin {
|
| 14 |
|
| 15 |
protected $config = array(
|
| 16 |
'version' => EPS_REDIRECT_VERSION,
|
| 28 |
|
| 29 |
public $name = 'EPS Redirects';
|
| 30 |
|
| 31 |
+
|
| 32 |
+
protected $resources = array(
|
| 33 |
+
'css' => array(
|
| 34 |
+
'admin.css'
|
| 35 |
+
),
|
| 36 |
+
'js' => array(
|
| 37 |
+
'admin.js'
|
| 38 |
+
)
|
| 39 |
+
);
|
| 40 |
+
|
| 41 |
+
|
| 42 |
+
protected $options;
|
| 43 |
+
|
| 44 |
+
|
| 45 |
public function __construct()
|
| 46 |
{
|
| 47 |
+
$this->config['url'] = plugins_url() . $this->config['directory'] . '/';
|
| 48 |
+
$this->config['path'] = EPS_REDIRECT_PATH . $this->config['directory'] . '/';
|
| 49 |
+
|
| 50 |
+
if( class_exists('EPS_Redirects_Plugin_Options') )
|
| 51 |
+
$this->settings = new EPS_Redirects_Plugin_Options( $this );
|
| 52 |
+
|
| 53 |
+
register_activation_hook( __FILE__, array($this, '_activation'));
|
| 54 |
+
register_deactivation_hook( __FILE__, array($this, '_deactivation'));
|
| 55 |
+
|
| 56 |
+
if ( !self::is_current_version() ) self::update_self();
|
| 57 |
+
add_action('init', array($this, 'plugin_resources'));
|
| 58 |
|
| 59 |
// Template Hooks
|
| 60 |
add_action( 'redirects_admin_tab', array($this, 'admin_tab_redirects'), 10, 1 );
|
| 70 |
|
| 71 |
}
|
| 72 |
|
| 73 |
+
public function resolve_dependencies()
|
| 74 |
+
{
|
| 75 |
+
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
| 76 |
+
foreach( $this->dependencies as $name => $path_to_plugin )
|
| 77 |
+
{
|
| 78 |
+
if ( ! is_plugin_active( $path_to_plugin ) )
|
| 79 |
+
{
|
| 80 |
+
echo $name . ' IS NOT INSTALLED!';
|
| 81 |
+
}
|
| 82 |
+
}
|
| 83 |
+
}
|
| 84 |
+
|
| 85 |
+
|
| 86 |
+
private function resource_path( $path, $resource )
|
| 87 |
+
{
|
| 88 |
+
return strtolower(
|
| 89 |
+
$this->config['url']
|
| 90 |
+
. $path . '/'
|
| 91 |
+
. $resource );
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
+
private function resource_name( $resource )
|
| 95 |
+
{
|
| 96 |
+
return strtolower( $this->name . '_' . key( $resource ) );
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
public static function _activation()
|
| 100 |
{
|
| 101 |
self::_create_redirect_table(); // Maybe create the tables
|
| 102 |
if ( !self::is_current_version() ) self::update_self();
|
| 103 |
}
|
| 104 |
+
public static function _deactivation() {}
|
| 105 |
+
|
| 106 |
/**
|
| 107 |
*
|
| 108 |
* update_self
|
| 182 |
);";
|
| 183 |
|
| 184 |
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
| 185 |
+
return dbDelta( $sql );
|
| 186 |
}
|
| 187 |
|
| 188 |
|
| 247 |
if ( isset( $_POST['eps_redirect_submit'] ) && wp_verify_nonce( $_POST['eps_redirect_nonce_submit'], 'eps_redirect_nonce') ) {
|
| 248 |
self::_save_redirects( EPS_Redirects::_parse_serial_array($_POST['redirect']) );
|
| 249 |
}
|
| 250 |
+
|
| 251 |
+
// Create tables
|
| 252 |
+
if( isset($_GET['action']) && $_GET['action'] == 'eps_create_tables' ) {
|
| 253 |
+
$result = self::_create_redirect_table();
|
| 254 |
+
}
|
| 255 |
}
|
| 256 |
}
|
| 257 |
|
| 449 |
public static function admin_header_notices()
|
| 450 |
{
|
| 451 |
global $wp_rewrite;
|
| 452 |
+
global $wpdb;
|
| 453 |
+
$table_name = $wpdb->prefix . "redirects";
|
| 454 |
if( !isset($wp_rewrite->permalink_structure) || empty($wp_rewrite->permalink_structure) ) {
|
| 455 |
echo '<div class="error clear"><div class="eps-padding">';
|
| 456 |
echo '<strong>WARNING:</strong> EPS 301 Redirects requires that a permalink structure is set. The Default Wordpress permalink structure is not compatible. Please update the <a href="options-permalink.php" title="Permalinks">Permalink Structure</a>.</div>';
|
| 457 |
echo '</div></div>';
|
| 458 |
}
|
| 459 |
+
|
| 460 |
+
if($wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name)
|
| 461 |
+
{
|
| 462 |
+
$url = admin_url('options-general.php?page=eps_redirects');
|
| 463 |
+
echo '<div class="error clear"><div class="eps-padding">';
|
| 464 |
+
echo '<strong>WARNING:</strong> It looks like we need to <a href="'.$url.'&action=eps_create_tables" title="Permalinks">Create the Database Tables First!</a></div>';
|
| 465 |
+
echo '</div></div>'; }
|
| 466 |
+
|
| 467 |
}
|
| 468 |
|
| 469 |
|
| 470 |
+
/**
|
| 471 |
+
*
|
| 472 |
+
* CHECK VERSION
|
| 473 |
+
*
|
| 474 |
+
* This function will check the current version and do any fixes required
|
| 475 |
+
*
|
| 476 |
+
* @return string - version number.
|
| 477 |
+
* @author epstudios
|
| 478 |
+
*
|
| 479 |
+
*/
|
| 480 |
+
|
| 481 |
+
public function config($name)
|
| 482 |
+
{
|
| 483 |
+
return ( isset($this->config[ $name ]) ) ? $this->config[ $name ] : false;
|
| 484 |
+
}
|
| 485 |
+
|
| 486 |
+
/**
|
| 487 |
+
*
|
| 488 |
+
*
|
| 489 |
+
* Activation and Deactivation Handlers.
|
| 490 |
+
*
|
| 491 |
+
* @return nothing
|
| 492 |
+
* @author epstudios
|
| 493 |
+
*/
|
| 494 |
+
public function activation_error() {
|
| 495 |
+
file_put_contents($this->config('path'). '/error_activation.html', ob_get_contents());
|
| 496 |
+
}
|
| 497 |
+
|
| 498 |
+
|
| 499 |
+
public static function is_current_version()
|
| 500 |
+
{
|
| 501 |
+
return version_compare( self::current_version(), EPS_REDIRECT_VERSION, '=') ? true : false; // TODO decouple
|
| 502 |
+
}
|
| 503 |
+
public static function current_version()
|
| 504 |
+
{
|
| 505 |
+
return get_option( 'eps_redirects_version' ); // TODO decouple
|
| 506 |
+
}
|
| 507 |
+
public static function set_current_version( $version )
|
| 508 |
+
{
|
| 509 |
+
update_option( 'eps_redirects_version', $version );
|
| 510 |
+
}
|
| 511 |
+
|
| 512 |
|
| 513 |
/**
|
| 514 |
*
|
| 519 |
* @author epstudios
|
| 520 |
*
|
| 521 |
*/
|
| 522 |
+
function admin_notice_tables() {
|
| 523 |
+
$this->admin_notice('SUCCESS: Table has been created. Happy redirecting!', "success");
|
| 524 |
+
}
|
| 525 |
+
|
| 526 |
function admin_notice_bad_csv() {
|
| 527 |
$this->admin_notice("WARNING: Not a valid CSV file! No new redirects have been added.", "error");
|
| 528 |
}
|
readme.txt
CHANGED
|
@@ -10,7 +10,7 @@ Requires at least: 3.0.1
|
|
| 10 |
|
| 11 |
Tested up to: 4.2.1
|
| 12 |
|
| 13 |
-
Stable tag: 2.2.
|
| 14 |
|
| 15 |
License: GPLv2 or later
|
| 16 |
|
|
@@ -116,6 +116,9 @@ By default, any URL with a query string is considered unique, and will redirect
|
|
| 116 |
|
| 117 |
== Changelog ==
|
| 118 |
|
|
|
|
|
|
|
|
|
|
| 119 |
= 2.2.6 =
|
| 120 |
Added support for custom plugin directories.
|
| 121 |
|
|
@@ -173,6 +176,9 @@ Overhauled the entire plugin. Redirects are stored in their own table. Gracefull
|
|
| 173 |
|
| 174 |
== Upgrade Notice ==
|
| 175 |
|
|
|
|
|
|
|
|
|
|
| 176 |
= 2.2.6 =
|
| 177 |
Added support for custom plugin directories.
|
| 178 |
|
| 10 |
|
| 11 |
Tested up to: 4.2.1
|
| 12 |
|
| 13 |
+
Stable tag: 2.2.7
|
| 14 |
|
| 15 |
License: GPLv2 or later
|
| 16 |
|
| 116 |
|
| 117 |
== Changelog ==
|
| 118 |
|
| 119 |
+
= 2.2.7 =
|
| 120 |
+
That silly bug with the database tables not being created has been squashed. Improved query performance.
|
| 121 |
+
|
| 122 |
= 2.2.6 =
|
| 123 |
Added support for custom plugin directories.
|
| 124 |
|
| 176 |
|
| 177 |
== Upgrade Notice ==
|
| 178 |
|
| 179 |
+
= 2.2.7 =
|
| 180 |
+
That silly bug with the database tables not being created has been squashed. Improved query performance.
|
| 181 |
+
|
| 182 |
= 2.2.6 =
|
| 183 |
Added support for custom plugin directories.
|
| 184 |
|
templates/admin-panel-cache.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
<div class="eps-panel eps-margin-top">
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
<div class="eps-panel eps-margin-top">
|
templates/admin-panel-donate.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
|
templates/admin-tab-404s.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
<div class="wrap">
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
<div class="wrap">
|
templates/admin-tab-error.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
|
templates/admin-tab-import-export.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
<div class="wrap">
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
<div class="wrap">
|
templates/admin-tab-redirects.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
?>
|
| 12 |
|
| 13 |
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
?>
|
| 14 |
|
| 15 |
|
templates/template.redirect-entry-edit-inline.php
CHANGED
|
@@ -9,6 +9,7 @@
|
|
| 9 |
*
|
| 10 |
*/
|
| 11 |
|
|
|
|
| 12 |
|
| 13 |
?>
|
| 14 |
<tr id="eps-redirect-edit">
|
| 9 |
*
|
| 10 |
*/
|
| 11 |
|
| 12 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 13 |
|
| 14 |
?>
|
| 15 |
<tr id="eps-redirect-edit">
|
templates/template.redirect-entry-edit.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
|
|
|
|
|
|
| 11 |
|
| 12 |
$redirect = self::get_redirect( $redirect_id );
|
| 13 |
|
| 8 |
* @package EPS 301 Redirects
|
| 9 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 10 |
*/
|
| 11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 12 |
+
|
| 13 |
|
| 14 |
$redirect = self::get_redirect( $redirect_id );
|
| 15 |
|
templates/template.redirect-entry.php
CHANGED
|
@@ -7,6 +7,8 @@
|
|
| 7 |
* @package EPS 301 Redirects
|
| 8 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 9 |
*/
|
|
|
|
|
|
|
| 10 |
|
| 11 |
global $EPS_Redirects_Plugin;
|
| 12 |
$query_args = array( 'page' => $EPS_Redirects_Plugin->config('page_slug'), 'delete_redirect' => esc_attr( $redirect->id ) );
|
| 7 |
* @package EPS 301 Redirects
|
| 8 |
* @author Shawn Wernig ( shawn@eggplantstudios.ca )
|
| 9 |
*/
|
| 10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
| 11 |
+
|
| 12 |
|
| 13 |
global $EPS_Redirects_Plugin;
|
| 14 |
$query_args = array( 'page' => $EPS_Redirects_Plugin->config('page_slug'), 'delete_redirect' => esc_attr( $redirect->id ) );
|
