Estou tentando entender a higienização de dados (não a validação de dados) para me ajudar a escrever temas seguros para o WordPress. Pesquisei na Internet tentando encontrar um guia abrangente para desenvolvedores de temas, detalhando as melhores práticas. Me deparei com alguns recursos, incluindo a página do codex intitulada Validação de Dados, embora nenhum fosse útil para mim. A página do codex lista as funções de higienização disponíveis, seu uso e o que elas fazem, mas falha ao explicar por que você usaria uma sobre a outra ou em que situação você usaria uma função de higienização específica. O objetivo desta publicação é solicitar a todos que contribuam com exemplos de código inválido / não autorizado e como ele deve ser reescrito para uma limpeza adequada. Pode ser um código geral para higienizar o título da postagem ou post thumnails src ou códigos mais elaborados que lidam com a higienização de$_POST
dados para solicitações do Ajax.
Além disso, eu gostaria de saber se as funções do WordPress para adicionar / atualizar o banco de dados (por exemplo, as mencionadas no bloco de código abaixo) cuidam automaticamente do trabalho de higienização para você? Se sim, existem exceções quando você tomaria medidas adicionais para limpar os dados enviados para essas funções do WordPress?
add_user_meta
update_user_meta
add_post_meta
update_post_meta
//just to name a few
Além disso, a higienização precisa ser feita de maneira diferente ao ecoar HTML no PHP e contra o PHP embutido no HTML? Para ser mais claro sobre o que estou perguntando, aqui está o código:
<?php echo '<div class="some-div ' . $another_class . '" data-id="' . $id . '" >' . $text . '</div>'; ?>
<div class="some-div <?php echo $another_class; ?>" data-id="<?php echo $id; ?>"><?php echo $text; ?></div>
Ambas as afirmações acima alcançam a mesma coisa. Mas eles precisam ser santificados de maneira diferente?