投稿のカテゴリごとにテンプレートを変える
投稿のカテゴリ毎にテンプレートを変えるには、single.phpにテンプレートを分岐して読み込みさせる記述をします。なので、single.phpは『single-default.php』などにコピーをしてからsingle.phpの内容を次のように書き換えます。
single.phpに記述します(書き換えます)
<?php $post = $wp_query->post;
if ( in_category(‘blog’) ) {
include(TEMPLATEPATH.’/single-blog.php’);
//カテゴリのスラッグがblogなら single-blog.phpを読み込む
} elseif ( in_category(‘health’) ) {…[ 続きを読む ]ダッシュボードに独自CSSを読み込み
wordpressのダッシュボードのデザインをちょっとだけ変えたい時に、自分で作成したCSSを読み込ませるコードです。
function.phpに追加します。
//管理ダッシュボード変更CSS読み込み
add_action(‘admin_enqueue_scripts’, ‘custom_enqueue’);
function custom_enqueue() {
wp_enqueue_style(‘custom_css’, get_template_directory_uri() . ‘/css/kanri.css’);
}ちょっとだけ幅を整えたり、いらないものを非表示にしたりかゆいところに手を届けるコードですね。
wordpressが吐き出す(多分不要な)タグを削除する
wordpressが標準でヘッダーに吐き出すものの中には、全然必要ないものも多くあるため、function.phpで削除したほうがソースコードもすっきりしてページの読み込み速度も向上できます。使いたい機能が出てきた場合に復活させれば大丈夫です。
/* DNSプリフェッチ設定の削除 */
add_filter( ‘emoji_svg_url’, ‘__return_false’ );/* 絵文字削除 */
remove_action( ‘wp_head’, ‘print_emoji_detection_script’, 7 );
remove_action( ‘admin_print_scripts’, ‘print_emoji_de…[ 続きを読む ]プラグインが吐き出すCSSをヘッダーから消したい&フッターに移動したい
プラグインが吐き出すCSSをヘッダーから削除する
プラグインについているCSSはそのまま何も考えずに使えて便利なんですが、フルスクラッチでデザインをする場合やヘッダーを軽くして体感速度向上させるなど、ヘッダーからCSSを削除させるコードです。
ちなみに、ヘッダーから消えるだけでかなりの速度向上が体感できる場合が多いです。
function.phpに追加して使います。
// プラグインCSSをヘッダーから削除 */
function cut_plugin_css() {
wp_deregister_style( ‘wpfp-public-style’ );
wp_deregister_style( ‘tablepress-default’ );
//wp_deregister_st…[ 続きを読む ]buddypress設定時に、著者リンクをbuddpyressのメンバープロフィールページに変える
buddypressでユーザーがフロントエンドで投稿できるような仕様にした場合、記事のフッターに配置されるauthor_linkが著者アーカイブに飛ばずに、buddypressメンバープロフィールに飛ぶように変更するコードです。
function.phpに追加します。
//著者リンクをbuddypressプロフィールに変える
add_filter( ‘author_link’, ‘change_author_link’, 10, 1 );
function change_author_link($link) {
$username=get_the_author_meta(‘user_nicename’);
$link = ‘メンバーページのURL(/member/とか)’ . $…[ 続きを読む ]メディアをユーザー毎に分けたい
wordpressやbuddypressにログインして投稿作成する時に、メディアをクリックすると、他のユーザーがアップロードした画像まですべてが見えてしまいます。これを「自分(ログイン中のユーザー)がアップした画像だけ表示」させたい時のコードです。
function.phpに追加するだけです。
//メディアをユーザー間で見えなくする
function display_only_self_uploaded_medias( $query ) {
if ( $user = wp_get_current_user() ) {
$query[‘author’] = $user->ID;
}
return $query;
}
add_action( ‘ajax_query_attachme…[ 続きを読む ]ユーザーのログイン状態で表示を変える
wordpressやbuddypressにログインしているユーザーとログインしていないゲストユーザーで表示させたいものを変えたい時のコードです。
「ゲストの場合は新規登録ボタンを表示、ログインしていたら新規登録ボタンは非表示」などの表示切り替えやメニューなどさまざまなところで使えます。
<!– ログイン判定コード –>
<?php if( is_user_logged_in() ) : ?>
<!–ログインしている人にのみ表示されます。–>
<?php else : ?>
<!–ログインしていない人に表示されます。–>
<?php endif; ?>結構使うのですが、なかなか覚えられないコードのひとつです(汗)
…
- さらに読み込む
