• 解決済 izag

    (@izag)


    「OGP用の記述」と「投稿記事のリスト用の記述」を設定すると「OGP用の記述」が正しく反映されません。

    header.phpにOGP用の下記記述をしています。
    下記OGP用の記述だけでは問題なく、例えばID 1588のページではOGPの記述にはID 1588の情報が正しく反映されます。
    ————————————————————-
    <?php
    if (is_single()){//単一記事ページの場合
    if(have_posts()): while(have_posts()): the_post();
    echo ‘<meta property=”og:description” content=”‘.mb_substr(get_the_excerpt(), 0, 100).'”>’;echo “\n”;//抜粋を表示
    endwhile; endif;
    echo ‘<meta property=”og:title” content=”‘; the_title(); echo ‘ | ‘; bloginfo(‘name’); echo ‘”>’;echo “\n”;//単一記事タイトル | ブログのタイトルを表示
    echo ‘<meta property=”og:url” content=”‘; the_permalink(); echo ‘”>’;echo “\n”;//単一記事URLを表示
    } else {//単一記事ページページ以外の場合(アーカイブページやホームなど)
    echo ‘<meta property=”og:description” content=”‘; bloginfo(‘description’); echo ‘”>’;echo “\n”;//「一般設定」管理画面で指定したブログの説明文を表示
    echo ‘<meta property=”og:title” content=”‘; bloginfo(‘name’); echo ‘”>’;echo “\n”;//「一般設定」管理画面で指定したブログのタイトルを表示
    echo ‘<meta property=”og:url” content=”‘; bloginfo(‘url’); echo ‘”>’;echo “\n”;//「一般設定」管理画面で指定したブログのURLを表示
    }
    ?>
    <meta property=”og:site_name” content=”<?php bloginfo(‘name’); ?>”>
    <?php
    $str = $post->post_content;
    $searchPattern = ‘/<img.*?src=([“\’])(.+?)\1.*?>/i’;//投稿にイメージがあるか調べる
    if (is_single()){//単一記事ページの場合
    if (has_post_thumbnail()){//投稿にサムネイルがある場合の処理
    $image_id = get_post_thumbnail_id();
    $image = wp_get_attachment_image_src( $image_id, ‘full’);
    echo ‘<meta property=”og:image” content=”http://aaaaaa.com&#8217;.$image[0].'”>’;echo “\n”;
    } else if ( preg_match( $searchPattern, $str, $imgurl ) && !is_archive()) {//投稿にサムネイルは無いが画像がある場合の処理
    echo ‘<meta property=”og:image” content=”‘.$imgurl[2].'”>’;echo “\n”;
    } else {//投稿にサムネイルも画像も無い場合の処理
    echo ‘<meta property=”og:image” content=”http://aaaaaa.com/wp-content/themes/aaaaa/images/ogp_icon.gif”>&#8217;;echo “\n”;
    }//投稿にサムネイルも画像も無い場合に表示する画像のURL
    } else {//単一記事ページページ以外の場合(アーカイブページやホームなど)
    echo ‘<meta property=”og:image” content=”http://aaaaaa.com/wp-content/themes/aaaaa/images/ogp_icon.gif”>&#8217;;echo “\n”;
    }//単一記事ページページ以外の場合に表示する画像のURL
    ?>
    ————————————————————-

    しかし投稿記事内(例えばID 1588のページ)に投稿記事のリスト用の下記記述を作成すると、OGP用の記述には下記設定の ID 3623の情報が反映されてしまいます。

    ————————————————————-
    <?php $posts = get_posts(‘include=807, 3639, 3623’); global $post; ?>

    ————————————————————-

    何に問題があるのでしょうか?
    どこかに問題があると思うのですが、素人のため全くわかりません。
    お手数ですが、ご教授よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「「OGP用の記述」が正しく反映されません」には新たに返信することはできません。