wp_redirect函数在本地工作,但不在服务器上工作

时间:2012-12-21 22:36:22

标签: wordpress

我正在使用本教程中的代码:http://voodoopress.com/how-to-post-from-your-front-end-with-no-plugin/。在本地设置时,重定向工作正常。当完全相同的站点托管在rackspace云站点上时,它不会。发生了什么事?

值得注意的一块:

if( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) &&  $_POST['action'] == "new_post") {

// Do some minor form validation to make sure there is content
if (isset ($_POST['title'])) {
    $title =  $_POST['title'];
} else {
    echo 'Please enter the wine name';
}
if (isset ($_POST['description'])) {
    $description = $_POST['description'];
} else {
    echo 'Please enter some notes';
}

$tags = $_POST['post_tags'];

// ADD THE FORM INPUT TO $new_post ARRAY
$new_post = array(
'post_title'    =>  $title,
'post_content'  =>  $description,
'post_category' =>  array($_POST['cat']),  // Usable for custom taxonomies too
'tags_input'    =>  array($tags),
'post_status'   =>  'publish',           // Choose: publish, preview, future, draft, etc.
'post_type' =>  'post'  //'post',page' or use a custom post type if you want to
);

//SAVE THE POST
$pid = wp_insert_post($new_post);

         //SET OUR TAGS UP PROPERLY
wp_set_post_tags($pid, $_POST['post_tags']);

//REDIRECT TO THE NEW POST ON SAVE
$link = get_permalink( $pid );
wp_redirect( $link );

} // END THE IF STATEMENT THAT STARTED THE WHOLE FORM

//POST THE POST YO
do_action('wp_insert_post', 'wp_insert_post');`

这很简单。该代码使用wp_insert_post发布帖子,然后重定向到该帖子的链接。一切都很好,它适用于我的XAMPP设置。但问题出在这里:我无法在现场服务器上进行任何排列。我已经开始多次使用新的WP安装,只将这段代码放在home.php中,但无济于事。有什么问题可能是什么问题?

1 个答案:

答案 0 :(得分:0)

只是快速思考,您的任何网页上的重定向上方是否有空格?必须在将任何空白区域或其他元素添加到页面之前调用重定向,因此如果您在重定向之前回显某些内容,则无法正常工作。