プラグインを書くのは初めてです。testplugin.phpファイルとajax.phpファイルがあります。
Testplugin.phpの私のコードは
_global $session;
print_r($abc); //$abc is array of my data ..
$session['arrayImg']=$abc; //saving data in session
echo $session['arrayImg']; //displayin "Array"
_
そして、私のajax.phpは次のコードで構成されています
_global $session;
$abc = $session['arrayImg'];
print_r ("abs== ".$abc); //displayin "abs== Array"
_
session_start();
を使用する場合
次のエラーが表示されます
_Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
_
プラグインの1つのファイルから別のファイルにデータの配列を送信したいだけです...
//プラグインまたはテーマでfunctions.php
function register_session(){
if( !session_id() )
session_start();
}
add_action('init','register_session');
// SESSION
データを設定するには-
$_SESSION['arrayImg'] = $abc;
// ajaxフック関数のデータを取得するには-
function resolve_the_ajax_request(){
if( !session_id())
session_start();
$abc = $_SESSION['arrayImg'];
}
私の場合、プラグインのアクティベーションでもそのセッション変数を使用していました。それで、非正統的な何かをしました。 session_startをフックで定義する代わりに、プラグインの最初の行として作成しました:)。
プラグインを使用して、wordpress=ファイルをスキャンするとすぐにセッションを開始します。
最後に、ユーザーのログアウト時にセッションを破棄しません。変数の設定を解除するだけです。これは、他のプラグインもセッションを使用している場合に備えてです。セッションを破棄すると、他のプラグインに影響する場合があります。
乾杯。