Jump to content
gustavozavanin

Anúncio não é aprovado após ataque de Malware

Recommended Posts

Olá Galera, 
O site de um cliente foi atacado por vírus no mês passado. Contratei os serviços da empresa Sucuri.net e eles me entregam os arquivos íntegros e o site funcionando novamente. Para a minha surpresa, o google não quer indexar os meus anúncios, mesmo após a avaliação manual, eles acusam que ainda existem links com redirecionamentos dentro do site.

(Esses são os links que o Google acusa após a avaliação manual)
 


Eu já tentei criar redirects 301 para essas páginas.
Eu não consigo solucionar esse problema. O site está 100% limpo segundo 3 scanners diferentes, incluindo o monitor de problemas do Google.

Por favor se alguém puder me ajudar, já não sei mais o que fazer

Share this post


Link to post
Share on other sites

Olá, sugiro que atualize o WordPress e todos os plugin na última versão, se possível também atualize a versão do PHP no servidor para a Versão 7, mas para isso verifique a compatibilidade de todos os plugins e faça um backup completo antes. Também troque todas as senhas do servidor. Se nada funcionar terá que verificar na unha o código de cada uma das páginas infectadas para remover o redirecionamento.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By eduardodsilvaq
      Erro retornado no console do navegador: 400 bad request
      Rastreei o erro ate essa parte no arquivo admin-ajax.php mudando o valor de resposta de 0 para 1:
      if ( is_user_logged_in() ) { // If no action is registered, return a Bad Request response. if ( ! has_action( "wp_ajax_{$action}" ) ) { wp_die( '0', 400 ); } Tentei de tudo, mas infelizmente nao entendi oq realmente significa esse login e como ele funciona.
      Vi algumas pessoas tendo problema com o host, no meu caso estou usando hostinger. (Nao creio que isso e relevante mas ta ai.)
       
      Código utilizado:
       
      Javascript
      function formValidation() { event.preventDefault(); var name = document.forms["contactForm"]["name"].value; var email = document.forms["contactForm"]["email"].value; var subject = document.forms["contactForm"]["subject"].value; var message = document.forms["contactForm"]["message"].value; document.getElementById('status').innerHTML = ''; var errorMessage="<span class='error'>All fields are required.</span>"; var regEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if (name.trim() == "" ||email.trim() == "" || subject.trim() == "" || message.trim() == "") { document.getElementById('status').innerHTML = errorMessage; return false; } if (!regEx.test(email)) { var errorMessage="<span class='error'>Invalid email.</span>"; document.getElementById('status').innerHTML = errorMessage; return false; } processContactSubmit(); return true; } function processContactSubmit() { var request = new XMLHttpRequest(); request.open("POST", "/wp-admin/admin-ajax.php?action=process_contact_form"); request.onreadystatechange = function() { if(this.readyState === 4 && this.status === 200) { document.getElementById("status").innerHTML = this.responseText; } }; var myForm = document.getElementById("contactForm"); var formData = new FormData(contactForm); request.send(formData); } functions.php
      add_action('wp_ajax_nopriv_process_contact_form', 'process_contact_form'); add_action('wp_ajax_process_contact_form', 'process_contact_form'); //Retirar essa parte para error no console, no contrario ira aparecer no navegador o numero 0. function process_contact_form() { $to = "Recipient Email Address"; $subject = $_POST["subject"]; $headers = "Testing"; $message = $_POST["message"]; $attachments = ""; $sent = wp_mail($to, $subject, $message, $headers, $attachments); if (! $sent) { echo "<span class='error'>Problem in sending mail.</span>"; } else { echo "<span class='success'>Hi, thank you for the message.</span>"; } wp_die(); } Html
      <form name="contactForm" id="contactForm" method="post" onsubmit="return formValidation()" action=""> <p class="comment-form-comment"><textarea id="message" name="message" required="" placeholder="" aria-required="true"></textarea></p> <p class="comment-form-author"><label for="author">Nome: </label> <input id="name" name="name" required="" size="30" type="text" value=" " /></p> <p class="comment-form-author about"><label for="author">Assunto: </label> <input id="subject" name="subject" required="" size="40" type="text" value=" " /></p> <p class="comment-form-email"><label for="email">Email: </label> <input id="email" name="email" required="" size="30" type="text" value="" /></p> <p class="form-submit"><input id="submit" class="submit" name="email_contato" type="submit" value="Enviar" /></p> </form>&nbsp; <h3><div id="status"></div></h3>  
    • By rsdias
      Boa tarde, sou novo aqui, estou iniciando em php, html, css, estou fazendo o meu site, e me deparei com um primeiro problema, estou fazendo ele dinamico mas sem uso de banco de dados por enquanto, mas carrego as paginas através de uma função (Escolhe Pagina):
      <?php function escolhe_pagina() { (isset($_GET['p'])) ? $pagina = $_GET['p'] : $pagina = 'home'; if(file_exists($pagina.'.php')): require_once($pagina.'.php'); else: require_once('home.php'); endif; } ?>  
      Meu index.php ficou assim:
      <?php require_once('funcao_escolhe_pagina.php'); // Função para Selecionar a Página Clicada de Modo dinâmico require_once('funcao_escolhe_titulo.php'); // Função para Selecionar o Título conforme a Página Acessada require_once('funcao_escolhe_estilo.php'); // Função para Selecionar o Estilo conforme a Página Acessada // require_once('header.php'); // Dados Html require_once('navbar.php'); // Dados Menu escolhe_pagina(); //require_once('home.php'); // Dados Body - Home ou Outras Páginas require_once('footer.php'); // Dados do rodapé da Página ?> Ou seja, tem as paginas padrões header, navbar e footer fixas usando require_once, e escolhe a pagina que pode ser home, contato, newsletter, etc atraves da função escolhe_pagina().
      Ele está chamando as paginas corretamente, porém quando entro na pagina de contato ou newsletter ele entra, porém depois de preencher o formulario e ele não chama a pagina de envio_email_contato.php no action e se coloco um link invés de input button ai ele envia o e-mail mas os dados de contatos são enviados em branco, sem preencher, não sei como resolver se alguém puder me ajudar, agradeço desde já.
      Roberto S. Dias
    • By Roberto Pereira Lima Ribei
      Olá pessoal.
       
      O site do meu cliente tinha um problema nas buscas, como mostra a imagem:

       
      Na barra lateral, essa busca era filtrada pelo plugin Search & Filter com a opção de selecionar as categorias de Custom Post Types criadas com o ACF e CPT UI.
       
      A questão é que mesmo havendo vários posts com a palavra chave relacionada "olfato", somente uma publicação aparecia.
       
      Aparentemente, um conflito entre os plugins gerou a falha e consegui corrigir usando o ACF: Better Search.

       
      Só que nessa, ainda não mostrava também os resultados para publicações que constavam a palavra-chave somente em campos personalizados e perdemos a filtragem e o seletor (feito pelo Search & Filter).
       
      Consegui resolver a busca. O post "Teste para busca" tem a palavra-chave somente no campo personalizado.
      Mostrar as categorias de publicações do CPT UI, consegui resolver com o o Plugin Custom Post Types Widget.
       

       
      Agora, preciso filtrar a amostragem dessas categorias de acordo com os resultados de busca e ter um seletor, para que o usuário possa selecionar um ou mais categorias e mostrar apenas os posts relacionados a elas.
       
      Eu encontrei esse código que aprimora os resultados da busca nativa do wordpress, mas não encontro o arquivo onde eu devo colocar esse código. Quando eu fiz as alterações tanto no arquivo seach.php quanto functions.php, o site quebrou. Não faço ideia se errei os parâmetros, argumentos ou o que fiz de errado. (novato)
       
      Essa é a página onde aparecem os resultados:
      https://geroprodev.dbai.com.br/?s=olfato&amp;post_type[]=post&amp;post_type[]=page&amp;post_type[]=acervo&amp;post_type[]=produtos&amp;post_type[]=projetos&amp;post_type[]=evento&amp;fs=1
       
      Essa é a página de busca:
      https://geroprodev.dbai.com.br/busca-teste/
       
      Esse é o link código que encontrei no Github para extender a pesquisa nativa com o Search & Filter que eu quero usar como referência (que eu não encontrei onde vou incluir esse código):
      https://support.searchandfilter.com/forums/topic/compatibility-with-acf-better-search/
       
      https://gist.github.com/fiskhandlarn/f6f86c99e59f62d72ac2ce10be12dc1a/
       
      ☼ IMPORTANTE ☼
      O tema utilizado é o Avada.
      Mesmo com vários plugins sendo indicados para resolver esse problema, neste caso, nenhum deles resolveu.
      A solução mais simples que encontrei foi usar a "Search CPT" e o plugin ACF: Better Search.
      O que eu não encontrei em nenhuma pasta do CPT foi o arquivo search.php ou relacionado.
       

      E esse é o código:
       
      <?php /* ############################## ########### Search ########### ############################## Included are steps to help make this script easier for other to follow All you have to do is add custom ACF post types into Step 1 and custom taxonomies into Step 10 I also updated this work to include XSS and SQL injection projection [list_searcheable_acf list all the custom fields we want to include in our search query] @return [array] [list of custom fields] */ // Define list of ACF fields you want to search through - do NOT include taxonomies here function list_searcheable_acf(){ $list_searcheable_acf = array( "your", "acf", "non-repeater", "field-names", "here", "repeater" => array( "repeater-sub-field1", "repeater-sub-field2" ) ); return $list_searcheable_acf; } /* * [advanced_custom_search search that encompasses ACF/advanced custom fields and taxonomies and split expression before request] * @param [query-part/string] $search [the initial "where" part of the search query] * @param [object] $wp_query [] * @return [query-part/string] $search [the "where" part of the search query as we customized] * modified from gist: https://gist.github.com/FutureMedia/9581381/73afa809f38527d57f4213581eeae6a8e5a1340a * see https://vzurczak.wordpress.com/2013/06/15/extend-the-default-wordpress-search/ * credits to Vincent Zurczak for the base query structure/spliting tags section and Sjouw for comment cleanup */ function advanced_custom_search( $search, $wp_query ) { global $wpdb; if ( empty( $search )) { return $search; } // 1- get search expression $terms_raw = $wp_query->query_vars[ 's' ]; // 2- check search term for XSS attacks $terms_xss_cleared = strip_tags($terms_raw); // 3- do another check for SQL injection, use WP esc_sql $terms = esc_sql($terms_xss_cleared); // 4- explode search expression to get search terms $exploded = explode( ' ', $terms ); if( $exploded === FALSE || count( $exploded ) == 0 ) { $exploded = array( 0 => $terms ); } // 5- setup search variable as a string $search = ''; // 6- get searcheable_acf, a list of advanced custom fields you want to search content in $list_searcheable_acf = list_searcheable_acf(); // 7- get custom table prefixes, thanks to Brian Douglas @bmdinteractive on github for this improvement $table_prefix = $wpdb->prefix; // 8- search through tags, inject each into SQL query foreach( $exploded as $tag ) { $search .= " AND ( (".$table_prefix."posts.post_title LIKE '%$tag%') OR (".$table_prefix."posts.post_excerpt LIKE '%$tag%') OR (".$table_prefix."posts.post_content LIKE '%$tag%') ". // 9- Adds to $search DB data from custom post types "OR EXISTS ( SELECT * FROM ".$table_prefix."postmeta WHERE post_id = ".$table_prefix."posts.ID AND ("; // 9b - reads through $list_searcheable_acf array to see which custom post types you want to include in the search string $metaStatements = array(); foreach ($list_searcheable_acf as $key => $searcheable_acf) { if ( is_array( $searcheable_acf ) ) { foreach ( $searcheable_acf as $repeater_acf ) { array_push( $metaStatements, "(meta_key LIKE '" . $key . "_%_" . $repeater_acf . "' AND meta_value LIKE '%$tag%')" ); } } else { array_push( $metaStatements, "(meta_key = '" . $searcheable_acf . "' AND meta_value LIKE '%$tag%')" ); } } $search .= join( $metaStatements, "\n OR " ); $search .= ") )". // 10- Adds to $search DB data from comments "OR EXISTS ( SELECT * FROM ".$table_prefix."comments WHERE comment_post_ID = ".$table_prefix."posts.ID AND comment_content LIKE '%$tag%' )". // 11 - Adds to $search DB data from taxonomies "OR EXISTS ( SELECT * FROM ".$table_prefix."terms INNER JOIN ".$table_prefix."term_taxonomy ON ".$table_prefix."term_taxonomy.term_id = ".$table_prefix."terms.term_id INNER JOIN ".$table_prefix."term_relationships ON ".$table_prefix."term_relationships.term_taxonomy_id = ".$table_prefix."term_taxonomy.term_taxonomy_id". // 11b- Add custom taxonomies here " WHERE ( taxonomy = 'your' OR taxonomy = 'custom' OR taxonomy = 'taxonomies' OR taxonomy = 'here' ) AND object_id = ".$table_prefix."posts.ID AND ".$table_prefix."terms.name LIKE '%$tag%' )". ")"; // closes $search } // closes foreach return $search; } // closes function advanced_custom_search // 12- use add_filter to put advanced_custom_search into the posts_search results add_filter( 'posts_search', 'advanced_custom_search', 500, 2 );  
      Preciso entender como modificar esses argumentos e onde é que vou inserir as categorias/subcategorias dos Custom Post Types e como filtrar nessa aba lateral.
      É possível fazer isso usando o próprio Custom Post Type Widget? Faço pela busca nativa ou pela busca do CPT?
       
       
      Obrigado desde já!
    • By mamotinho
      Olá, estou com uma dúvida. gostaria de saber como faço para ocultar minhas informações quando alguém for pesquisar pelo meu site, vi que está mostrando meus dados.
       se alguem puder me ajudar fico grato.

    • By maria2022x
      Oi, o "menus" no wordpress(dashboard) nao ta aparecendo dentro do menu "aparencia" .
       
      To usando o plugin polylang e nao to conseguindo mudar o menu do site quando muda o idioma.
       
      Alguem pode ajudar?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.