Version Description
- Fixed wrongfull redirect when the first blog post on home page (main blog page) has a redirect set up - this was redirecting the entire page incorrectly. This was only an issue with the first post on a page. (9/1/2009)
Download this release
Release Info
Developer | prophecy2040 |
Plugin | Quick Page/Post Redirect Plugin |
Version | 1.6 |
Comparing to | |
See all releases |
Code changes from version 1.5 to 1.6
- page_post_redirect_plugin.php +45 -41
- readme.txt +3 -1
page_post_redirect_plugin.php
CHANGED
@@ -2,12 +2,14 @@
|
|
2 |
/*
|
3 |
Plugin Name: Quick Page/Post Redirect
|
4 |
Plugin URI: http://fischercreativemedia.com/wordpress-plugins/quick-pagepost-redirct-plugin/
|
5 |
-
Description: Redirect Pages or Posts to another location quickly. Adds a redirect box to the page or post edit page where you can specify the redirect Location and type. Location can be to another WordPress page/post or an external URL. UPDATE: Page or post NO LONGER needs to be published for this to work correctly.
|
6 |
Author: Don Fischer
|
7 |
Author URI: http://www.fischercreativemedia.com/
|
8 |
-
Version: 1.
|
9 |
|
10 |
Version info:
|
|
|
|
|
11 |
1.5 - Re-Write plugin core function to hook WP at a later time to take advantage of the POST function - no sense re-creating the wheel.
|
12 |
Can have page/post as draft and still redirect - but ONLY after the post/page has first been published and
|
13 |
then re-saved as draft (this will hopefully be a fix for a later version). (8/31/2009)
|
@@ -54,50 +56,52 @@ Version info:
|
|
54 |
|
55 |
function ppr_do_redirect(){
|
56 |
global $post,$wp_query,$ppr_url,$ppr_active,$ppr_url,$ppr_type;
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
if($
|
64 |
-
|
65 |
-
if($ppr_type
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
$
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
}elseif(strpos($ppr_url, 'www')=== 0){ // check if they have full url but did not put http://
|
77 |
-
$offsite='http://'.$ppr_url;
|
78 |
-
header("Status: $ppr_type");
|
79 |
-
header("Location: $offsite", true, $ppr_type);
|
80 |
-
exit; //stop loading page
|
81 |
-
}elseif(is_numeric($ppr_url)){ // page/post number
|
82 |
-
if($ppr_postpage=='page'){ //page
|
83 |
-
$onsite=get_bloginfo('url').'/?page_id='.$ppr_url;
|
84 |
-
header("Status: $ppr_type");
|
85 |
-
header("Location: $onsite", true, $ppr_type);
|
86 |
exit; //stop loading page
|
87 |
-
}
|
88 |
-
$
|
89 |
header("Status: $ppr_type");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
header("Location: $onsite", true, $ppr_type);
|
91 |
exit; //stop loading page
|
92 |
}
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
header("Location: $onsite", true, $ppr_type);
|
97 |
-
exit; //stop loading page
|
98 |
-
}
|
99 |
-
|
100 |
-
endif;
|
101 |
endif;
|
102 |
}
|
103 |
|
2 |
/*
|
3 |
Plugin Name: Quick Page/Post Redirect
|
4 |
Plugin URI: http://fischercreativemedia.com/wordpress-plugins/quick-pagepost-redirct-plugin/
|
5 |
+
Description: Redirect Pages or Posts to another location quickly. Adds a redirect box to the page or post edit page where you can specify the redirect Location and type. Location can be to another WordPress page/post or an external URL. UPDATE: Page or post NO LONGER needs to be published for this to work correctly - however you do need to publish it and then save it as a draft so WordPress creates the proper meta for it.
|
6 |
Author: Don Fischer
|
7 |
Author URI: http://www.fischercreativemedia.com/
|
8 |
+
Version: 1.6
|
9 |
|
10 |
Version info:
|
11 |
+
1.6 - Fix wrongfull redirect when the first blog post on home page (main blog page) has a redirect set up - this was redirecting the
|
12 |
+
entire page incorrectly. (9/1/2009)
|
13 |
1.5 - Re-Write plugin core function to hook WP at a later time to take advantage of the POST function - no sense re-creating the wheel.
|
14 |
Can have page/post as draft and still redirect - but ONLY after the post/page has first been published and
|
15 |
then re-saved as draft (this will hopefully be a fix for a later version). (8/31/2009)
|
56 |
|
57 |
function ppr_do_redirect(){
|
58 |
global $post,$wp_query,$ppr_url,$ppr_active,$ppr_url,$ppr_type;
|
59 |
+
if(!$wp_query->is_home):
|
60 |
+
$thisidis_current= $post->ID;
|
61 |
+
$ppr_active=get_post_meta($thisidis_current,'pprredirect_active',true);
|
62 |
+
$ppr_url=get_post_meta($thisidis_current,'pprredirect_url',true);
|
63 |
+
$ppr_type=get_post_meta($thisidis_current,'pprredirect_type',true);
|
64 |
+
|
65 |
+
if( $ppr_active==1 && $ppr_url!='' ):
|
66 |
+
if($ppr_type===0){$ppr_type='200';}
|
67 |
+
if($ppr_type===''){$ppr_type='302';}
|
68 |
+
if($ppr_type=='meta'):
|
69 |
+
//metaredirect
|
70 |
+
add_action('wp_head', "addmetatohead_theme",1);
|
71 |
+
exit; //stop loading page so meta can do it's job without rest of page loading.
|
72 |
+
elseif($ppr_url!=''):
|
73 |
+
//check for http:// - as full url - then we can just redirect if it is //
|
74 |
+
if( strpos($ppr_url, 'http://')=== 0 || strpos($ppr_url, 'https://')=== 0){
|
75 |
+
$offsite=$ppr_url;
|
76 |
+
header('Status: '.$ppr_type);
|
77 |
+
header('Location: '.$offsite, true, $ppr_type);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
exit; //stop loading page
|
79 |
+
}elseif(strpos($ppr_url, 'www')=== 0){ // check if they have full url but did not put http://
|
80 |
+
$offsite='http://'.$ppr_url;
|
81 |
header("Status: $ppr_type");
|
82 |
+
header("Location: $offsite", true, $ppr_type);
|
83 |
+
exit; //stop loading page
|
84 |
+
}elseif(is_numeric($ppr_url)){ // page/post number
|
85 |
+
if($ppr_postpage=='page'){ //page
|
86 |
+
$onsite=get_bloginfo('url').'/?page_id='.$ppr_url;
|
87 |
+
header("Status: $ppr_type");
|
88 |
+
header("Location: $onsite", true, $ppr_type);
|
89 |
+
exit; //stop loading page
|
90 |
+
}else{ //post
|
91 |
+
$onsite=get_bloginfo('url').'/?p='.$ppr_url;
|
92 |
+
header("Status: $ppr_type");
|
93 |
+
header("Location: $onsite", true, $ppr_type);
|
94 |
+
exit; //stop loading page
|
95 |
+
}
|
96 |
+
//check permalink or local page redirect
|
97 |
+
}else{ // we assume they are using the permalink / page name??
|
98 |
+
$onsite=get_bloginfo('url'). $ppr_url;
|
99 |
header("Location: $onsite", true, $ppr_type);
|
100 |
exit; //stop loading page
|
101 |
}
|
102 |
+
|
103 |
+
endif;
|
104 |
+
endif;
|
|
|
|
|
|
|
|
|
|
|
105 |
endif;
|
106 |
}
|
107 |
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://fischercreativemedia.com/
|
|
4 |
Tags: redirect, 301, 302, meta, post, plugin, page, forward, re-direct
|
5 |
Requires at least: 2.5
|
6 |
Tested up to: 2.8.4
|
7 |
-
Stable tag: 1.
|
8 |
|
9 |
Redirect Pages/Posts to another page/post or external URL. Adds edit box to admin edit so user can specify the redirect Location and type.
|
10 |
|
@@ -67,6 +67,8 @@ Yes, you can, but you do not always need to. If you are redirecting to an extern
|
|
67 |
|
68 |
|
69 |
== Changelog ==
|
|
|
|
|
70 |
= 1.5 =
|
71 |
* Major re-Write of the plugin core function to hook WP at a later time to take advantage of the POST function - no sense re-creating the wheel.
|
72 |
* Removed the 'no code' redirect, as it turns out, many browsers will not redirect properly without a code - sorry guys.
|
4 |
Tags: redirect, 301, 302, meta, post, plugin, page, forward, re-direct
|
5 |
Requires at least: 2.5
|
6 |
Tested up to: 2.8.4
|
7 |
+
Stable tag: 1.6
|
8 |
|
9 |
Redirect Pages/Posts to another page/post or external URL. Adds edit box to admin edit so user can specify the redirect Location and type.
|
10 |
|
67 |
|
68 |
|
69 |
== Changelog ==
|
70 |
+
= 1.6 =
|
71 |
+
* Fixed wrongfull redirect when the first blog post on home page (main blog page) has a redirect set up - this was redirecting the entire page incorrectly. This was only an issue with the first post on a page. (9/1/2009)
|
72 |
= 1.5 =
|
73 |
* Major re-Write of the plugin core function to hook WP at a later time to take advantage of the POST function - no sense re-creating the wheel.
|
74 |
* Removed the 'no code' redirect, as it turns out, many browsers will not redirect properly without a code - sorry guys.
|