WordPress 중복 페이지 또는 게시물: 수행 방법(2021)

게시 됨: 2021-10-26

우리 사이트에서 일반적으로 WordPress Duplicate Page 항목을 만드십니까?

웹사이트를 개발할 때 페이지나 게시물을 복제하는 것은 그리 흔한 일이 아닙니다. 그러나 일반적으로 페이지나 게시물을 복제하는 경우 현명한 조치가 될 것입니다.

따라서 새로운 레이아웃을 위한 테스트 필드가 필요합니까? 아니면 시스템 업데이트 및 업그레이드를 위해? 상황에 관계없이 항상 다양한 방법으로 WordPress를 복제할 수 있습니다. 여기서 주목해야 할 것은 귀하와 귀하의 사이트에 적합한 방법입니다. 이 기사에서는 WordPress에서 페이지를 복제하는 방법을 설명하고 안내 하는 자습서를 제공하게 된 것을 매우 기쁘게 생각합니다.

그 전에 페이지/게시물을 복제해야 하는 이유를 살펴보겠습니다.

WordPress 중복 페이지: 필요한가요?

글쎄, 당신은 그것을 할 것인지 여부를 선택할 수 있습니다. 그러나 다음과 같이 사이트의 복제가 필요한 상황이 있습니다.

– 사용자가 최신 버전의 테마, 플러그인, WordPress, PHP 또는 이와 관련된 작업을 하고 있고 사이트에 준비 프로세스가 없습니다.

– 새로운 콘텐츠를 만들 때 재사용할 수 있도록 복사본을 만들고 싶습니다.

– 꿈의 레이아웃을 찾고 사이트에서 시도하고 싶습니다.

– 새 웹사이트에 맞춤형 CSS/HTML 코드를 적용해야 합니다.

보시다시피, 복제된 버전은 엄청난 이점을 가져다 줄 것입니다. 자, 이제 WordPress 페이지복제 하는 방법에 대해 알아보겠습니다.

콘텐츠 수동 복사 및 붙여넣기

간단히 내용을 복사하여 새 버전/초안에 붙여넣습니다. 접근하기가 매우 쉽고 이 방법을 선택하는 이유를 추측할 수 있습니다.

– 당신은 더 빠른 방법을 모릅니다.

– 귀하의 사이트는 많은 페이지를 소유하지 않으며 SEO에 중점을 두지 않습니다.

– 사이트의 백엔드를 통해 액세스할 수 없는 페이지를 복제하고 있습니다.

이유 2와 3으로 인해 손으로 직접 복사하여 붙여넣는 것이 여러분 모두에게 최선의 선택이라는 데 동의해야 합니다. 그래도 이 방법에는 몇 가지 단점이 있습니다. 사진, 메타 태그, 영구 링크, 사용자 정의 CSS/HTML 및 기타 요소를 올바르게 복사할 수 없습니다.

다음은 2단계입니다.

1단계: 원본 소스에서 사본 버전 만들기

여기서 Ctrl+A가 가장 중요한 요소라고 말할 수 있습니다. 당신이 할 일은 계획된 사이트에 액세스하여 계획된 프로젝트에 강조 표시하고 복사하여 붙여넣는 것입니다.

따라서 콘텐츠로 바로 이동합니다. 다음 단계로 이동합니다.

2단계: HTML에서 태그 삭제

콘텐츠를 붙여넣은 후 사이트의 코드 편집기로 이동합니다. 여기에서 모든 &nbsp; 사이트가 코드의 프레임워크를 따를 것이기 때문에 <span> 메타 태그.

앞서 말했듯이 수동으로 복제하면 잠재적인 버그와 오류가 발생할 수 있습니다. 이 문제를 해결하기 위해 여전히 당사 사이트를 유지 관리하는 다른 해결 방법을 찾을 수 있습니다.

블록 편집기로 게시물 및 페이지 복제

특히 블록 편집기로 복제하는 것은 반수동으로 보이지만 여전히 수동 복제와 거의 같은 단점이 있습니다.

이를 시작하려면 사이트를 열고 오른쪽 상단 모서리 메뉴에서 "추가 도구 및 옵션"으로 이동할 수 있습니다. 그런 다음 "도구" 및 "모든 내용 복사"를 선택합니다. 그런 다음 계획된 섹션에 붙여넣은 후 새 프로젝트에 대한 모든 콘텐츠를 갖게 됩니다.

WordPress 중복 페이지에서 플러그인 적용하기

일반적으로 플러그인으로 WordPress에서 무엇이든 할 수 있으며 페이지 복제도 마찬가지입니다.

먼저 적절한 플러그인을 선택합니다. 지난 6개월 이내에 업데이트되었으며 별점 4/5 이상이며 WordPress 버전과 통합할 수 있습니다. Duplicate Page 플러그인을 예로 들어 보겠습니다.

그런 다음 다운로드하여 활성화합니다. "페이지" -> "모든 페이지"로 이동하여 계획된 사이트로 이동하고 "이 항목 복제" 버튼을 선택합니다. 이제부터 플러그인을 사용하여 WordPress에서 페이지를 복제할 수 있습니다.

파일 functions.php로 코드 가져오기

사람들은 종종 "솔루션이 어려울수록 더 유연하고 효율적인 결과가 나올 것"이라고 말합니다. 다른 한편, 이 말은 이 솔루션에도 적용됩니다. 사용자는 functions.php 파일에 코드를 추가 하여 워드프레스 페이지복제 할 뿐만 아니라 다른 목적에도 적용할 수 있습니다. 더 많은 편의를 위해 대시보드 탭에 링크를 추가할 수 있습니다. 따라서 WordPress 복제 페이지 를 만드는 것은 매우 쉽습니다.

먼저 몇 가지 요구 사항을 해결해 보겠습니다.

– 사이트의 서버 접근성: 호스트 관리 패널이나 처음 계정을 구입할 때 전송된 이메일에서 항상 참조를 찾을 수 있습니다.

– 현재 상위 테마에서 가져온 하위 테마: 사이트 업데이트/업그레이드 시 변경 사항을 저장할 수 있습니다. 또한 사이트에는 하위 테마가 있어야 합니다.

– 텍스트 편집기: 목적에 맞는 것을 선택해야 합니다.

– FTP 클라이언트: 사용자는 호스팅의 파일 관리자에서 FTP 클라이언트에 액세스할 수 있습니다. 게다가 다른 도구를 사용할 수도 있습니다.

FTP 클라이언트에 액세스

먼저 FTP 클라이언트에 액세스하여 "wp-content" -> "theme" 폴더로 이동합니다. 따라서 하위 테마의 폴더에 functions.php 파일이 있어야 합니다. 그렇지 않은 경우 먼저 만드십시오.

코드 라인 추가

그런 다음 해당 파일을 엽니다. 거기에 아래 코드 줄을 추가합니다.

 /* Duplicate posts and pages function. Duplicates appear as drafts, and the user is redirected to the Edit screen. */ function rd_duplicate_post_as_draft(){ global $wpdb; if (! ( isset( $_GET['post']) || isset( $_POST['post']) || ( isset($_REQUEST['action']) && 'rd_duplicate_post_as_draft' == $_REQUEST['action'] ) ) ) { wp_die('No post to duplicate has been supplied!'); } /* Nonce verification */ if ( !isset( $_GET['duplicate_nonce'] ) || !wp_verify_nonce( $_GET['duplicate_nonce'], basename( __FILE__ ) ) ) return; /* This gets the original post or page ID */ $post_id = (isset($_GET['post']) ? absint( $_GET['post'] ) : absint( $_POST['post'] ) ); /* …then grabs the original post data. */ $post = get_post( $post_id ); /* To select another user as the post author, use $new_post_author = $post->post_author;. Otherwise… */ $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* If the post data exists, create the duplicate */ if (isset( $post ) && $post != null) { /* Create a 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 using wp_insert_post() */ $new_post_id = wp_insert_post( $args ); /* Get all current post terms, then set them against the new 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 of the post metadata */ $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); } /* 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 the action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can('edit_posts')) { $actions['duplicate'] = '<a href="' . wp_nonce_url('admin.php?action=rd_duplicate_post_as_draft&post=' . $post->ID, basename(__FILE__), 'duplicate_nonce' ) . '" title="Duplicate this item" rel="permalink">Duplicate</a>'; } return $actions; } add_filter('post_row_actions', 'rd_duplicate_post_link', 10, 2 ); add_filter('page_row_actions', 'rd_duplicate_post_link', 10, 2);

프로세스 완료

마지막으로 다시 로드하고 "페이지" 화면으로 돌아갑니다. 해당 화면에서 이 페이지의 복제 링크를 관찰해야 합니다. 또한 이것을 플러그인으로 사용하고 나중에 사용하기 위해 개발할 수 있습니다.

따라서 플러그인을 사용하여 WordPress에서 페이지를 복제하는 방법 입니다.

WordPress 복제 페이지에 대한 올바른 방법 선택

WordPress 페이지복사 하는 것이 매우 쉽다고 생각할 수 있습니다. 게다가 사람들은 그것을 끝내는 가장 빠르고 좋은 방법을 선택하는 경향이 있습니다. 그러나 요구 사항에 따라 더 복잡하고 세부적인 방법을 선택하는 것이 좋습니다.

분명히 플러그인은 WordPress 페이지를 복제해야 하는 사람들에게 가장 유리한 선택입니다. 테마를 다운로드하고 설치한 후에 작동하여 모든 관련 문제에 대한 모든 기능을 제공합니다. 그러나 많은 양의 복제를 수행하려는 경우 하드코딩 솔루션을 고려할 수 있습니다. 반면에 가능한 경우 특정 목적과 목표를 위해 다른 선택을 할 수도 있습니다. 따라서 그것이 당신에게 완전히 도움이된다면 당신의 예산 가치가있을 것입니다.

WordPress 페이지를 복제하는 방법: 결론

모든 것을 살펴보면 WordPress 복제 페이지는 모든 웹 소유자와 개발자에게 쉬운 작업이어야 합니다. 요구 사항과 경험에 따라 각 사람은 다양한 방법을 선택할 수 있습니다. 이 게시물 이후에 WordPress 게시물 또는 페이지를 복제하는 4가지 일반적인 방법을 보여주었습니다. 그들의 어려움은 가장 단순한 것에서 가장 복잡한 것으로 이동합니다.

이 기사를 통해 WordPress 페이지를 복제하는 올바른 솔루션을 얻었을 것입니다.

더 읽어보기: WordPress 자식 테마를 만드는 방법(2021)