WordPressページまたは投稿をコピーまたは複製する方法
公開: 2021-01-01ページまたは投稿を複製する方法
- Labinator Content Types Duplicator プラグインをインストールします。
- ダッシュボードに移動します。
- ページまたは投稿に移動します。
- ページまたは投稿にカーソルを合わせます。
- 「クローン」をクリックします。
序章
ページと投稿は、WordPress サイトのパンとバターです。 これにより、それらを簡単に編集および作成する方法を知ることが不可欠になります. 複製は、既存のものを複製するだけでなく、クローンを作成してコンテンツを作成できるテンプレートを作成できるため、持つべき素晴らしいツールです。
複製により、ワークフローが大幅に高速化され、より効率的に作業できるようになります。 設定が難しいように思えるかもしれませんが、複製を有効にしたり、ページや投稿を複製するのに役立つこれらのプラグインの 1 つを取得したりするのは非常に簡単です。 このチュートリアルでは、プラグインなしでコンテンツを複製する方法と、プラグインを使用してコンテンツを複製する方法を紹介します。
プラグインなしで複製する
まず、このセクションでは、プラグインなしで行う方法を示します。 functions.phpファイルに追加するこのコードを使用して、手動で複製を有効にすることができます。 これを行うには、 FTPまたはcPanelを使用して WordPress サイトのコア サーバー ファイルにアクセスできる必要があります。
FTP から始めたい場合は、 FileZillaが最適です。 一部のホスティング プロバイダーには、ファイルにアクセスできる cPanel が組み込まれています。 cPanel または FTP を設定したら、サイトをバックアップしてから、安全性を高めます。 プロセスを開始するには、WordPress サーバー ファイルを見つけて、以下の手順に従う必要があります。
FTP または cPanelを開きます。
functions.phpファイルを見つけて開きます。
ファイルの最後に移動して、次のコードを追加します。
/*
* ポスト複製のための機能。 Dup は下書きとして表示されます。 ユーザーは編集画面にリダイレクトされます
*/
関数rd_duplicate_post_as_draft(){
グローバル $wpdb;
if (! ( isset( $_GET['post']) || isset( $_POST['post']) || ( isset($_REQUEST['action']) && 'rd_duplicate_post_as_draft' == $_REQUEST['action '] ) ) ) {
wp_die('重複する投稿が提供されていません!');
}
/*
*ノンス検証
*/
if ( !isset( $_GET['duplicate_nonce'] ) || !wp_verify_nonce( $_GET['duplicate_nonce'], basename( __FILE__ ) ) )
戻る;
/*
* 元の投稿 ID を取得する
*/
$post_id = (isset($_GET['post']) ? absint( $_GET['post'] ) : absint( $_POST['post'] ) );
/*
* その後、すべての元の投稿データ
*/
$post = get_post( $post_id );
/*
* 現在のユーザーを新しい投稿者にしたくない場合は、
* 次に、次の数行を次のように変更します: $new_post_author = $post->post_author;
*/
$current_user = wp_get_current_user();
$new_post_author = $current_user->ID;
/*
* 投稿データが存在する場合は、投稿の複製を作成します
*/
if (isset( $post ) && $post != null) {
/*
* 新しい投稿データ配列
*/
$args = 配列(
'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' => '下書き',
'post_title' => $post->post_title,
'post_type' => $post->post_type,
'to_ping' => $post->to_ping,
'menu_order' => $post->menu_order
);
/*
* wp_insert_post() 関数で投稿を挿入
*/
$new_post_id = wp_insert_post( $args );
/*
* 現在のすべての投稿条件広告を取得して、それらを新しい投稿の下書きに設定します
*/
$taxonomies = get_object_taxonomies($post->post_type); // 投稿タイプの分類名の配列を返します。例: array("category", "post_tag");
foreach ($taxonomy を $taxonomy として) {
$post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slug'));
wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false);
}
/*
* 2 つの SQL クエリだけですべての投稿メタを複製する
*/
$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' ) 続行;
$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);
}
/*
* 最後に、新しい下書きの投稿編集画面にリダイレクトします
*/
wp_redirect( admin_url( 'post.php?action=edit&post=' . $new_post_id ) );
出口;
} そうしないと {
wp_die('投稿の作成に失敗しました。元の投稿が見つかりませんでした: ' . $post_id);
}
}
add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' );
/*
* post_row_actions のアクション リストに複製リンクを追加します。
*/
function rd_duplicate_post_link( $actions, $post ) {
if (current_user_can('edit_posts')) {
$actions['duplicate'] = '複製';
}
$アクションを返します。
}
add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 );
add_filter('page_row_actions', 'rd_duplicate_post_link', 10, 2);
リストされているプロセスを完了すると、ページまたは投稿を複製できます。 WordPress でページと投稿の複製が有効になりました。 この方法を使用すると、プラグインとまったく同じようにページと投稿を複製できます。 ページまたは投稿を複製するには、次の手順に従います。
- WordPress ダッシュボードに移動します。
- ページまたは投稿に移動します。
- 複製するページまたは投稿にカーソルを合わせます。
- [複製]をクリックします。
この方法の唯一の欠点は、ページや投稿をまとめて、または特別な設定で複製できないことです。 プラグインを使用すると、ページや投稿を複製する方法に関するカスタマイズ性とオプションが向上します。 次のセクションでは、プラグインを使用してページや投稿を複製する方法を紹介します。
プラグインを使用した複製
投稿、ページ、メディア ファイル、メニュー、ウィジェット、および任意のカスタム コンテンツ タイプのオールインワン デュプリケータが必要な場合は、独自の無料プラグインが最適です。 「Labinator Content Type Duplicator」 . このプラグインは信じられないほど軽量で高速、使いやすく、カスタム設定でページや投稿を複製できます. このプラグインは、1 回のインストールですべてを 1 か所で実行できるため、最適です。
「Labinator Content Types Duplicator」はまさにその通りで、WordPress 上の任意のコンテンツ タイプを好きなように複製できます。 この無料のプラグインは、いくつかの追加機能と、コンテンツを複製するための多くの機能を提供します. プラグインの使用方法については、こちらを参照してください。
- まず、プラグインをインストールして有効化します。
- 必要に応じて、 PagesまたはPostsに移動します。
- 複製したいページまたは投稿にカーソルを合わせます。
- [クローン]をクリックします。
ご覧のとおり、この便利なプラグインを使用すると、4 つの簡単な手順でページや投稿を複製できます。 このプラグインは、手間をかけずにページや投稿を複製するのに非常に適しています。 このプラグインができることはそれだけではありません。 次のセクションでは、カスタム設定でコンテンツを複製する方法を紹介します。
カスタム設定で複製する
カスタム複製の最良の方法は、 「Labinator Content Types Duplicator」というプラグインを使用することです。 前述のように、このプラグインは複製に関しては何でもできます。 これには、特定のコンテンツ タイプのカスタム複製も含まれます。 プラグインには組み込みのページがあり、コンテンツ タイプの変更、アクセス許可、その他の設定の追加を行うことができます。
プラグインは、1 つのボタンだけではなく、設定画面全体を提供することでこれを行います。 プラグインは、ウィジェットとメディアをそれぞれの領域で複製するためのオプションをすでに提供しています。 設定画面では、ページと投稿の複製方法を変更するために使用する基準を設定できます。 ここで使用方法を参照してください。
- WordPress ダッシュボードに移動します。
- [設定] に移動します。
- 次に、 Labinator Content Types Duplicator に移動します。
最初のメニューでは、何を複製するか、どのように複製するかを変更できます。 複製できる要素と複製される要素を変更できます。 このページでは、複製されたコンテンツのサフィックスとプレフィックスを変更することもできます。
プラグイン画面の2 番目と 3 番目のメニューでは、プラグインの権限と表示オプションを変更できます。 アクセス許可タブでは、サイトの特定の管理者とユーザーにアクセス権を付与できます。 表示オプションを使用すると、コンテンツへのリンクが表示される場所を変更できます。
これで、プラグインを使用する場合、プラグインを使用しない場合、およびカスタム設定を使用して、WordPress でページまたは投稿を複製する方法がわかりました。 このプロセスを使用すると、ページや投稿を好みに合わせて簡単に複製および複製できます。 さらに素晴らしいプラグインが必要な場合は、このサイトをチェックしてください。
WordPress ソリューションに最適な場所
技術的な問題やエラーに対処しなければならないことで、WordPress の使用が苦痛になることがあります。 私たちはあなたにぴったりのソリューションを持っていますが!
最高級の WordPress ソリューションでは、テーマやプラグインからライブ サポートまで、あらゆるものをカバーしています。 私たちと一緒に、数日できれいで最適化された洗練されたサイトを手に入れることができます!
ここで私たちをチェックしてください!
WordPress ガイド
WordPressガイドとチェックリストのベストコレクション
WordPress ウェブサイトを最大限に活用するために必要なすべてをカバーする、完全かつ最新の WordPress ガイドとリソースのコレクション。
それらをすべてダウンロードしてください!
すべてのガイドが受信トレイに送信されます