WordPressのカスタマイズ方法やプラグインレビューを中心に、パソコン/動物/植物のことなどを紹介するホームページです
Publish Press Revisions, a plugin that can save published contents and updates to fixed pages

公開済みの投稿や固定ページの更新内容を途中保存できるプラグイン「PublishPress Revisions」

公開日: バックエンド(管理)

久々にタイトル付けに悩んだプラグインの紹介です(笑)。が読み進めていただければどんな機能を持つプラグインなのかはご理解いただけるかと・・・。

日記系ではないサイトをWordpressで作っているときに必ず発生するのが「時流や知識の深耕度合いなどに合わせて公開済みの投稿を編集する」作業。読み返すと「なんでこんなこと書いてんの?」と笑ってしまったり、思わず赤面してしまうなんてこともありますよね?

そこでちょこっと直そうかなぁ・・から始まって結構大掛かりな修正になってしまう、そんなこともあると思います。そんな最中に別の用事が入ったり、時間切れになったりしたときどうしてますか?大抵の場合

  • 既に公開してしまっている投稿で編集は中断できないから、無理やり体裁整えて更新する
  • 既に公開してしまっている投稿で編集は中断できないから、あきらめて破棄する
  • 既に公開してしまっている投稿で編集は中断できないから、メモ帳などに編集内容を一旦書き出して、今は更新しない

のいずれかにしますよね?当たり前ですけど公開済みの投稿は「更新」ボタンをクリックした段階でそれが表に出てしまうのですから・・。3つ目は旧エディタだったらできるでしょうけど、Gutenberg(ブロック)エディタだったらちょっと難しいですよね?

まあそんなことしなくてもWordpress標準のリビジョン機能を使って自動保存されたリビジョンを復元して編集という方法が備わってはいますが、後々編集する予定がない投稿が多いのに勝手に作られるリビジョンはゴミになるだけ・・と機能を停止している私のような方もいるでしょう。そうなるとやっぱり上の3つのうちのいずれかになるんですよね(知るか!!って話かもしれません・・)。

私も長いことWordpressでサイト作りをしてきて、これが一番悩みの種でした。リビジョンがない以上やっぱり気合と根性で一気に編集しないといけないのかと半ばあきらめてました。それで更新すべき投稿があるのにズルズルとそのまま・・なんてことになってました。

でも何となくいいものないかなぁとプラグイン探ししてたら、今回紹介する【PublishPress Revisions】をたまたま見つけて、「そうそう!これがしたかったのよ!」とワクワクしました(多分私のプラグイン紹介記事は私の感動具合によって紹介文の長さが大幅に変わるようですから、このプラグインに対していかに好印象を持ったかは想像いただけるでしょう)。

このプラグインを使ってできることは以下の通りです。

【PublishPress Revisions】プラグインの用途や機能

このプラグインの動作をざっくりと紹介すると

  1. 公開済みの投稿を編集している途中で中断の措置をすると別の投稿一覧にコピーが作られる
  2. そのコピーを編集して、更新用の投稿を完成させる
  3. 2を適用(更新を確定)すると、元の投稿に上書きされ、更新される

という流れになります。

秀逸なのは「別の投稿一覧に更新候補の投稿が一覧表示される」点。リビジョンを呼び出して編集しなおすときのように「どの投稿を編集してたんだっけ?」となることがないのです。日々いろいろある中で、たくさんの投稿の中から編集途中のものを見つけるのは大変ですから、まずはこの仕組みがとてもありがたいです。

また、今公開されている投稿(更新前の投稿)と更新候補(新しく入れ替える)の投稿の比較もできるようになっていますから、どこをどう変えたのかが画面上で簡単に確認できる点も便利です。

さらに複数の方で管理するサイトでこのプラグインを使って更新していく際には、投稿の作者・管理者・投稿を更新しようとしている人宛に通知メールを送信する機能や、権限によって更新を適用(元の投稿に上書き)できるか否かを設定することもできるようです。

1点だけ、サイトに新旧エディタ両方で作成した投稿があり、「Classic Editor」プラグインを使って旧エディタのまま編集(更新)し続けている投稿に対して、このプラグイン経由で更新を行う場合には少し振る舞いが微妙なので注意が必要です(対処については後述します)。

この紹介記事を最後に編集したときの環境・バージョンなど

プラグインは製作者によって日々更新されていくため、この紹介記事が最新バージョンのものであるとは限りません。参考までにこの記事の最終更新日時点におけるテスト環境、プラグインバージョン、プラグイン導入時の留意点などを記載しておきます。

プラグインを使用(試用)したテスト環境

  • テストサーバー:カラフルボックス公開済みの投稿や固定ページの更新内容を途中保存できるプラグイン「PublishPress Revisions」の画像|Knowledge Base
  • WordPressのバージョン:5.4.1
  • PHPのバージョン:7.3.11
  • テーマ:ha-Basic(オリジナルテーマ)
  • プラグインのバージョン:記事更新時のバージョン  2.2.4/最新バージョン 2.4.5

本記事を参考にWordpressサイトへプラグインの導入を検討される方へ

Wordpressは古くから無料で配布されているサイト作成ツール(CMS)で、随時改良が加えられており、さまざまなバージョンが存在します。さらにWordpressを動かすためのプログラムであるPHP、サイトのデータを保存しておくためのデータベースについても様々なバージョンがあります。そしてWordpress本体同様にプラグインについてもさまざまなバージョンが存在します。本記事を参考にプラグインの導入をお考えの方は、以下に留意の上でインストールするようにしてください。
  • テスト環境での動作に基づいた紹介記事ですので、すべての環境で正常に動作するかどうかは不明です
  • ※本記事の内容についてはページ内に記載しているプラグインバージョンのものになります。現在のバージョンと異なる場合、機能などが異なる場合があります。※また、ページによってはテスト環境、テストしたプラグインバージョン等の表示が本文内にない場合、ページタイトル下にある最終更新日当時の情報となりますので、現在のバージョンでは全く違う機能となっているかも知れません。
  • プラグインに無料版と有料版(Pro版)がある場合、特に記載がなければ無料版の情報のみを紹介しています
  • このページでプラグインを使用する際に必要なショートコードやコードなどは、コピーして使用することができますが、環境によっては記号などが文字化けすることがあります。コピーしたのに動作しない場合は特に「”」「’」などの記号を入力し直してみてください。
  • プラグイン本体の動作不具合や質問などは公式サイトのフォーラムなどで行ってください(ここでは質問にお答えすることはできません)

【PublishPress Revisions】プラグインの設定画面や表示の日本語化と翻訳

当サイトで私が翻訳した【PublishPress Revisions】プラグインの日本語化ファイルを配布しています。翻訳ファイルについての詳しい説明は

をご覧ください。

※翻訳することで設定が容易になり、重要な項目の設定漏れも少なくなりますから日本語化をお勧めします。

【PublishPress Revisions】プラグインのインストールと設定

インストール方法

インストールはプラグインの新規追加でプラグイン名で検索してインストールするか、ページ先頭の画像をクリックして表示されるWordpressのプラグイン公式配布ページがダウンロードしてからアップロードインストールします。

インストール方法の詳しい解説は

を参照ください

基本的な設定方法や使い方

このプラグインを使って投稿(固定ページ)を更新する流れを公式ページの画像を交えて紹介します。

※Gutenberg(ブロックエディタ)での例です

まずは更新しようと思う投稿の編集画面を開きます

すると画面上部にいつもの「プレビュー」「更新」の横に「一時保存」のチェックボックスが追加されますのでチェックを入れると「更新」ボタンが別の名前に変わります

すると、その投稿が別の場所へコピー(リビジョン)として保存されます。もちろん今公開されている投稿はそのままの状態で公開され続けます。

画面が遷移し、上のようになりますので、「Keep editing the revision」をクリックすると、そのままリビジョン(更新する候補)の編集ができます。

※一旦そこで終了する場合は画面を閉じればOKです

※私がテストした限りではこの画面にならない場合もあるようです

再度リビジョン(更新候補)の編集をする場合は、管理画面のメニューに「リビジョン」というのが追加されているのでクリックすると、リビジョンの一覧が表示され、その中に先ほど保存したリビジョンが表示されますから、これを編集して、更新する投稿を完成させます(何度でも中断保存できます)

更新する内容が終わったら画面右上のボタンをクリックして、次の画面で確定すれば、現在公開中の投稿へ編集した投稿が上書きされ、更新済の投稿として入れ替えされます。つまり確定するまでは編集を始める前の投稿内容のままのものを訪問者が見られるということです。

更新が確定したリビジョンはメニューの「リビジョン」から開く一覧から削除されますので、今どの投稿が更新中なのかが一目瞭然になります(更新途中でどの投稿の編集してたんだっけ?というのが無くなります)。もちろん更新させない場合は一覧から削除することもできます。

・・・これが一連の流れです。機能としては予約して更新(新旧投稿を入れ替える)したり、公開日をそのままにしたりすることもできますので、どんな振る舞いをするのかは実際にインストールしてみるといいでしょう。

「Classic Editor」との併用時(新旧エディタ両方の投稿があるサイト)は注意が必要

WordPress5.0からサイト作りをスタートして、すべての投稿や固定ページがGutenberg(ブロック)エディタで作られているサイトでは公開済みの投稿、更新候補としたリビジョンともGutenbergエディタなので問題はありません。

この紹介記事を書くために使用しているテストサイトには旧エディタで作成されたテスト投稿と、Gutenbergで作成したテスト投稿が存在するので、「Classic Editor」プラグインを使ってどちらでも編集できる状態にしています(Wordpress5.0以前から使われていた方はこの状態、または「Classic Editor」などを使って旧エディタに戻している方がほとんどかと思います)。

そこで問題となったのが、「Classic Editor」プラグインを使いつつ、Gutenbergで作って公開している投稿の更新候補(リビジョン)をこのプラグインで作成して編集しようとしたときに、「Classic Editor」の設定でユーザーによるエディタの切り替えが有効になっていると、リビジョンの編集画面が旧エディタで開いてしまうこと。

複雑に組んだブロックがどうなるのかまでは確認していませんが、旧エディタでプログラムコードの紹介などを含んでいる場合、ブロックエディタで編集画面を開くとコードやタグが自動修正されて動作してしまう(コードの紹介にならなくなる)ので、そうしたサイトではちょっと不都合があるかもしれません。

これについては「Classic Editor」が有効化されているか否かで開く編集画面が単純に変わるというものですから、Gutenbergで作って公開している投稿をこのプラグインを使って更新候補を作って編集する前に一旦「Classic Editor」を停止するか、ユーザーによるエディタの変更を「いいえ」に設定すればGutenbergで編集画面が開くので、ちょっと注意すれば済む話でしょう。

逆に「Classic Editor」が有効化されていて、旧エディタで公開済みの投稿をこのプラグインを使って更新する場合にはユーザーによるエディタの変更を「はい」にしないとGutenbergエディタで編集画面が開いてしまうので気を付けましょう。

根本的な解決方法としては、混在している=新規作成する投稿や固定ページはGutenbergで作っている(作っていく)のですから、旧エディタで公開済みの投稿や固定ページを更新する場合はGutenbergエディタを使うと決めてしまえば切り替えも必要ないでしょう。

※一応この件については公式ページのサポートへ質問をしていますが、恐らくサードパーティプラグインのとの兼ね合いの話なので改善は難しいと思われます。意味が通じて更新候補の編集ボタンにエディタの選択肢ができてくれると一番なのかなぁと思うんですけどね・・・。

ただこれを除けば、冒頭に書いた「公開済みの投稿を更新する際に一時保存できる」という機能自体は本当に有用だと思うので、使ってみて便利さを実感できるプラグインだと思います。

ちょっと意地悪なテストをしてみた

このプラグインはWordpressの標準機能である投稿リビジョン(編集履歴の保存機能)を利用して、リビジョンを一旦他の投稿タイプへ退避させ、改訂版の公開時には元の投稿へ上書きするという仕組みになっているようです(プログラムの流れではなく、動作の流れからの解釈です)。

ではちょっと意地悪して・・・プラグインやfunctions.phpへコードを追記してリビジョンの管理をしているサイトもたくさんあると思いますから、リビジョンの削除を行ったときにはどうなるの?リビジョンを無効にしたときはどうなるの?をテストしてみました。

まずリビジョン削除のプラグインを使用した場合について、私が管理するサイトで必ず使っている

を使って手動最適化ですべてのリビジョンを削除しました。

※テスト前にあらかじめこのプラグインでリビジョンの保存(退避)をいくつかさせた状態でテストしました。

退避した編集途中の投稿(このプラグインで言う「リビジョン」)は削除されることはなく、きちんと編集し、投稿への上書き(更新)もできました。

次に、Wordpress標準の投稿リビジョンを無効にした場合にどうなるのか?のチェック。これは「wp-config.php」中に

define('WP_POST_REVISIONS', false);

というコードを挿入して無効にした状態での確認をしました。停止するプラグインもありますが、こちらの方が確実ですので・・・。

※ちなみに「そうそう、リビジョン無効にしたかったのよ」とこの記事を参考にコードを「wp-config.php」へ追記するときは、

/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

というメッセージの上にコピペするようにしてくださいね。

※こちらは「wp-config.php」へコードを入れ、リビジョンをすべて削除した上でリビジョンの保存(退避)をいくつかさせたにしてからテストしました。

結果は・・・問題なくこのプラグインは機能しました。

恐らく本プラグインの使用に際しての懸念事項はこの点だけだと思われますので、リビジョン管理を行っているサイトでも問題なく動作すると思います(あくまでも私のテストサイトでの結果ですので、最終的にはご自身のサイトで確認いただく必要はあります)。

いちばんやさしいWordPressの教本 第4版 5.x対応 人気講師が教 える本格Webサイトの作り方 (「いちばんやさしい教本」シリーズ)
インプレス
大きな画面の操作手順で迷わない。人気のテーマで、パソコン&スマホ両対応のWebサイトを作れる!ソーシャルメディアとの連携やSEO対策、バックアップなどの運用面も丁寧に解説。
※表示している価格は単行本のものです
参考価格:1,738
※参考価格です。サービスやショップ、掲載時期などにより価格は異なりますのでご注意ください

WordPressのカスタマイズ・不具合対応などご相談ください

Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

【スポンサーリンク】