WordPressでページを複製する方法[簡単な方法]

公開: 2023-06-19

WordPress でページや投稿を複製する簡単な方法をお探しですか?

Web サイト開発とコンテンツ管理の世界では、WordPress は強力でユーザーフレンドリーなプラットフォームとして際立っています。 Web サイトのページの管理と整理のプロセスを簡素化する多くの機能を提供します。 そのような機能の 1 つはページを複製する機能で、これにより、類似または関連するコンテンツを作成する際の時間と労力を節約できます。

この記事では、WordPress でページを複製する必要がある理由について説明します。 次に、プラグインを使用する場合と使用しない場合の方法を説明します。

飛び込んでみましょう!

WordPress でページをクローンまたは複製する理由

WordPress でページを複製すると、いくつかの利点があり、さまざまな目的に役立ちます。 WordPress でページをコピーしたくなる説得力のある理由は次のとおりです。

  • 一貫性と効率:特定のページ レイアウト、デザイン、構造を複数のページにまたがって複製したい場合、ページを複製すると、構造全体を最初から再作成する手間が省けます。 これにより、Web サイト全体の一貫性が確保され、一貫した外観と操作性が維持されます。
  • 時間の節約:ページを複製すると、特に同様のコンテンツを作成する必要がある場合に、作業負荷が大幅に軽減されます。 最初からページ全体を再作成する代わりに、既存のページを複製して必要な変更を加えれば、時間と労力を節約できます。
  • A/B テスト:ページの複製は、A/B テストまたは分割テストを実施する場合に便利です。 わずかに変更を加えたページの複数のバージョンを作成することで、ユーザー エンゲージメント、コンバージョン、その他の必要な指標の点でどのバージョンのパフォーマンスが優れているかを分析できます。 これにより、リアルタイム データに基づいてコンテンツ戦略を調整し、Web サイトのパフォーマンスを最適化できます。
  • バックアップとリカバリ:ページの複製はバックアップ メカニズムとして機能します。 ページに大幅な変更を加え、以前のバージョンを保存したい場合は、ページを複製すると、すぐに利用できるバックアップ コピーが確保されます。 問題や意図しない変更が発生した場合は、最初からやり直すことなく、複製したバージョンに戻してコンテンツを復元できます。

WordPress でページを複製する方法

WordPress ページ、投稿、またはカスタム投稿タイプを複製するには、次の 3 つの簡単な方法があります。

  • プラグイン– 投稿またはページをコピーする簡単な方法は、多数の専用プラグイン (ほとんどは無料) の 1 つを使用することです。
  • 編集者– コンテンツとデザインのみを複製する場合。
  • 手動コード– 自分でやる場合は、テーマの function.php ファイルにカスタム コードを追加するだけです。

それらを見ていきましょう。

プラグインを使用して WordPress ページを複製する

WordPress でページを複製するために使用できる WordPress プラグインが多数あります。 この記事では、Yoast Duplicate Post を使用します。

このプラグインは、ページ、投稿、またはその他のカスタム投稿タイプを迅速かつ簡単に複製する方法が必要な場合に最適です。

開始するには、Yoast Duplicate Post プラグインをインストールしてアクティブ化します。 詳細については、WordPress プラグインのインストール方法に関するガイドをご覧ください。

アクティブ化したら、WordPress ダッシュボードの [ページ] または [投稿] エリアに移動します。

ページまたは投稿を操作しているかどうかに関係なく、Duplicate Post プラグインはデフォルトで各タイトルの下に 3 つのリンクを追加します。

WordPress ページの重複オプション

  • クローン:クローンされたコンテンツのエディターを開かずに、WordPress ページまたは投稿を複製します。
  • 新しいドラフト:コンテンツのクローンを作成し、エディターを開くと、すぐに作業を開始できます。
  • 書き換えと再発行:コンテンツを更新するための最良のオプションです。 変更できるコンテンツのライブ バージョンのコピーが作成されます。 編集が完了したら、元の URL に再公開して、ワンクリックで既存のコンテンツを上書きします。

ただし、すべてのメタデータをコピーしたり、アクセスできるユーザーを制限したりする必要がある場合もあります。 幸いなことに、重複投稿設定を使用すると、これらすべて (およびそれ以上) を行うことができます。

重複投稿プラグイン設定のカスタマイズ

重複投稿プラグインはすぐに機能し、デフォルトで投稿とページをサポートします。

ただし、カスタム投稿タイプをサポートしたり、ユーザーの役割を制限したり、複製を作成するときにコピーする内容を選択したりするようにプラグインを構成することもできます。

これらの各オプションを見てみましょう。

設定 » 重複投稿ページに移動して、プラグイン設定を構成します。

コピー後の設定を複製する

設定ページは 3 つのタブに分かれています。 [コピーする内容]タブでは、複製を作成するときにコピーする内容を選択できます。

ほとんどの Web サイトではデフォルト設定で十分です。 ただし、複製したい項目にチェックを入れ、コピーしたくない項目のチェックを外すこともできます。

これに続いて、 「権限」タブに移動します。

投稿権限設定の重複

デフォルトでは、プラグインにより管理者と編集者は重複した投稿を行うことができます。

また、投稿およびページ投稿タイプの重複投稿機能も可能になります。

Web サイトでカスタム投稿タイプを使用している場合は、ここに表示されます。 カスタム投稿タイプの重複投稿オプションを許可するかどうかも選択できます。

最後に、 [表示]タブに移動し、クローン投稿リンクを表示する場所を選択します。 デフォルトでは、プラグインは投稿リスト、編集画面、管理バーにそれらを表示します。

重複した投稿の表示設定

設定が完了したら、 「変更を保存」ボタンをクリックして設定を保存します。

ページのクローン/コピー用のその他の WordPress プラグイン

  • ページと投稿を複製する
  • 重複ページ
  • ポストデュプリケーター

エディターを使用して WordPress ページを複製する

この方法では、WordPress ブロック エディター (Gutenberg) でデフォルトで利用できる組み込みの複製機能を使用します。

[ページ] » [すべてのページ]に移動し、コピーするページをクリックします。

開いたら、画面の右上隅にある三点メニューをクリックします。 ここで、 「すべてのブロックをコピー」オプションを選択します。

Gutenberg エディターを使用して WordPress ページを複製する

次に、戻って新しいページを作成し、コピーしたコンテンツをそこに貼り付けます。

コンテンツを貼り付けると、複製されたページを公開できるようになります。

この方法では、投稿のタイトル、分類法 (カテゴリとタグ) などのメタデータはコピーされないことに注意してください。ただし、将来のコンテンツ用のテンプレートを作成するだけの場合は、問題なく機能します。

WordPress ページを手動で複製する

自分で行うアプローチを希望する場合は、カスタム コードを使用して独自の複製ページ関数を作成することもできます。 このアプローチには、サイトに別のプラグインをインストールする必要がなくなること以外、プラグイン ルートよりも利点はありません。

このコードを使用するには、テーマのfunction.phpファイルまたはコード スニペットなどのコード管理プラグインにコードを追加します。 function.php ファイルに追加する場合は、必ず子テーマを使用してください。

 $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* * if post data exists, create the post duplicate */ if (isset( $post ) && $post != null) { /* * new post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => 'draft', 'post_title' => $post->post_title, 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post( $args ); /* * get all current post terms ad set them to the new post draft */ $taxonomies = get_object_taxonomies($post->post_type); // returns array of taxonomy names for post type, ex array("category", "post_tag"); foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * duplicate all post meta just in two SQL queries */ $post_meta_infos = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id"); if (count($post_meta_infos)!=0) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) "; foreach ($post_meta_infos as $meta_info) { $meta_key = $meta_info->meta_key; if( $meta_key == '_wp_old_slug' ) continue; $meta_value = addslashes($meta_info->meta_value); $sql_query_sel[]= "SELECT $new_post_id, '$meta_key', '$meta_value'"; } $sql_query.= implode(" UNION ALL ", $sql_query_sel); $wpdb->query($sql_query); } /* * finally, redirect to the edit post screen for the new draft */ wp_redirect( admin_url( 'post.php?action=edit&post=' . $new_post_id ) ); exit; } else { wp_die('Post creation failed, could not find original post: ' . $post_id); } } add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' ); /* * Add the duplicate link to action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can('edit_posts')) { $actions['duplicate'] = ' ID, basename(__FILE__), 'duplicate_nonce' ) . '" title="Duplicate this item" rel="permalink">Duplicate '; } return $actions; } add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 ); add_filter( 'page_row_actions', 'rd_duplicate_post_link', 10, 2 );

デフォルトでは、スニペットは投稿とページの両方で複製を許可します。 2 つのうち 1 つだけを有効にしたい場合は、コード行の最後にあるpage_row_actionsまたはpost_row_actionsフィルターを削除します。

それで全部です!

この記事が、WordPress ページを簡単に複製する方法を学ぶのに役立つことを願っています。

詳細については、次の他の役立つリソースをご覧ください。

  • WordPress テーマをアンインストールおよび削除する方法
  • WordPress ログイン URL: 検索および管理する方法

最後に、この記事が気に入っていただけましたら、Facebook と Twitter をフォローしてください。