1. TOP
  2. Wordpress

[Wordpress] wp_deregister_script が誤って呼び出されちゃう問題

カテゴリ:
Web
Wordpress
| トラックバック(0)
投稿者:yo yo
Notice: wp_deregister_script が誤って呼び出されました。管理画面では jquery スクリプトの読み込みをオフにしないでください。フロントエンドテーマだけをターゲットにするには、wp_enqueue_scripts フックを使いましょう。 詳しくは WordPress のデバッグをご覧ください。 (このメッセージはバージョン 3.6.0 で追加されました) in ./wp-includes/functions.php on line 4139
// テーマ内のfunction.php
function load_cdn() {
	if ( is_admin() ) {
		return;
	}
	wp_deregister_script('jquery');
}
add_action('init', 'load_cdn'); // 間違いだから消す
add_action('wp_enqueue_scripts', 'load_cdn'); // こっちが正解

ヘッダ内でデフォルトで読み込まれるjQueryをテーマフォルダのfunction.php内にwp_deregister_scriptを記述してキャンセルする。その時にアクションフックにwp_enqueue_scriptsを使ってないと警告される。上の例ではinitを使っていると警告がでる。

[Wordpress] 管理画面上部にNoticesを出力する。

カテゴリ:
Web
Wordpress
| トラックバック(0)
投稿者:yo yo
	// Notices
	add_action('admin_notices', 'current_pagehook' );
	function current_pagehook(){
		global $hook_suffix;
		if( !current_user_can( 'manage_options') ) return;
		echo '

hook_suffix : '.$hook_suffix.'

'; }

[Wordpress] update_attached_fileは$fileが既存値と同じだとfalseを返す?

カテゴリ:
Web
Wordpress
| トラックバック(0)
投稿者:yo yo

update_attached_file( $attachment_id, $file )の$fileが既に登録されているファイルパスと同じだとfalseを返す様だ。

Wordpressで画像を投稿していくとデフォルトではuploadsディレクトリに画像ファイルが追加されていく。サムネイルが多いとuploadsディレクトリが画像ファイルだらけでとても面倒くさい。

サーバを移管したい時とか、他のCMSに乗り換えたい時とか、とても苦労する。FTPソフトでディレクトリを開くことすら出来なくなる、面倒くさい。サーバOSがLinuxだとファイル名の大文字と小文字を区別し、同名の別ファイル(例えば、Image.jpgとimage.jpg)が存在することになり、ローカルのWindowsとかに一括ダウンロードする時とか違うファイルなのに同一ファイルとして認識されて上書きされる、面倒くさい。書いてて訳解らなくなってきたけどそういう事だ。

なのでちょっとでもメディアの管理を楽にする為に、既にアップロードしてしまったメディアの保存先を管理画面上から変更できるプラグインを作る事にする。探しても見つからないのは何故だ。

だいたいの設計図

  1. メディアライブラリでチェックボックスをつける。
  2. 一括操作(bulkアクション)でAjaxを呼び出す。
  3. AjaxからPHPを呼び出してアップロードしたメディアのディレクトリを適当な所(※)へ移動させる。
  4. ついでにメディアライブラリに関するDB周りを更新する。
  5. Ajaxでフィードバックを返す。
  6. あとは流れで。

現状で最低限の機能は出来ているので面倒くさくなる前に作りきらなければならない。

こんなん出来たらいいな

  • 移動先ディレクトリをパーマリンク構造のように指定できたらいいな
  • オリジナルファイルだけじゃなくサムネイルも一緒に移動されるといいな
  • uploadsディレクトリ直下のファイルだけ移動できたらいいな
  • nonceを利用してセキュリティを向上させられたらいいな
  • 今回はとくには必要ないけど投稿に追加した画像のURLが自動で変更されるといいな

[Wordpress] 本文空で下書き保存するとカスタムフィールドに入力した値が消える

カテゴリ:
Web
Wordpress
| トラックバック(0)
投稿者:yo yo

Wordpressでカスタムフィールド操作系のプラグインを入れている。本文空で下書き保存するとカスタムフィールドに値だけ入れて下書き保存すると値が消える現象がたまに起こる。困った。

ページの先頭に戻る