Flag incorrectly constructed mailto links
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece pelo sniff ProperEscapingFunction mencionado na issue e compare o tratamento dos exemplos de PHP listados que violam e que não violam a regra. A tarefa estará concluída quando links mailto construídos incorretamente forem reportados, enquanto valores mailto passados por esc_url() forem aceitos.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
What problem would the enhancement address for VIP?
Some developers are not aware that esc_url() supports more than just the http and https protocols. The default list also includes ftp, ftps, mailto, news, irc, gopher, nntp, feed, and telnet as well.
of those extra ones, the most common is mailto, and a common mistake is to split a URL into a static 'mailto:' and a email address variable/string escaped with something that isn't esc_url().
Describe the solution you'd like
Add a new sniff, or consider improving ProperEscapingFunction, so that we look for `'mailto:' string before an escaping function.
What code should be reported as a violation?
<a href="mailto:<?php echo esc_html( $foo ); ?>">Email us</a>
<a href="mailto:<?php echo esc_attr( $foo ); ?>">Email us</a>
<a href="mailto:<?= esc_html( $foo ); ?>">Email us</a>
<a href="mailto:<?= esc_attr( $foo ); ?>">Email us</a>
<a href="<?php echo 'mailto:' . esc_attr( $foo ); ?>">Email us</a>
<a href="<?php echo 'mailto:', esc_attr( $foo ); ?>">Email us</a>
There are likely other ways to get a similar output.
What code should not be reported as a violation?
<a href="<?php echo esc_url( 'mailto:' . $foo ); ?>">Email us</a>
<a href="<?php echo esc_url( "mailto:$foo" ); ?>">Email us</a>
- Linguagem predominante
- PHP
- Estrelas
- 261
- Forks
- 44
- Merge médio
- 3d 9h
- PRs com merge (30d)
- 10
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de Automattic/VIP-Coding-Standards
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
Automattic/VIP-Coding-Standards#876 ·
Mantenedores costumam responder em até 1 dia
-
Breaking Change Type: Maintenance
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
Automattic/VIP-Coding-Standards#849 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
Automattic/VIP-Coding-Standards#832 ·
Mantenedores costumam responder em até 1 dia
-
WordPress.WP.AlternativeFunctions.file_system_operations error messages cannot be fixed anymoreAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
Automattic/VIP-Coding-Standards#823 ·
Mantenedores costumam responder em até 1 dia
-
Status: Awaiting feedback
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 45/100
Automattic/VIP-Coding-Standards#754 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
Todas as issues de Automattic/VIP-Coding-Standards
Issues semelhantes
-
sync-en
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 84/100
Mantenedores costumam responder em até 1 dia
-
[xExtension-ImageProxy] Video poster images are not proxiedTalvez já em andamento @NopeCharon assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
FreshRSS/Extensions#561 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
woocommerce/google-listings-and-ads#4008 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Awaiting Triage bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
Mantenedores costumam responder em até 2 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 73/100
Openpanel-dev/openpanel#610 · 1 comentário ·
Mantenedores costumam responder em até 1 dia