下書き投稿の際にアクションを起こしたい
-
現在投稿公開時のみに処理を行うようにこのようにfunction.phpに記載しているのですが
//////////////////////////////////////////////////////////// // Create Number4 //////////////////////////////////////////////////////////// function number4($intno) { return str_repeat('0',4-strlen($intno)).$intno; } function plustar_published_post($post_id , $post) { if( (($_POST["original_post_status"] == 'draft' || $_POST["original_post_status"] == 'auto-draft' ) && $_POST["hidden_post_status"] == 'draft' && $_POST["originalaction"] == "editpost") || (!isset($_POST["original_post_status"]) && !isset($_POST["hidden_post_status"]) && !isset($_POST["originalaction"]) && $post->post_status == "publish")) { // 公開時の処理 $path = ("カウント用ファイルのパス"); $count_file = $path; $file = fopen($count_file,"r+"); $count = explode(',',fgets($file)); rewind($file); flock($file,LOCK_EX); if($count[0] == date('ymd')) { $count[1]=intval($count[1])+1; } else { $count[0]=date('ymd'); $count[1]="1"; } $date=$count[0].",".intval($count[1]); fputs($file,$date); flock($file,LOCK_UN); fclose($file); return date("ymd").number4(intval($count[1])); } } add_action('publish_post', 'plustar_published_post',1,2);
これを最初の下書き保存の時のみにしたいです。
具体的な動作としてはカスタムフィールドを使用して
個別記事に管理番号をつけています。
(日付+数字)そのために下書き保存をした際に数字部分のカウントが上がるようにしています。
ただ、公開時にしていたのですが下書きを行なって別記事を投稿しようとすると
管理番号が重複してしまうため、下書き時に一度だけカウントするようにしたいです。あまりWordPressに詳しくは無いのですが
どなたかご教授いただけませんでしょうか。よろしくお願いいたします。
10件の返信を表示中 - 1 - 10件目 (全10件中)
10件の返信を表示中 - 1 - 10件目 (全10件中)
- トピック「下書き投稿の際にアクションを起こしたい」には新たに返信することはできません。