wordpress公式ロゴ

マルチサイトでDuplicate Post の複製が出てこないとき

状況

wordpressサイトを作るときは、ローカル環境に同じものを用意しています。
・ローカル環境 > 開発や実験的な試み
・本番環境 > 完成したプログラムの適用
といった流れです。

で、ローカル環境で「投稿」に関連する新しい機能を作っていまして、ダミーデータが必要になったんです。
内容は適当でいいので、「とりあえず20件ほどの投稿データが欲しい」

そんなとき便利なプラグインがありますね。
Duplicate Post」ですね。

コピー元になる投稿を作りまして、「記事の複製」をしようとしたのですが下図のようにあるべきところに無いのです。

原因と思われるもの

今回のwordpressサイトでは、「マルチサイト」という機能を使ってました。
1つのwordpressでいくつものサイトを作れる機能です。

マルチサイトはあまり使いたくなくって、その理由はプラグインが対応しているか微妙なところです。
ある程度まで完成のメドがついてきたところで、肝心な部分がプラグインの問題でダメだと気が付いたら大変です。
そんなタイミングで発覚してしまうと作り直すわけにもいかないですし。。
最悪、プラグインを外して、プラグインと同等の機能を自分で作っても良いんですが、だからといって追加請求できるわけじゃないですしね。
なので、「マルチサイトで!」ってときは最初の段階で念入りに調査します。

で、調査してて本記事の「Duplicate Post」の問題に気が付きました。

今回のサイトはちょっと特殊でして、最初は通常のwordpressサイトとして作っていました。
この時点で「Duplicate Post」はインストールしていました。
で、この完成しているwordpressサイトに対して、マルチサイト化を行いました。
もしかしたら、最初からマルチサイトにしてやってたら大丈夫なのかもしれません。

調査してみると

原因はあっさり見つかりました。

管理画面 > 設定 > Duplicate Post を見てみると下図のようにチェックが入ってません。

チェックが入っていないんだから、「記事の複製」はできないですね。

解決方法

いろいろ調べていると、主サイトでは適切にチェックが入っており、サブサイト(今回は4つ)では4つとも上図のようにチェックがはいっていない状態でした。

まずは、サブサイト1つだけ試してみます。

下図のようにブラウザを2つ横に並べて、左は主サイトの設定画面、右はサブサイトの設定画面になるようにします。

この状態で、主サイト(左)の設定と同じになるように、サブサイト(右)の設定を変えていきます。
「複製元」「権限」「表示」の3つのタブの設定ができたら「変更を保存」ボタンを押します。

確認

「投稿」>「一覧」から適当な記事の詳細画面に入って確認してみます。

下図のように「新規下書きとして複製」が出てきました。

試しに「新規下書きとして複製」を押してみると、きちんと複製できています。

これで解決なので、残りのサブサイト(残り3つ)にも同じように設定していき完了です。