Поддержка Проблемы и решения yoast установить og:locale

  • Здравствуйте!
    Неработает ru_UA локаль.
    делаю так:

    add_filter('wpseo_locale', 'override_og_locale');
    function override_og_locale($locale)
    {
        return "ru_UA";
    }

    и так:

    function yst_wpseo_change_og_locale( $locale ) {
        return 'ru_UA';
    }
    
    add_filter( 'wpseo_locale', 'yst_wpseo_change_og_locale' );

    а оно выводит ru_Ru

    Усли ставлю например nl_NL — то нормально вводит nl_NL

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Модератор Yui

    (@fierevere)

    永子

    https://make.wordpress.org/polyglots/teams/?locale=ru_UA

    потому что такой локали нет (и даже не знаю зачем она вообще нужна)

    а какую ставить тогда?

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    Возможно, эту.

    Модератор Yuri

    (@yube)

    потому что такой локали нет

    А у моей Убунты есть 🙂

    $ localedef --list-archive | grep ru_
    ru_RU.utf8
    ru_UA.utf8
    

    Денис, отот язык без страны и локалью назвать сложно. По логике вещей должно было бы быть uk_UA. Как говорится, за державу обидно 🙁

    Модератор Yui

    (@fierevere)

    永子

    Локаль ru_UA отличается от локали ru_RU всего тремя буквами, а именно і — русское и, є -русское е, и ї — нечто среднее между й и ё. В полноценной локали ua_UA буквы (фонетические звуки) г, х, з, c, ф, они правильно пишутся с черточками над верхом буквы.

    выглядит как суррогат русского языка на клавиатуре с украинской раскладкой, создавать ради этого отдельную локаль в WP? Как-то не очень видится в этом смысл.

    Разве что сайт представить с этой локалью ПС и другим сайтам в заголовках.
    Наверное ТС нужно именно это? А не что-то там еще ?

    Юрий,
    ru_RU — русский язык, Россия (сокращается до просто ru)
    uk_UA — украинская мова, Украина (сокр. uk)
    ru_UA — русский язык, Украина
    PS: в убунте очень жирный архив локалей, с учетом его подгрузки в память…

    выглядит как суррогат русского языка на клавиатуре с украинской раскладкой

    я просто поаплодирую, оставив без комментариев.
    дабы не разжигать.

    А вручную как добавить локаль?

    Модератор Yui

    (@fierevere)

    永子

    ну если кодом из первого сообщения не сработало, хотя наверное должно было бы. Кеши почистите все, попробуйте еще.

    Можно так, убрать og:locale представление от Yoast
    https://developer.yoast.com/features/opengraph/api/changing-og-locale-output/

    function remove_locale_presenter( $presenters ) {
        return array_map( function( $presenter ) {
            if ( ! $presenter instanceof Yoast\WP\SEO\Presenters\Open_Graph\Locale_Presenter ) {
                return $presenter;
            }
        }, $presenters );
    }
    
    add_action( 'wpseo_frontend_presenters', 'remove_locale_presenter' );

    установить плагин (ну или в header.php темы вручную прописать)
    https://ru.wordpress.org/plugins/dco-insert-analytics-code/

    перед </head> добавить мета тег:

    
    <meta property="og:locale" content="ru_UA" />

    Однако, стоит также учесть момент указанный тут:
    https://wordpress.org/support/topic/oglocale-doesnt-support-en_au/?view=all#post-11203910

    Facebook поддерживает ограниченный набор значений og:locale
    на июль 2018 года этот набор есть по ссылке выше.
    Если вы установите тег в неподдерживаемое значение — ничего хорошего не получите от этого точно. Уточнить актуальный набор поддерживаемых значений og:locale со стороны Facebook можете сами 😉 Если там нет ru_UA, то оставить ru_RU будет лучшим вариантом.

    Не просто так же Yoast не дает вам установить локаль, которой нет в списке поддерживаемых.

    СПасибо Yui !
    Так и сделал.

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Тема «yoast установить og:locale» закрыта для новых ответов.