add_action('save_post_eventos', 'atualizar_produto_woocommerce_1'); function atualizar_produto_woocommerce_1($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_1 = get_post_meta($post_id, 'opecao-nome_1', true); $imagem_destacada_id_1 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_1 = get_post_meta($post_id, 'preco_1', true); if ($nome_post && $descricao_produto_1 && $imagem_destacada_id_1 && is_numeric($preco_1)) { $produto_associado_1 = get_post_meta($post_id, '_produto_associado_1', true); $novo_titulo_produto_1 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_1; if ($produto_associado_1) { $produto_atual = get_post($produto_associado_1); $titulo_atual_produto_1 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_1 !== $novo_titulo_produto_1) { $produto_atualizado_1 = array( 'ID' => $produto_associado_1, 'post_title' => $novo_titulo_produto_1, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_1); } // Atualizar o preço do produto existente update_post_meta($produto_associado_1, '_regular_price', $preco_1); update_post_meta($produto_associado_1, '_price', $preco_1); // Definir o SKU $sku_produto = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_1 . '-' . substr($descricao_produto_1, 0, 1); update_post_meta($produto_associado_1, '_sku', $sku_produto); } else { // Criar um novo produto $novo_produto_1 = array( 'post_title' => $novo_titulo_produto_1, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_1 = wp_insert_post($novo_produto_1); if ($produto_id_1 && !is_wp_error($produto_id_1)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_1, $imagem_destacada_id_1); update_post_meta($produto_id_1, '_regular_price', $preco_1); update_post_meta($produto_id_1, '_price', $preco_1); // Definir o SKU $sku_produto = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_1 . '-' . substr($descricao_produto_1, 0, 1); update_post_meta($produto_id_1, '_sku', $sku_produto); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_1', $produto_id_1); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_1) { wp_delete_post($produto_associado_1, true); delete_post_meta($post_id, '_produto_associado_1'); } } } // Ação após o salvamento do tipo de post "eventos" para o segundo produto add_action('save_post_eventos', 'atualizar_produto_woocommerce_2'); function atualizar_produto_woocommerce_2($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_2 = get_post_meta($post_id, 'opecao-nome_2', true); $imagem_destacada_id_2 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_2 = get_post_meta($post_id, 'preco_2', true); if (!empty($descricao_produto_2) && $imagem_destacada_id_2 && is_numeric($preco_2)) { $produto_associado_2 = get_post_meta($post_id, '_produto_associado_2', true); $novo_titulo_produto_2 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_2; if ($produto_associado_2) { $produto_atual = get_post($produto_associado_2); $titulo_atual_produto_2 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_2 !== $novo_titulo_produto_2) { $produto_atualizado_2 = array( 'ID' => $produto_associado_2, 'post_title' => $novo_titulo_produto_2, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_2); } // Atualizar o preço do produto existente update_post_meta($produto_associado_2, '_regular_price', $preco_2); update_post_meta($produto_associado_2, '_price', $preco_2); // Definir o SKU $sku_produto_2 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_2 . '-' . substr($descricao_produto_2, 0, 1); update_post_meta($produto_associado_2, '_sku', $sku_produto_2); } else { // Criar um novo produto $novo_produto_2 = array( 'post_title' => $novo_titulo_produto_2, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_2 = wp_insert_post($novo_produto_2); if ($produto_id_2 && !is_wp_error($produto_id_2)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_2, $imagem_destacada_id_2); update_post_meta($produto_id_2, '_regular_price', $preco_2); update_post_meta($produto_id_2, '_price', $preco_2); // Definir o SKU $sku_produto_2 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_2 . '-' . substr($descricao_produto_2, 0, 1); update_post_meta($produto_id_2, '_sku', $sku_produto_2); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_2', $produto_id_2); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_2) { wp_delete_post($produto_associado_2, true); delete_post_meta($post_id, '_produto_associado_2'); } } } // Ação após o salvamento do tipo de post "eventos" para o terceiro produto add_action('save_post_eventos', 'atualizar_produto_woocommerce_3'); function atualizar_produto_woocommerce_3($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_3 = get_post_meta($post_id, 'opecao-nome_3', true); $imagem_destacada_id_3 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_3 = get_post_meta($post_id, 'preco_3', true); if (!empty($descricao_produto_3) && $imagem_destacada_id_3 && is_numeric($preco_3)) { $produto_associado_3 = get_post_meta($post_id, '_produto_associado_3', true); $novo_titulo_produto_3 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_3; if ($produto_associado_3) { $produto_atual = get_post($produto_associado_3); $titulo_atual_produto_3 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_3 !== $novo_titulo_produto_3) { $produto_atualizado_3 = array( 'ID' => $produto_associado_3, 'post_title' => $novo_titulo_produto_3, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_3); } // Atualizar o preço do produto existente update_post_meta($produto_associado_3, '_regular_price', $preco_3); update_post_meta($produto_associado_3, '_price', $preco_3); // Definir o SKU $sku_produto_3 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_3 . '-' . substr($descricao_produto_3, 0, 1); update_post_meta($produto_associado_3, '_sku', $sku_produto_3); } else { // Criar um novo produto $novo_produto_3 = array( 'post_title' => $novo_titulo_produto_3, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_3 = wp_insert_post($novo_produto_3); if ($produto_id_3 && !is_wp_error($produto_id_3)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_3, $imagem_destacada_id_3); update_post_meta($produto_id_3, '_regular_price', $preco_3); update_post_meta($produto_id_3, '_price', $preco_3); // Definir o SKU $sku_produto_3 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_3 . '-' . substr($descricao_produto_3, 0, 1); update_post_meta($produto_id_3, '_sku', $sku_produto_3); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_3', $produto_id_3); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_3) { wp_delete_post($produto_associado_3, true); delete_post_meta($post_id, '_produto_associado_3'); } } } // Ação após o salvamento do tipo de post "eventos" para o quarto produto add_action('save_post_eventos', 'atualizar_produto_woocommerce_4'); function atualizar_produto_woocommerce_4($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_4 = get_post_meta($post_id, 'opecao-nome_4', true); $imagem_destacada_id_4 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_4 = get_post_meta($post_id, 'preco_4', true); if (!empty($descricao_produto_4) && $imagem_destacada_id_4 && is_numeric($preco_4)) { $produto_associado_4 = get_post_meta($post_id, '_produto_associado_4', true); $novo_titulo_produto_4 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_4; if ($produto_associado_4) { $produto_atual = get_post($produto_associado_4); $titulo_atual_produto_4 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_4 !== $novo_titulo_produto_4) { $produto_atualizado_4 = array( 'ID' => $produto_associado_4, 'post_title' => $novo_titulo_produto_4, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_4); } // Atualizar o preço do produto existente update_post_meta($produto_associado_4, '_regular_price', $preco_4); update_post_meta($produto_associado_4, '_price', $preco_4); // Definir o SKU $sku_produto_4 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_4 . '-' . substr($descricao_produto_4, 0, 1); update_post_meta($produto_associado_4, '_sku', $sku_produto_4); } else { // Criar um novo produto $novo_produto_4 = array( 'post_title' => $novo_titulo_produto_4, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_4 = wp_insert_post($novo_produto_4); if ($produto_id_4 && !is_wp_error($produto_id_4)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_4, $imagem_destacada_id_4); update_post_meta($produto_id_4, '_regular_price', $preco_4); update_post_meta($produto_id_4, '_price', $preco_4); // Definir o SKU $sku_produto_4 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_4 . '-' . substr($descricao_produto_4, 0, 1); update_post_meta($produto_id_4, '_sku', $sku_produto_4); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_4', $produto_id_4); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_4) { wp_delete_post($produto_associado_4, true); delete_post_meta($post_id, '_produto_associado_4'); } } } // Ação após o salvamento do tipo de post "eventos" para o quinto produto add_action('save_post_eventos', 'atualizar_produto_woocommerce_5'); function atualizar_produto_woocommerce_5($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_5 = get_post_meta($post_id, 'opecao-nome_5', true); $imagem_destacada_id_5 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_5 = get_post_meta($post_id, 'preco_5', true); if (!empty($descricao_produto_5) && $imagem_destacada_id_5 && is_numeric($preco_5)) { $produto_associado_5 = get_post_meta($post_id, '_produto_associado_5', true); $novo_titulo_produto_5 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_5; if ($produto_associado_5) { $produto_atual = get_post($produto_associado_5); $titulo_atual_produto_5 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_5 !== $novo_titulo_produto_5) { $produto_atualizado_5 = array( 'ID' => $produto_associado_5, 'post_title' => $novo_titulo_produto_5, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_5); } // Atualizar o preço do produto existente update_post_meta($produto_associado_5, '_regular_price', $preco_5); update_post_meta($produto_associado_5, '_price', $preco_5); // Definir o SKU $sku_produto_5 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_5 . '-' . substr($descricao_produto_5, 0, 1); update_post_meta($produto_associado_5, '_sku', $sku_produto_5); } else { // Criar um novo produto $novo_produto_5 = array( 'post_title' => $novo_titulo_produto_5, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_5 = wp_insert_post($novo_produto_5); if ($produto_id_5 && !is_wp_error($produto_id_5)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_5, $imagem_destacada_id_5); update_post_meta($produto_id_5, '_regular_price', $preco_5); update_post_meta($produto_id_5, '_price', $preco_5); // Definir o SKU $sku_produto_5 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_5 . '-' . substr($descricao_produto_5, 0, 1); update_post_meta($produto_id_5, '_sku', $sku_produto_5); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_5', $produto_id_5); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_5) { wp_delete_post($produto_associado_5, true); delete_post_meta($post_id, '_produto_associado_5'); } } } // Ação após o salvamento do tipo de post "eventos" para o sexto produto add_action('save_post_eventos', 'atualizar_produto_woocommerce_6'); function atualizar_produto_woocommerce_6($post_id) { if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id)) { return; } $nome_post = get_the_title($post_id); $descricao_produto_6 = get_post_meta($post_id, 'opecao-nome_6', true); $imagem_destacada_id_6 = get_post_meta($post_id, 'imagem-do-evento-box', true); $preco_6 = get_post_meta($post_id, 'preco_6', true); if (!empty($descricao_produto_6) && $imagem_destacada_id_6 && is_numeric($preco_6)) { $produto_associado_6 = get_post_meta($post_id, '_produto_associado_6', true); $novo_titulo_produto_6 = 'Ingresso ' . $nome_post . ': ' . $descricao_produto_6; if ($produto_associado_6) { $produto_atual = get_post($produto_associado_6); $titulo_atual_produto_6 = $produto_atual->post_title; // Verificar se o título do produto mudou if ($titulo_atual_produto_6 !== $novo_titulo_produto_6) { $produto_atualizado_6 = array( 'ID' => $produto_associado_6, 'post_title' => $novo_titulo_produto_6, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); wp_update_post($produto_atualizado_6); } // Atualizar o preço do produto existente update_post_meta($produto_associado_6, '_regular_price', $preco_6); update_post_meta($produto_associado_6, '_price', $preco_6); // Definir o SKU $sku_produto_6 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_6 . '-' . substr($descricao_produto_6, 0, 1); update_post_meta($produto_associado_6, '_sku', $sku_produto_6); } else { // Criar um novo produto $novo_produto_6 = array( 'post_title' => $novo_titulo_produto_6, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'product' ); $produto_id_6 = wp_insert_post($novo_produto_6); if ($produto_id_6 && !is_wp_error($produto_id_6)) { // Definir a imagem destacada e o preço set_post_thumbnail($produto_id_6, $imagem_destacada_id_6); update_post_meta($produto_id_6, '_regular_price', $preco_6); update_post_meta($produto_id_6, '_price', $preco_6); // Definir o SKU $sku_produto_6 = substr(str_replace(' ', '-', $nome_post), 0, 3) . '-' . $preco_6 . '-' . substr($descricao_produto_6, 0, 1); update_post_meta($produto_id_6, '_sku', $sku_produto_6); // Associar o ID do produto ao post "eventos" update_post_meta($post_id, '_produto_associado_6', $produto_id_6); } } } else { // Se algum dos campos estiver vazio, excluir o produto existente if ($produto_associado_6) { wp_delete_post($produto_associado_6, true); delete_post_meta($post_id, '_produto_associado_6'); } } } // Função para pegar o campo 'instagramautor' do autor do post function get_instagram_link_author() { global $post; // Pegar o ID do autor do post $author_id = $post->post_author; // Pegar o valor do campo 'instagramautor' do perfil do autor $instagram_author = get_the_author_meta('instagramautor', $author_id); // Retornar o link do Instagram do autor return esc_url('https://www.instagram.com/' . $instagram_author); } // Criar um shortcode para exibir o botão com a imagem do Instagram function instagram_author_button_shortcode() { $instagram_link = get_instagram_link_author(); $image_url = 'http://cupombalada.openmedia.com.br/wp-content/uploads/2024/01/instagram.svg'; // Gerar o código HTML para o botão com a imagem do Instagram $button_html = ''; $button_html .= 'Instagram'; $button_html .= ''; return $button_html; } add_shortcode('instagram_author_button', 'instagram_author_button_shortcode'); // Função para pegar os campos 'ddd-zap' e 'numero-zap' do perfil do usuário function get_whatsapp_link_author() { global $post; // Pegar o ID do autor do post $author_id = $post->post_author; // Pegar o valor dos campos 'ddd-zap' e 'numero-zap' do perfil do autor $ddd = get_user_meta($author_id, 'ddd-zap', true); $numero = get_user_meta($author_id, 'numero-zap', true); // Se ambos 'ddd-zap' e 'numero-zap' estiverem preenchidos e não forem vazios if ($ddd !== '' && $numero !== '') { // Remover caracteres não numéricos $ddd = preg_replace('/\D/', '', $ddd); $numero = preg_replace('/\D/', '', $numero); // Formar o link do WhatsApp do autor $whatsapp_link = 'https://api.whatsapp.com/send?phone=55' . $ddd . $numero; return esc_url($whatsapp_link); } return ''; // Retorna vazio se algum dos campos estiver vazio ou não preenchido } // Criar um shortcode para exibir o botão com a imagem do WhatsApp function whatsapp_author_button_shortcode() { $whatsapp_link = get_whatsapp_link_author(); $image_url = 'http://cupombalada.openmedia.com.br/wp-content/uploads/2024/01/whatsapp.svg'; // Se o link não estiver vazio if ($whatsapp_link !== '') { // Gerar o código HTML para o botão com a imagem do WhatsApp $button_html = ''; $button_html .= 'WhatsApp'; $button_html .= ''; return $button_html; } return ''; // Retorna vazio se o link estiver vazio } add_shortcode('whatsapp_author_button', 'whatsapp_author_button_shortcode');