-1

開発中のプラグインでこのエラーが発生しています。
localhost では問題なく動作しますが、リモート サーバーでは次のように失敗します。

警告: ヘッダー情報を変更できません - 866 行目の /path_wordpress/public_html/wp-includes/pluggable.php で既に送信されたヘッダー (/path_wordpress/public_html/wp-admin/includes/template.php:1657 で開始された出力)

ファイルの先頭と末尾の前後のすべてのスペースを削除しました (このエラーの一般的な理由)。関連するセッションはありません。

他にどのような理由が考えられますか?

===
編集1

wp-admin/includes/template.php:

$attributes = '';
if ( is_array( $other_attributes ) ) {
    foreach ( $other_attributes as $attribute => $value ) { // line 1657 
        $attributes .= $attribute . '="' . esc_attr( $value ) . '" '; // Trailing space is important
    }
} else if ( !empty( $other_attributes ) ) { // Attributes provided as a string
    $attributes = $other_attributes;
}

===
編集2

wp-admin/wp-includes/pluggable.php:

if ( !function_exists('wp_redirect') ) :
/**
 * Redirects to another page.
 *
 * @since 1.5.1
 * @uses apply_filters() Calls 'wp_redirect' hook on $location and $status.
 *
 * @param string $location The path to redirect to
 * @param int $status Status code to use
 * @return bool False if $location is not set
 */ // line 866
function wp_redirect($location, $status = 302) {
    global $is_IIS;
4

1 に答える 1

1

通常、ヘッダー情報を変更できないのは、いくつかの html が出力された後に header() またはリダイレクト関数を使用しようとすると発生します。Wordpress ネイティブ コード ファイルのいずれかに含まれている可能性は低いため、ページをリダイレクトしようとするカスタム コードを作成した可能性があることを確認してください。

参考: http: //php.net/manual/en/function.header.php

于 2012-07-04T02:54:50.033 に答える