Как сделать дубликат страницы в Wordpress без плагина
Опубликовано: 2023-08-17В этой статье я покажу вам , как продублировать страницу в Wordpress без использования плагина. Здесь я расскажу о 3 различных способах сделать это. Вы можете либо дублировать страницу вручную, либо с помощью фрагментов кода, либо с помощью специального плагина.
Зачем нужно дублировать страницу в wordpress
Дублирование страницы в WordPress может служить различным целям, и есть несколько сценариев, в которых эта функция может оказаться полезной:
- Копирование содержимого: сэкономьте время, скопировав макет и структуру страницы для аналогичного содержимого.
- Последовательный дизайн: Поддерживайте единый вид для определенных типов страниц.
- A/B-тестирование: протестируйте разные версии страницы для повышения вовлеченности или конверсии.
- Переводы: начните с дубликата для создания переведенных версий страницы.
- Длинный контент: сохраняйте шаблон, добавляя уникальный контент.
- Страницы событий: быстро настройте похожие страницы событий с дублированным содержимым.
- Архивирование и перепрофилирование: сохраняйте оригиналы при перепрофилировании контента.
- Резервное копирование: сделайте дубликат для резервного копирования, прежде чем вносить существенные изменения.
- Пользовательские целевые страницы: эффективно создавайте индивидуальные целевые страницы для кампаний.
- Тестирование разработки: дублируйте страницы для тестирования изменений перед запуском.
Помните, что хотя дублирование страниц может быть полезным, важно убедиться, что дублированный контент соответствующим образом настроен в соответствии с его назначением. Дублированный контент на вашем веб-сайте, особенно если он не был существенно изменен, может негативно повлиять на поисковую оптимизацию (SEO) и взаимодействие с пользователем.
Дублировать страницу в Wordpress вручную
Если вы хотите дублировать страницу в Wordpress вручную, все, что вам нужно сделать, это отредактировать существующую страницу или сообщение и щелкнуть меню из трех точек в правом верхнем углу.
Теперь вы увидите опцию «Копировать все блоки». Просто нажмите на нее, и все содержимое страницы будет скопировано в буфер обмена.
Теперь вернитесь и создайте новую страницу, задайте заголовок страницы и вставьте код (CTRL + V), скопированный в буфер обмена.
Теперь все содержимое будет скопировано на вашу новую страницу, и вы успешно продублировали страницу всего за несколько кликов.
Здесь обратите внимание, что если вы воспользуетесь этим методом, будет скопировано только содержимое страницы, но метаданные, такие как заголовок страницы, метаописание, избранное изображение, категория и теги, не будут скопированы.
Итак, для этого вы можете использовать второй метод, о котором я расскажу ниже.
Дублировать страницу в Wordpress без плагина
Теперь, если вы не хотите использовать плагин и хотите добавить кнопку-дубликат сразу после сообщения или страницы, которая будет дублировать ваше сообщение, вы можете использовать приведенный ниже код.
Просто вставьте код в файл function.php или используйте плагин менеджера кода, такой как WP Code, Code Snippets и т. д.
/* * Function for post duplication. Dups appear as drafts. 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!'); } if ( !isset( $_GET['duplicate_nonce'] ) || !wp_verify_nonce( $_GET['duplicate_nonce'], basename( __FILE__ ) ) ) return; $post_id = (isset($_GET['post']) ? absint( $_GET['post'] ) : absint( $_POST['post'] ) ); $post = get_post( $post_id ); $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; if (isset( $post ) && $post != null) { $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 ); $new_post_id = wp_insert_post( $args ); $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); } $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); } 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' ); 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 без плагина. Если у вас есть какие-либо сомнения, не стесняйтесь спрашивать меня в разделе комментариев. Я рекомендую вам посмотреть видео выше, чтобы узнать больше.
Если вам понравился этот урок, не забудьте подписаться на наш канал YouTube.