我正在嘗試使用wp_update_post()更新帖子標題
首先我得到帖子的ID:
global $post;
$post_to_edit = get_post($_GET['post_id']);
然后是要更新的表單,它實際上從帖子中獲取標題以進行編輯:
<form action="" id="primaryPostForm" method="POST">
<label for="postTitle">Title of your post</label>
<input type="text" name="postTitle" id="postTitle" class="form-control" value="<?php echo esc_html( $post_to_edit->post_title ); ?> ">
<input type="hidden" name="postId" id="postId" value="<?php echo $_GET['post_id']; ?>">
<input type="submit" name="submit_post" value="Update">
</form>
然后在同一頁面下面我有:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['submit_post'])) {
$data = array(
'ID' => $_POST['postId'],
'post_title' => $_POST('postTitle')
);
wp_update_post( $data );
}
}
?>
但它不會更新帖子標題。
uj5u.com熱心網友回復:
你的代碼錯了,
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['submit_post'])) {
$data = array(
'ID' => $_POST['postId'],
'post_title' => $_POST['postTitle'] //you used wrong brackets
);
wp_update_post( $data );
}
}
?>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/525093.html
標籤:phpWordPress
