cleanup + fail in php < 5.3 + log tune
This commit is contained in:
parent
de30748078
commit
9b980e55a3
3 changed files with 35 additions and 9 deletions
|
@ -2,14 +2,14 @@
|
||||||
"name": "petermolnar/wp-shortslug",
|
"name": "petermolnar/wp-shortslug",
|
||||||
"description": "WordPress plugin to auto-generate base36 short slugs for each post",
|
"description": "WordPress plugin to auto-generate base36 short slugs for each post",
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.3.0"
|
"php": ">=5.3.0"
|
||||||
},
|
},
|
||||||
"license": "GPLv3",
|
"license": "GPLv3",
|
||||||
"authors": [
|
"authors": [
|
||||||
{
|
{
|
||||||
"name": "Peter Molnar",
|
"name": "Peter Molnar",
|
||||||
"email": "hello@petermolnar.eu",
|
"email": "hello@petermolnar.eu",
|
||||||
"homepage": "https://petermolnar.eu"
|
"homepage": "https://petermolnar.eu"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
=== wp-shortslug ===
|
=== wp-shortslug ===
|
||||||
Contributors: cadeyrn
|
Contributors: cadeyrn
|
||||||
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=AS8Y2GSMDTJZC
|
Donate link: https://paypal.me/petermolnar/3
|
||||||
Tags: shortlink, shorturl, slug
|
Tags: shortlink, shorturl, slug
|
||||||
Requires at least: 3.0
|
Requires at least: 3.0
|
||||||
Tested up to: 4.4
|
Tested up to: 4.4
|
||||||
|
|
|
@ -33,6 +33,8 @@ class WP_SHORTSLUG {
|
||||||
const base_camel = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
const base_camel = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
||||||
|
|
||||||
public function __construct () {
|
public function __construct () {
|
||||||
|
register_activation_hook( __FILE__ , array( &$this, 'plugin_activate' ) );
|
||||||
|
|
||||||
// init all the things!
|
// init all the things!
|
||||||
add_action( 'init', array( &$this, 'init'));
|
add_action( 'init', array( &$this, 'init'));
|
||||||
|
|
||||||
|
@ -57,6 +59,15 @@ class WP_SHORTSLUG {
|
||||||
add_filter( 'get_shortlink', array(&$this, 'shorturl'), 1, 4 );
|
add_filter( 'get_shortlink', array(&$this, 'shorturl'), 1, 4 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* activate hook
|
||||||
|
*/
|
||||||
|
public static function plugin_activate() {
|
||||||
|
if ( version_compare( phpversion(), 5.3, '<' ) ) {
|
||||||
|
die( 'The minimum PHP version required for this plugin is 5.3' );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* try to redirect by old slug in case the current result is 404
|
* try to redirect by old slug in case the current result is 404
|
||||||
*
|
*
|
||||||
|
@ -196,6 +207,7 @@ class WP_SHORTSLUG {
|
||||||
'post_name' => $url36,
|
'post_name' => $url36,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$wp_error = false;
|
||||||
wp_update_post( $_post, $wp_error );
|
wp_update_post( $_post, $wp_error );
|
||||||
|
|
||||||
if (is_wp_error($wp_error)) {
|
if (is_wp_error($wp_error)) {
|
||||||
|
@ -203,7 +215,6 @@ class WP_SHORTSLUG {
|
||||||
static::debug( $errors );
|
static::debug( $errors );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$meta = get_post_meta( $post->ID, '_wp_old_slug', false);
|
$meta = get_post_meta( $post->ID, '_wp_old_slug', false);
|
||||||
if (in_array($url36,$meta)) {
|
if (in_array($url36,$meta)) {
|
||||||
static::debug('removing slug ' . $url36 . ' from ' . $post->ID );
|
static::debug('removing slug ' . $url36 . ' from ' . $post->ID );
|
||||||
|
@ -282,14 +293,29 @@ class WP_SHORTSLUG {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* debug log messages, if needed
|
*
|
||||||
|
* debug messages; will only work if WP_DEBUG is on
|
||||||
|
* or if the level is LOG_ERR, but that will kill the process
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param int $level
|
||||||
*/
|
*/
|
||||||
public static function debug( $message) {
|
public static function debug( $message, $level = LOG_NOTICE ) {
|
||||||
if (is_object($message) || is_array($message))
|
if ( @is_array( $message ) || @is_object ( $message ) )
|
||||||
$message = json_encode($message);
|
$message = json_encode($message);
|
||||||
|
|
||||||
if ( defined('WP_DEBUG') && WP_DEBUG == true )
|
|
||||||
error_log ( __CLASS__ . ' => ' . $message);
|
switch ( $level ) {
|
||||||
|
case LOG_ERR :
|
||||||
|
wp_die( '<h1>Error:</h1>' . '<p>' . $message . '</p>' );
|
||||||
|
exit;
|
||||||
|
default:
|
||||||
|
if ( !defined( 'WP_DEBUG' ) || WP_DEBUG != true )
|
||||||
|
return;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
error_log( __CLASS__ . ": " . $message );
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue