bbPressはWordPressで掲示板を運用するための定番プラグインである。
RA – New Post Auto Set Status “Private”はWordPressで記事新規作成時にいきなり公開されず、とりあえず非公開にするためのプラグインである。
WordPressの記事作成時、いきなり公開ではなく、とりあえず非公開で保存できるようにする方法 : RA – New Post Auto Set Status “Private”
WordPressで新規に投稿や固定ページを作成し「公開」ボタンをクリックすると、公開状態は「公開」になる。つまりいきなり全世界に記事が公開されてしまう。途中まで書いてとりあえず保存ということができない。これはパソコンでの通常の文書作成...
両者を併存させた場合、bbPressの掲示板で返信をした場合、この返信が「非公開」になってしまい掲示板が正しく動作しなくなる。
この問題を回避するためには、RA – New Post Auto Set Status “Private”のソースコードに以下の修正を加えればよい。
function ra_post_status_auto_private() { // フォーラムでは何もしない if(get_post_type() == 'forum' OR get_post_type() == 'topic' OR get_post_type() == 'reply') { return; }else{ global $post, $wpdb; $wpdb->update($wpdb->posts, array('post_status' => 'private'), array('ID' => $post->ID)); clean_post_cache($post->ID); } } add_action('new_to_publish', 'ra_post_status_auto_private'); add_action('draft_to_publish', 'ra_post_status_auto_private'); add_action('auto-draft_to_publish', 'ra_post_status_auto_private');
直接、プラグインのファイルを修正してもよいが、RA – New Post Auto Set Status “Private”を使用せずに上記のソースを「functions.php」などにそのままコピペしてもOK。その場合、掲示板は通常通り動作し、投稿や固定ページでは新規作成時の公開ステータスが非公開となる。
コメント