Как показать SEO-заголовок Yoast в шорткоде? - PullRequest
0 голосов
/ 30 марта 2020

Я ищу способ показать Yoast Seo Title во внешнем интерфейсе как шорткод.

Например: для отображения заголовка страницы в качестве шорткода я добавил

<?php function page_title_sc( ){ return get_the_title(); } add_shortcode( ‘page_title’, ‘page_title_sc’ );

к функциям. php затем добавил [page_title] к веб-интерфейсу, и это нормально. Но я хочу, чтобы заголовок страницы SEO (yoast seo). Есть идеи?

Ответы [ 2 ]

0 голосов
/ 01 апреля 2020

Спасибо, что ответили.

Возвращает заголовок страницы, а не заголовок seo. :( Мне интересно показывать заголовок seo на каждой странице (не только в сообщениях).

0 голосов
/ 30 марта 2020

Это должно получить заголовок SEO Yoast для поста. Поместите это в ваш обратный вызов с коротким кодом и верните $title:

$title = get_post_meta($post_id, '_yoast_wpseo_title', true);

// so


function page_title_sc() {
    global $post_id;

    $title = get_post_meta($post_id, '_yoast_wpseo_title', true);

    // may want to fallback to default title if SEO title is not set
    if (!$title) {
        $title = get_the_title($post_id);
    }

    return $title;
}
add_shortcode( 'page_title', 'page_title_sc' );
...