0

私はこのチュートリアルから直接コードを使用しています: http://voodoopress.com/how-to-post-from-your-front-end-with-no-plugin/。ローカルでセットアップすると、リダイレクトは正常に機能します。まったく同じサイトがラックスペース クラウド サイトでホストされている場合は、そうではありません。どうしたの?

特筆すべき作品:

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セットアップで動作します。しかし、ここに問題があります。ライブサーバーで動作するようにこれを順列させることはできません。私は、このコードをhome.phpに配置するだけで、何度かWPの新規インストールを開始しましたが、役に立ちませんでした。一体何が問題なのか、何か考えはありますか?

4

1 に答える 1

0

簡単に考えてみると、ページのリダイレクトの上に空白がありますか? リダイレクトは、空白やその他の要素がページに追加される前に呼び出される必要があるため、リダイレクトの前に何かをエコーし​​ている場合、リダイレクトは機能しません。

于 2012-12-21T22:41:23.150 に答える