Archives 2015

とあるプラグインを読み込んで別ウィンドウでテーマフォルダのテンプレートを開く方法

http:// wrapper is disabled in the server configuration by allow_url_include=0

というエラーがありまして。その解決方法

$fullpath=dirname(__FILE__);

    $path=strrpos($fullpath,‘/’);

    $path9=strrpos($fullpath,‘/’);

    $plugin-name=substr($fullpath,0,$path).‘/plugin-name;

     define(‘PDIR’,$plugin-name);

ここまでプラグインのTOPで行う

以下を別窓で開いたテーマフォルダのテンプレートに書く

require_once (PDIR.‘/plugin-file.php);

このプラグインを有効化する際に、9文字分の予期しない出力が生成されました。

自作のプラグインを有効化しようとしたら、表題のメッセージが表示されました。

この後ログオフしたら、cookie  がどうとかでWordPressにログインできない

とりあえず、うかつにつけたコメント文/* */は削除。//ならOK

BOMがどうとか書いてあったが、BOMなしUTF改行もLFでもんだいなさそう。一行ずつ試すが9文字の元は不明
なんといってもプラグインは正常に動作する。他のサーバーではデないがエックスサーバーだけでている。

結局wp-config.php  の define(‘WP_DEBUG’, false);をtrueにして、あちこちNoticeを潰したら直った。

プラグインでCSSファイルを読み込む方法

CSSを読み込むには、以下の関数を使用します。
wp_enqueue_style

$pdir; にはこのプラグインフォルダまでのフルパスが格納されておる

function your_styles() {
global $pdir;
wp_enqueue_style( ‘message’,  $pdir . ‘/message.css’, array(), null, ‘all’);
}
add_action( ‘wp_enqueue_scripts’, ‘ your_styles’);

 

  • $handle:(必須) (required) ハンドル名を指定 [デフォルト: なし]
  • $src:(任意)ファイルパスを指定 [デフォルト:false]
    get_option(‘siteurl’) // ルートディレクトリ
    get_bloginfo(‘stylesheet_directory’) // 子テーマのディレクトリ
    get_bloginfo(‘template_url’) // 親テーマのディレクトリ
    get_bloginfo(‘plugins_url’) // プラグインのディレクトリ
  • $deps:(任意)依存関係を明示。特定のCSSファイルの後に読み込みを行わせたい場合に指定する。ハンドル名で明示 [デフォルト:array()]
  • $ver:(任意)ファイルのバージョン番号を指定 [デフォルト:false]
  • $media:(任意) CSSのメディアタイプを指定 [デフォルト:’all’]

Fatal error: Call to undefined function

自作プラグイン内の関数が存在しないと出る。・・・

ファイル名は正しい。参照も正しい。同じフォルダの別の関数は実行可能。パーミッションでもない。

sample(); ←これで呼び出すが、他の関数は呼び出せる。

$abcde = sample() ; これで実行できた。  意味はわからない・・

日付フォーマットをハイフン区切りに

datetimepicekrで入れた日付がMySqlに入らない。

→datetimepicekr.jsを開いて直接編集パターン

142  format:            'Y-m-d',
204  id:'ここに独自ID',
205  roundTime:'round', // ceil, floor
206  className:'独自クラス',

→PHPで直すパターン
datetimepicker timestampと同じ型にすれば入るだろう。

2015/02/28 17:20:00 → 2015-02-28 17:20:00

date( “Y-m-d H:i:s”,strtotime( $_POST[“dhms”] ))

これでスッキリ解決。