У меня есть домашняя страница WP с двумя языками, и я использую плагин Polylang для этого;пока все хорошо.
Теперь у меня установлена тема для США, которая обеспечивает статьи блога только в формате даты США (например, «28 сентября, 2017»).К сожалению, Polylang только правильно переводит названия месяцев, но не меняет формат даты как таковой.
В php-файле блога темы используется:
get_the_time('d F, Y')
Если я вручную изменю этот формат на локальный формат даты, он также будет применяться к английской версии, что, конечно, не имеет смысла.Вместо этого я хочу подключиться к файлу functions.php и заставить Polylang изменить формат даты, как правило, в соответствии с языком страницы.
Я нашел этот фрагмент для WPML (другой многоязычный WP).плагин), который должен сделать трюк:
add_filter( 'option_date_format', function( $format ) {
do_action( 'wpml_register_single_string', 'Date formats', 'Date format', $format );
return apply_filters( 'wpml_translate_single_string', $format, 'Date Formats', 'Date format' );
} );
add_filter( 'option_time_format', function( $format ) {
do_action( 'wpml_register_single_string', 'Date formats', 'Time format', $format );
return apply_filters( 'wpml_translate_single_string', $format, 'Date Formats', 'Time format' );
} );
К сожалению, мне не удается сделать это для Polylang.Я знаю, что нужно использовать следующую функцию:
pll_register_string( $name, $string, $group, $multiline );
См .: https://polylang.pro/doc/function-reference/#pll_register_string
Кто-нибудь знает, как это сделать?