• 解決済 syrup23

    (@syrup23)


    以下のような状態で困っています。どなたか糸口だけでも示唆いただきたく、よろしくお願い申し上げます。

    インデックスデータが異常な多さ(本来のページ数の約8倍)だったので、XMLサイトマップをチェックしてみたところ、大量のCatchable fatal errorページが生成されていました。

    エラーページは正常なページのパーマリンクに comp という枝番(?)が付与されているおり、正常に生成されているページに対して複数の +compページが存在する状態です。
    例1)example.com/POSTNAME comp
    例2)example.com/POSTNA comp
    例3)example.com/POSTNAME comp-2

    +compのページの内容は以下の記載になっています。

    Catchable fatal error: Object of class WP_Error could not be converted to string in /home/self-image/example.com/public_html/wp-content/themes/XXXXX/single.php on line 93

    93行目はパンくずの記述で、以下のようになります。
    この記述内に誤りがあるはずと思ってチェックしてみたのですが、見つけることが出来ませんでした。

    <div class=”p_list”><div class=”p_list_inner”>“><?php bloginfo(‘name’); ?> > <?php $postcate = get_the_category(); ?><?php echo get_category_parents($postcate[0]->term_id,TRUE,’ > ‘); ?> <?php if(mb_strlen($post->post_title)>32) { $title= mb_substr($post->post_title,0,32) ; echo $title.’…’;} else {echo $post->post_title;}?></div></div>

    wp-config.phpのモードは false になっております。

    このような状態になってしまう原因をいろいろと検索して回ったのですが見つけることが出来ませんでした。

    compがついたページができる場合・状況などだけでもわかれば解決策も少しは見えるかと思うのですが・・。

    お力をお貸しいただきたく、どうぞよろしくお願い申し上げます。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • Tsuyoshi.

    (@andante0727)

    WP_Error を返しているのは get_category_parents の部分だと思いますよ。

    $postcate[0]->term_id の値を確認したほうがいいかもしれませんね。

    ソースコードは code ボタンを押して整形してくださいね。

    あとは、WP_Error のメッセージの確認も一応。

    <?php
    $cat = get_the_category();
    $return = get_category_parents( $cat[0]->term_id, true, ' > ' );
    if( is_wp_error( $return ) ) {
        echo $return->get_error_message();
    }
    else
    {
        echo $return;
    }
    ?>
    トピック投稿者 syrup23

    (@syrup23)

    Tsuyoshi.さま、ご返信いただきまして、ありがとうございます。

    >WP_Error を返しているのは get_category_parents の部分だと思いますよ。

    との糸口からだんだん問題が解決していきまして、時間はかかりましたがクリアに出来ました!
    感謝です!

    ソースコードの件、すみません、気をつけます。汗

    どのように解決したかを一応報告しておこうと思います。

    まず、よくよくこのエラーをはいているページURLを見たところ、投稿に添付された画像ページ(attachment page)でした。

    使用しているサイトマップ用プラグイン、Google XML Sitemapsは、attachmentページはデフォルトで送信しないはずですので、このプラグインの削除&再インストールを行ってみましたが、状況は変わりませんでした。

    次に、使用しているテーマが非公式(野良)のため、Tsuyoshi.様のリプライから、カテゴリIDの取得の記述に、問題があるか何らかの理由でバグっていると考えました。
    そこで、Breadcrumb NavXTプラグインを入れてコードを差し替えてみたところ、エラーは出なくなりました。

    これで解決かと思われたのですが、エラーは出ないものの、サイトマップにはexample.com/POSTNAME compというattachmentのURLがまだリストアップされてしまう状況は変わりませんでした。

    これについては、以下のページのfunctions.phpへのコードを追記して404とすることで対処できました。
    http://www.seotemplate.biz/blog/wordpress-tips/12786/

    低品質ページ(今回はエラー表示されたattachmentページ)URLをサイトマップで送りつけたとしてもエラーは出ませんが、サイトマップが修正された後のアクセス数や掲載順位などから見る限り、やはりサイト評価に影響があるように思いました。

    問題は解決しましたので、トピックは閉めさせていただきます。
    ありがとうございました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「Catchable fatal errorページが大量作成されている」には新たに返信することはできません。