コメントの許可とカテゴリー追加を実現したいです。
ディスカッションより設定は確認済みで記事のコメントは許可するようになっています。
分かる方よろしくお願いいたします。
php
1<?php 2/*画像をアップロードして、アイキャッチを登録する処理*/ 3function insert_attachment($file_handler, $post_id, $setthumb = 'false') 4{ 5 if ($_FILES[$file_handler]['error'] !== UPLOAD_ERR_OK) __return_false(); 6 require_once(ABSPATH . "wp-admin" . '/includes/image.php'); 7 require_once(ABSPATH . "wp-admin" . '/includes/file.php'); 8 require_once(ABSPATH . "wp-admin" . '/includes/media.php'); 9 $attach_id = media_handle_upload($file_handler, $post_id); 10 if ($setthumb) 11 update_post_meta($post_id, '_thumbnail_id', $attach_id); 12 return $attach_id; 13} 14/*画像をアップロードして、アイキャッチを登録する処理ここまで*/ 15 16/*タグの入力があれば、HTMLの排除をしつつ登録*/ 17if (isset($_POST['field_3'])) { 18 foreach ($_POST['field_3'] as $tags) { 19 if ($tags != "") { 20 $tag .= strip_tags($tags) . ','; //入力されたタグをカンマ区切りでつなげる 21 } 22 } 23 $tag = mb_substr($tag, 0, -1);//最後に余分なカンマを削除 24/*タグに関する処理、ここまで*/ 25 26 $post = array( 27 //'ID' => [ <投稿 ID> ] // 既存の投稿を更新する場合。 28 'comment_status' => 'closed', // 'closed' はコメントを閉じます。 29 'ping_status' => 'closed', // 'closed' はピンバック/トラックバックをオフにします。 30 'post_author' => $bp->loggedin_user->id, // 作成者のユーザー ID。ログインしているID 31 'post_category' => array(2), // カテゴリーを追加。配列で複数OK 32 'post_content' => $_POST['field_4'], // 投稿の全文。 33 'post_date' => date('Y-m-d H:i:s'), 34 'post_date_gmt' => date('Y-m-d H:i:s'), // 投稿の作成日時(GMT)。 35 'post_status' => 'publish', // 公開ステータス。 36 'post_title' => strip_tags($_POST['field_1']), // 投稿のタイトル。 37 'post_type' => 'post', // 投稿タイプ名。 38 'tags_input' => $tag// 投稿タグ。 39 ); 40 41 $insert_id = wp_insert_post($post);//$insert_idには投稿のID(「wp_posts」テーブルの「ID」)が入る。 投稿に失敗した場合は0が返る。 42 if ($insert_id) { 43 update_post_meta($insert_id, 'url', strip_tags($_POST['field_2'])); // キーが「key1」のカスタムフィールドの値に「カスタム1」を投稿 44 45/*画像アップロードに関すること*/ 46 global $post; 47 if ($_FILES) { 48 $files = $_FILES['upload_attachment']; 49 foreach ($files['name'] as $key => $value) { 50 if ($files['name'][$key]) { 51 $file = array( 52 'name' => $files['name'][$key], 53 'type' => $files['type'][$key], 54 'tmp_name' => $files['tmp_name'][$key], 55 'error' => $files['error'][$key], 56 'size' => $files['size'][$key] 57 ); 58 59 $_FILES = array("upload_attachment" => $file); 60 61 foreach ($_FILES as $file => $array) { 62 $newupload = insert_attachment($file, $insert_id); 63 } 64 } 65 } 66 } 67 68/* 投稿に成功した時の処理等を記述 */ 69 } else { 70 /* 投稿に失敗した時の処理等を記述 */ 71 } 72 73 74} 75?>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/06 22:19