Як скопіювати сторінку в WordPress без плагінів у 2023 році

Якщо ви використовуєте WordPress для створення та керування своїм веб-сайтом, у якийсь момент ви можете скопіювати сторінку. Можливо, ви думаєте, що можете просто скопіювати та вставити весь вміст на нову сторінку.

Це працює лише до певної міри, оскільки велика частина вашого форматування, як-от функції, зображення та SEO, буде втрачена та потребуватиме перероблення. Для отримання додаткової інформації з цієї теми ви можете переглянути цю статтю дублювання сторінки в WordPress.

Крім того, якщо ви хочете оновити сторінку та покращити її, якщо ви почнете редагувати існуючу сторінку, замість того, щоб робити її дублікат, у вас немає точки порівняння. Якою б не була ваша причина необхідності дублювати сторінку в WordPress, ви можете це зробити кількома способами.

Керований хостинг WordPress забезпечує надійне та ефективне середовище для роботи веб-сайту WordPress, дублювання сторінки без плагіна є простим завданням вручну.

Обидва елементи є частиною ширшої стратегії ефективного керування та підтримки веб-сайту WordPress, а керований хостинг пропонує систему безпеки, яка доповнює завдання ручного керування сайтом, як-от дублювання сторінок.

Копіювання сторінки WordPress без плагінів

Якщо ви не хочете використовувати плагін для копіювання сторінки WordPress, ви можете спробувати змінити деякі з них код.

Трохи кодування

Не хвилюйтеся, якщо ви не гуру програмування (мало хто з нас такими). Ви можете дублювати сторінки WordPress, виконавши трохи коду, і це не так вже й складно. Ми надамо вам код тут, тому вам потрібно просто скопіювати та вставити його. Пояснимо, як це зробити.

Доступ до файлу Functions.php

Щоб скопіювати сторінку без плагіна, вам знадобиться отримати доступ до файлу «functions.php» за допомогою методу кодування. Є два основні методи, які можна використовувати для доступу до файлу functions.php.

Перший спосіб – це використання FTP-клієнта, тому спочатку потрібно встановити Ftp Клієнт. Запустіть FTP-клієнт, натисніть «Підключитися» та введіть своє ім’я користувача та пароль для підключення до FTP-сервера. Потім ви можете отримати доступ до відповідного файлу, перейшовши до «WordPress Root», потім «WP Content», потім «Themes», потім «Current Themes», і нарешті ви потрапите до functions.php. Потім ви можете завантажити файл, відредагувати його за потреби та завантажити назад у відповідне місце.

Другий метод отримує доступ до файлу functions.php. Ви можете внести зміни в код, увійшовши в WordPress як адміністратор, потім перейдіть до редактора зовнішнього вигляду на бічній панелі, виберіть тему, яку потрібно редагувати, а потім виберіть функцію тем (functions.php), яка знаходиться під « файли теми» в розділі «шаблони». Тепер ви можете вносити зміни в код, а коли закінчите, просто натисніть кнопку «оновити».

Тепер ви знаєте, як отримати доступ до файлу functions.php, щоб ви могли вносити зміни в код без плагіна; основною метою є дублювання сторінки. Наступним кроком є ​​введення відповідного коду, який потім дублює сторінку. Не хвилюйтеся, якщо ви мало знаєте про кодування, оскільки ми включили необхідний код, який можна просто скопіювати та вставити.

/* * Функція дублювання публікації.  Копії відображаються як чернетки.  Користувача буде перенаправлено на екран редагування */ function rd_duplicate_post_as_draft(){ global $wpdb; якщо (!  ( isset( $_GET['post']) || isset( $_POST['post']) || ( isset($_REQUEST['action']) && 'rd_duplicate_post_as_draft' == $_REQUEST['action'] ) ) ) { wp_die('Жодної публікації для дублікату не надано!'); } /* * Перевірка Nonce */ 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 ); /* * якщо ви не бажаєте, щоб поточний користувач був автором нового повідомлення, * тоді змініть наступну пару рядків на це: $new_post_author = $post->post_author; */ $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' => 'чернетка', '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 ($taxonomies як $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * дублюватиме всі мета повідомлення лише у двох запитах 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 як $meta_info) { $meta_key = $meta_info->meta_key; if( $meta_key == '_wp_old_slug' ) продовжити; $meta_value = addslashes($meta_info->meta_value); $sql_query_sel[]= "ВИБРАТИ $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 )); вихід; } else { 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'] = '  wp_nonce_url('admin.php?action=rd_duplicate_post_as_draft&post=' .  $post->ID, basename(__FILE__), 'duplicate_nonce' ) . 

Якщо ви просто хочете скопіювати публікацію, а не сторінку, замініть останній рядок на:

add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2);

Висновок

Тепер ви знаєте, як скопіювати сторінку WordPress без плагінів. Як ви бачите, це лише два кроки. Спочатку перейдіть до файлу functions.php, скопіюйте та вставте цей код у файл, а потім оновіть його. Це дуже просто, і як тільки ви закінчите, у вас буде точна копія вашої оригінальної сторінки.

    0 коментарів

    Без коментарів.