yuheijotaki.com

2013/08/24 : 
functions.php メモ

WordPressのfunctions.phpでよく使うものメモ

<?php

// 不要なwp_headを削除
remove_action('wp_head', 'feed_links_extra',3);
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);
remove_action('wp_head', 'parent_post_rel_link');
remove_action('wp_head', 'start_post_rel_link');
remove_action('wp_head', 'rel_canonical');


// 管理ツールバーを常に非表示
show_admin_bar( false );


// 管理画面にファビコンを表示(テンプレートディレクトリ直下に.icoをおいたとき)
function admin_favicon() {
	echo '<link rel="shortcut icon" type="image/x-icon" href="'.get_bloginfo('template_url').'/favicon.ico" />';
}
add_action('admin_head', 'admin_favicon');


//管理画面 ロゴ追加(テンプレートディレクトリ直下にimageフォルダ、その下にlogo.pngをおいたとき)
function admin_logo() {
	echo '<style>h1 a { background: url('.get_bloginfo('template_directory').'/image/logo.png) 50% 15% no-repeat !important; }</style>';
}
add_action('login_head', 'admin_logo');


// 管理画面用 CSS/JS読み込み(テンプレートディレクトリ直下にcommonフォルダ、その下にadmin.css/.jsをおいたとき)
function admin_files() {
	echo '<link rel="stylesheet" href="'.get_bloginfo('template_directory'). '/common/admin.css">';
	echo '<script src="'.get_bloginfo('template_directory'). '/common/admin.js"></script>';
}
add_action('admin_head', 'admin_files');


// WordPressアップデート通知の無効化
add_filter( 'pre_site_transient_update_core', '__return_zero' );
remove_action( 'wp_version_check', 'wp_version_check' );
remove_action( 'admin_init', '_maybe_update_core' );


// プラグインファイルアップデート通知の無効化
function remove_plugin_counts(){
	global $menu,$submenu;
	$menu[65][0] = 'プラグイン';
	$submenu['index.php'][10][0] = '更新';
}
add_action('admin_menu', 'remove_plugin_counts');


// 固定ページの編集エリア非表示
function remove_page_metabox() {
	remove_post_type_support('page','editor');
}
add_action('init', 'remove_page_metabox');


// カスタム投稿タイプ記事のRSS作成(カスタム投稿タイプ'information'のRSS作成の場合)
function custom_post_rss($query) {
	if(is_feed()) {
		$query->set('post_type',Array('information'));
		return $query;
	}
}
add_filter('pre_get_posts', 'custom_post_rss');
add_theme_support('automatic-feed-links');


// 自動で挿入されるpタグを削除
remove_filter('the_content', 'wpautop');


// メディア 大サイズ 横幅上書き(640pxの場合) 動画などもこのサイズに
if ( ! isset( $content_width ) )
	$content_width = 640;


// iPhone/Android スマホ(タブレット以外)分岐の関数作成
// テーマファイルに if( is_iphone()|| is_androidmobile() ) とか
function is_iphone() {
	$ua = $_SERVER['HTTP_USER_AGENT']; if( strpos($ua, 'iPhone')!== false|| strpos($ua, 'iPod')!== false ) { return true; } else { return false; }
}
function is_androidmobile() {
	$ua = $_SERVER['HTTP_USER_AGENT'];
	if( strpos($ua, 'Android')!== false&amp;amp;&amp;amp;strpos($ua, 'Mobile')!== false ) { return true; } else { return false; }
}

?>

参考