Ваш тернарный оператор не работает из-за того, что вы не выводите его результат в HTML-атрибуте. В приведенном вами коде вы используете тернарный оператор, но не делаете вывод, а просто записываете его как часть строки.
Ваша конструкция в данном виде не будет правильно интерпретироваться. Чтобы исправить это, вам нужно использовать `echo` для вывода значения тернарного оператора. Попробуйте следующее:
```php
<header class="<?php echo (is_front_page()) ? 'black_bg' : 'white_bg'; ?>">
```
В этом исправленном варианте с помощью `echo` вы выводите результат тернарного оператора в атрибут класса элемента `header`. Теперь код будет работать правильно, выводя либо `black_bg`, либо `white_bg` в зависимости от того, находитесь ли вы на главной странице.