SilentShield

Identidade dos formulários

Como o SilentShield distingue um formulário de outro — e porque um formulário num cabeçalho ou rodapé partilhado pode ser contado várias vezes.

Porque é que um formulário aparece várias vezes

Cada formulário recebe uma chave, e tudo o que configura — a proteção, o que acontece consoante a avaliação — depende dessa chave. Se um formulário não tiver nada que o identifique, a chave tem de vir da página onde foi encontrado. Um formulário num cabeçalho ou rodapé partilhado obtém então uma chave diferente em cada página: aparece uma vez por página, e uma definição abrange apenas um deles.

Dê um nome ao formulário por si

Um atributo resolve isto de forma permanente. É a única identidade que mais nada pode sobrepor, porque é a única que está nas suas mãos:

<form data-ss-form="newsletter">
  <input type="email" name="email" required>
  <button type="submit">Subscribe</button>
</form>

Escolha um nome que descreva o formulário, mantenha-o estável e use um diferente para cada formulário distinto. O nome nunca chega aos seus visitantes. Alterações posteriores ao markup, mesmo campos adicionais, deixam de alterar a identidade.

O que é usado quando não há marcador

Sem marcador, usamos a primeira coisa estável que o formulário oferece:

Reconhecido porO que isso significa
data-ss-formDeu um nome ao formulário. Estável entre páginas e ao longo de redesenhos.
actionO formulário envia para um endereço específico, e esse endereço é o mesmo em todas as páginas.
idUm id escrito por si. Os id gerados — o ":r1:" do React ou os que têm longas sequências de dígitos — são ignorados, porque mudam a cada carregamento.
nameO atributo name do formulário.
pathNada identificou o formulário, por isso usa-se a página onde foi encontrado. É este o caso que conta um formulário várias vezes.

Um formulário reconhecido pelo caminho da sua página não é o mesmo formulário na página seguinte, no que toca às suas definições. Se puder adicionar o marcador, é essa a solução. A página de formulários assinala-os, para que veja quais estão afetados.

Quando não pode alterar o markup

Muitos formulários vêm de um tema ou plugin que não edita. Na página de formulários pode selecionar as linhas que são realmente um só formulário e fundi-las: as definições do formulário fundido aplicam-se então onde quer que ele apareça. O mesmo efeito do marcador, registado do nosso lado em vez de na sua página.

O que acontece quando um formulário muda

Se um formulário ganhar uma identidade melhor — adiciona um marcador, ou surge um atributo action — mantém a linha existente e tudo o que configurou. É reconhecido como o formulário que já era. As estatísticas anteriores à alteração ficam com a identidade antiga e não são transferidas.

Ocultar formulários cuja página já não existe

Uma análise visita cada página apenas uma vez. Se remover uma página ou toda uma secção de idioma, os respetivos formulários permanecem, por isso, na lista. Na página de formulários, procure o caminho, por exemplo «/nl-nl/», selecione todos os resultados e oculte-os.

Um formulário oculto deixa de estar protegido: deixamos passar sem verificação os envios feitos através dele, mesmo que estivesse definido para proteger. Se ainda assim chegarem envios, a página de formulários mostra um aviso que pode fechar. Se voltar a mostrar o formulário, as suas definições voltam a aplicar-se.

Uma nova análise não volta a mostrar um formulário oculto. Se mesmo assim o encontrar, a lista «Formulários ocultos» indica que foi encontrado novamente: a página parece continuar a existir. Aí pode voltar a mostrar os formulários um a um ou todos de uma vez.

Encontre como cada formulário foi reconhecido, e a opção de os nomear ou fundir, em Chaves API → Formulários.