0

ローカルホストで実行されているWordPressで小さなプラグインをアクティブ化しようとしていますが、次のエラーが発生します。

プラグインは、アクティブ化中に6文字の予期しない出力を生成しました。「ヘッダーはすでに送信されています」というメッセージ、シンジケーションフィードの問題、またはその他の問題に気付いた場合は、このプラグインを非アクティブ化または削除してみてください。

<?php
/*
Plugin Name: myphoto Plugin
Description: A plugin to retrieve photos and share them on the wordpress.
Version: 1.0
Author: Saeed pirdost
Copyright: 2012,  Saeed pirdost  
*/
?>
<?php
myprint();
function myprint()
{
    echo "hello";
}
?>
4

2 に答える 2

3

いくつかのものを取り外して、適切なフックを使用してみてください。

<?php // remove all spaces up of here too
/*
  Plugin Name: RePhotosPic Plugin
  Description: A plugin to retrieve photos and share them on the wordpress.
  Version: 1.0
  Author: Saeed pirdost
  Copyright: 2012,  Saeed pirdost
 */

// remove     ?> <?php

add_filter('admin_notices', 'hello');

function hello()
{
    echo 'Hello';
}

// remove ?>

アップデート:

WPmyprint();フックの内側にも配置します。このような:

add_filter('admin_notices', 'myprint');

function myprint()
{
    echo "hello";
}
于 2013-01-18T23:38:30.290 に答える
2

エラーは、何が問題なのかを示します。プラグインは、その関数の 1 つが WordPress によって呼び出されない限り、出力を生成するべきではありません。WordPress が管理パネルをレンダリングしようとしてビジー状態のときに、Yours は「Hello」を書き込もうとします。それは行儀の良いプラグインではありません。

画面に「Hello」を表示したい場合は、ページのレンダリング中に WordPress によってトリガーされるアクションにフックを登録し、そこで出力を実行します。

于 2013-01-18T23:36:32.883 に答える