1. TOP
  2. Wordpress

[Wordpress] post_date_column_statusとpost_date_column_timeというフィルターフック

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

どうでも良い事だけどpost_date_column_statusとpost_date_column_timeというフィルターフックはあるのにpost_title_columnみたいなフィルターフックがwp_posts_list_tableにはない。独自項目の追加にはmanage_posts_columnsとかを使わなきゃならないのがややこしい。

function post_date_column_status_func( $status ){
	if ( !is_admin() || 'registration' !== get_current_screen()->post_type || !current_user_can('list_users')) return;
	return '';
}
add_filter( 'post_date_column_status', 'post_date_column_status_func');

function post_date_column_time_func( $t_time ){
	if ( !is_admin() || 'registration' !== get_current_screen()->post_type || !current_user_can('list_users')) return;
	return $t_time;
}
add_filter( 'post_date_column_time', 'post_date_column_time_func');

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

カテゴリ:
Web
Wordpress
| トラックバック(0)
投稿者:yo yo
Notice: wp_add_inline_script が誤って呼び出されました。<script> タグを wp_add_inline_script() に渡さないでください。 詳しくは WordPress のデバッグをご覧ください。 (このメッセージはバージョン 4.5.0 で追加されました) in ./wp-includes/functions.php on line 4139
function my_admin_script() {
	if ( ! is_admin() ){
		return;
	}
	ob_start();
?>
	<script type="text/javascript"> // ← これがいらない
		// javascriptの処理ずらずらー
	</script> // ← これがいらない
<?php
	$js = ob_get_contents();
	ob_end_clean();
	wp_add_inline_script( 'jquery-core', $js );
}
add_action( 'admin_enqueue_scripts', 'my_admin_script' );

wp_add_inline_scriptを使って<head />内へインラインスクリプトを追加する時、そもそも<script />が自動で追加されるので<script />の記述を書く必要がない。

[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を返す様だ。

ページの先頭に戻る