Como duplicar uma página no WordPress sem plug-ins em 2023

Se você estiver usando o WordPress para criar e gerenciar seu site, em algum momento, você pode querer duplicar uma página. Você pode estar pensando que pode simplesmente copiar e colar todo o conteúdo em uma nova página.

Isso funciona apenas até certo ponto, pois grande parte da sua formatação, como recursos, imagens e SEO, será perdida e precisará ser refeita. Para obter mais informações sobre este tópico, você pode verificar este artigo em duplicar uma página no WordPress.

Além disso, se você deseja renovar uma página e melhorá-la, se você começar a editar a página existente, em vez de duplicá-la, você não terá nenhum ponto de comparação. Seja qual for o motivo para precisar duplicar uma página no WordPress, existem algumas maneiras de fazer isso.

A hospedagem gerenciada do WordPress fornece um ambiente robusto e eficiente para executar um site WordPress. Duplicar uma página sem um plugin é uma tarefa manual simples.

Ambos os elementos fazem parte de uma estratégia mais ampla para gerenciar e manter com eficiência um site WordPress, com hospedagem gerenciada oferecendo uma rede de segurança que complementa tarefas manuais de gerenciamento de site, como duplicação de páginas.

Copiando uma página do WordPress sem plug-ins

Se você não quiser usar um plugin para copiar uma página do WordPress, você pode tentar alterar alguns código.

Um pouco de codificação

Não se preocupe se você não for um guru da codificação (poucos de nós o são). Você pode duplicar páginas do WordPress fazendo um pouco de codificação, e não é tão difícil. Estaremos fornecendo o código aqui, então você só precisa copiá-lo e colá-lo. Vamos explicar como fazer isso.

Acessando o arquivo Functions.php

Para duplicar uma página sem um plugin, você precisará acessar o arquivo “functions.php” através do método de codificação. Existem dois métodos principais que você pode usar para acessar o arquivo functions.php.

O primeiro método é usando o cliente FTP, então você primeiro precisa instalar FTP Cliente. Inicie o cliente FTP, clique em “conectar” e forneça seu nome de usuário e senha para se conectar ao servidor host FTP. Você pode então acessar o arquivo apropriado indo para “WordPress Root,” então “WP Content”, então “Themes”, então “Current Themes”, e você finalmente chegará a functions.php. Você pode então fazer o download do arquivo, editá-lo conforme necessário e carregá-lo de volta no local apropriado.

O segundo método acessa o arquivo functions.php. Você pode fazer alterações no código fazendo login no WordPress como administrador, vá para o editor de aparência na barra lateral, selecione o tema que deseja editar e selecione a função de temas (functions.php), que está sob a seção “ arquivos de tema ”na“ seção de modelos ”. Agora você pode fazer alterações no código e, quando terminar, basta clicar no botão “atualizar”.

Agora você sabe como acessar o arquivo functions.php para que possa fazer alterações no código sem um plugin; o objetivo principal é duplicar uma página. A próxima etapa é inserir o código apropriado que duplicará a página. Não se preocupe se você não souber muito sobre codificação, porque incluímos o código necessário que você pode simplesmente copiar e colar.

/ * * Função para duplicação de postagem.  Dups aparecem como rascunhos.  O usuário é redirecionado para a tela de edição * / function rd_duplicate_post_as_draft () {global $ wpdb; E se (!  (isset ($ _GET ['post']) || isset ($ _POST ['post']) || (isset ($ _ REQUEST ['action']) && 'rd_duplicate_post_as_draft' == $ _REQUEST ['action']) )) {wp_die ('Nenhuma postagem para duplicar foi fornecida!'); } / * * Verificação nonce * / if (! Isset ($ _GET ['duplicate_nonce']) ||! Wp_verify_nonce ($ _GET ['duplicate_nonce'], basename (__FILE__))) return; / * * obter o id do post original * / $ post_id = (isset ($ _ GET ['post'])?  absint ($ _GET ['post']): absint ($ _POST ['post'])); / * * e todos os dados originais da postagem, então * / $ post = get_post ($ post_id); / * * se você não deseja que o usuário atual seja o novo autor da postagem, * então mude as próximas linhas para isto: $ new_post_author = $ post-> post_author; * / $ current_user = wp_get_current_user (); $ new_post_author = $ current_user-> ID; / * * se os dados da postagem existirem, crie a cópia da postagem * / if (isset ($ post) && $ post! = null) {/ * * nova matriz de dados da postagem * / $ 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); / * * inserir a postagem pela função wp_insert_post () * / $ new_post_id = wp_insert_post ($ args); / * * obter todos os termos de postagem atuais e configurá-los para o novo rascunho de postagem * / $ taxonomies = get_object_taxonomies ($ post-> post_type); // retorna a matriz de nomes de taxonomia para o tipo de postagem, ex array ("categoria", "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); } / * * duplicar todos os post meta apenas em duas consultas 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') 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); } / * * finalmente, redireciona para a tela de edição de postagem para o novo rascunho * / wp_redirect (admin_url ('post.php? action = edit & post ='.  $ new_post_id)); saída; } else {wp_die ('Falha na criação da postagem, não foi possível encontrar a postagem original:'.  $ post_id); }} add_action ('admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft'); / * * Adicionar o link duplicado à lista de ações para 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'). 

Se você deseja apenas duplicar uma postagem, não uma página, substitua a última linha por:

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

Conclusão

Agora você sabe copiar uma página do WordPress sem plug-ins. Como você pode ver, existem apenas duas etapas envolvidas. Primeiro, acesse o arquivo functions.php, copie e cole esse código no arquivo e, em seguida, atualize-o. É tão simples quanto isso e, quando terminar, você terá uma duplicata exata de sua página original.

    0 comentários

    Nenhum comentário.