Tem esse trecho de código que está me deixando na dúvida:
Por mais que eu tente, não consigo entender por que o número de publicações feitas no período é multiplicado pela porcentagem de publicações lidas exigidas, e depois esse resultado é usado como valor mínimo. Se a intenção aqui é calcular a porcentagem de publicações lidas, não seria o número de publicações lidas dividido pelo total de publicações, multiplicado por 100?
Supondo que tenham sido feitas 9 publicações nos últimos x dias, e a configuração exija apenas 2, não deveria o método simplesmente retornar 2, já que é menor que o limite máximo de publicações?
A configuração do site tl3_requires_posts_read é uma porcentagem. Digamos que seja 10. Enquanto o limite mantém o requisito vinculado a algo razoável. Digamos que seja 100.
“Um usuário deve ler 10% de todas as publicações no período, mas não mais de 100”
Digamos que tenham sido feitas 500 publicações nesse período.
Nesse caso, seriam necessárias 50 publicações lidas para atender ao requisito (10% dessas publicações)
A aritmética é feita como 500 * (10.0/100.0) para obter o resultado 50
O limite estabelece um limite superior, no entanto.
Se o seu limite for maior que 50 (digamos 100), então não terá efeito.
[50, 100].min retorna 50
Mas e se houver 100.000 publicações em um mês? Nesse caso, sem o limite, alguém teria que ler 10.000 publicações para atender ao requisito.