Все работало хорошо, пока я не обновил ядро WP до версии 6.9.
Что у меня не сработало
- поместите код в wp-config.php
- используйте другой приоритет для перехватчика
- используйте разные перехватчики ('wp', 'wp_head', 'wp_foter', 'plugins_loaded')
Код: Выделить всё
add_action('init', function(){
if( ($_SERVER['HTTP_SEC_FETCH_DEST'] ?? "") != 'iframe' ) {
return;
}
$app_domain = 'https://example.com';
if (strpos($_SERVER['HTTP_REFERER'], $app_domain) !== false){
header("Content-Security-Policy: frame-ancestors " . $app_domain );
} else {
header("Content-Security-Policy: frame-ancestors 'self' ");
}
}, PHP_INT_MAX);
Подробнее здесь: https://stackoverflow.com/questions/798 ... dpress-6-9