Resposta atrasada
Breve explicação
apply_filters()
interage com a global $wp_filters
matriz. Basicamente, ele apenas verifica o array se o filtro atual (ou gancho) tem uma ação (função / callback) anexada e então o chama.
Explicação longa
Quando você anexa um retorno de chamada / ação a um filtro ou gancho, basta adicionar o nome do retorno de chamada à matriz de filtros global. Quando, então, no código (por exemplo, um arquivo de template, core ou plugin) uma chamada para do_action()
ou apply_filters()
acontece, o WordPress procura no array e chama o callback. A única coisa mais especial com filtros do que com ganchos é que ele retorna o valor (para tratamento posterior) em vez de apenas disparar o retorno de chamada. Resumindo: os ganchos servem para inserir dados, enquanto os filtros servem para modificar os dados.