2015-03-02 82 views
0

我需要一些幫助,即時嘗試使用htmlform(php和wordpress)執行wp_insert_post。我不斷收到500服務器錯誤,我不明白爲什麼,你能幫我嗎? (印刷品和回聲是用於測試一些東西)。 在wp_insert_post上獲取500(內部服務器錯誤)

<?php 
 
    print_r($_POST); 
 
    
 
    if('POST' == $_SERVER['REQUEST_METHOD']){ 
 
     print((isset ($_POST['title1']))); 
 
     // Do some minor form validation to make sure there is content 
 
     if (isset ($_POST['title1'])) { 
 
      $title = $_POST['title1']; 
 
     } else { 
 
      echo 'fyll i'; 
 
     } 
 
     if (isset ($_POST['description'])) { 
 
      $description = $_POST['description']; 
 
     } else { 
 
      echo 'fyll i'; 
 
     } 
 
     if (isset ($_POST['message'])) { 
 
      $message = $_POST['message']; 
 
     } else { 
 
      echo 'fyll i'; 
 
     } 
 
     $tags = $_POST['post_tags']; 
 
     echo('ny entry'); 
 
    
 
     print_r($new_post); 
 
    
 
     $new_post = array(
 
      'post_title' => $title, 
 
      'post_content' => $message, 
 
      'post_name' => $description, 
 
      'post_status' => 'publish', 
 
      'post_type' => 'omdmen' 
 
      
 
     ); 
 
    
 
     print_r($new_post); 
 
     $new_post = wp_insert_post($new_post); 
 
    
 
    }  
 
    
 
    echo('finished'); 
 

 
?>
<!DOCTYPE html> 
 
<html lang="en"> 
 
    <head> 
 
     <meta charset="utf-8" /> 
 
     <title></title> 
 
    </head> 
 
    <body> 
 
     <div id="postbox"> 
 
    <form id="new_post" name="new_post" method="post" action="votepost.php"> 
 
     <p><label for="title">Ide</label><br /> 
 
      <input type="text" id="title" value="" tabindex="1" size="20" name="title1" /> 
 
     </p> 
 
     <p><label for="description">Hantverk</label><br /> 
 
      <input type="text" id="description" value="" tabindex="1" size="20" name="description" /> 
 
     </p> 
 
     <p><label for="message">Budskap</label><br /> 
 
      <input type="text" id="message" value="" tabindex="1" size="20" name="message" /> 
 
     </p> 
 
     <input type="submit" value="OK" tabindex="6" id="submit" name="submit" /> 
 
    </form> 
 
</div> 
 
    </body> 
 
</html>

$標題, 'POST_CONTENT'=> $消息, 'POST_NAME'=> $描述, 'post_status'=> '發佈', 'post_type'=> 'omdmen' ); print_r($ new_post); $ new_post = wp_insert_post($ new_post); } echo('finished'); ?>
+1

當在wordpress環境之外使用wordpress代碼時,您需要首先加載wordpress引擎。你必須做'require_once('path/to/wp/root/wp-load.php');' – 2015-03-02 12:18:18

回答

0

是否在代碼中的其他位置啓動了$ title,$ description?當代碼到達'$ new_post = array'行時,可能變量不存在。

,如果你設置你的代碼是這樣的頂級變量會發生什麼:

$title = 'This is my title'; 
$message = 'This is my message'; 
$description = 'This is my description'; 

是否得救?