WordPressで会員サイトが構築できるプラグイン「WP-Members」
http://www.wp-tech.net/wordpress_tips/2557/
チェックボックス判断
<?php if (get_post_meta($post->ID, '_wpmem_block', true)) : ?>
<br />
<?php if (have_posts()) : ?><br />
<?php while (have_posts()) : the_post(); ?><br />
<?php if (is_user_logged_in()) : ?><br />
<!--ログインしてる時の内容--><br />
<?php else ://ログインしてない場合 ?><br />
<?php if (get_post_meta($post->ID, '_wpmem_block', true)) : ?><br />
<!--ログインしていなくてチェックが入っている時の内容--><br />
<?php else ://チェックしてない場合 ?><br />
<!--ログインしていなくてチェックが入っていない時の内容--><br />
<?php endif; ?><br />
<?php endwhile; ?><br />
<?php endif; ?><br />
管理バーの項目を削除する
wpcj.net/260
/**
* 管理バーの項目を削除します。
*/
function remove_bar_menus( $wp_admin_bar ) {
$wp_admin_bar->remove_menu( 'wp-logo' ); // ロゴ
$wp_admin_bar->remove_menu( 'site-name' ); // サイト名
$wp_admin_bar->remove_menu( 'view-site' ); // サイト名 -> サイトを表示
$wp_admin_bar->remove_menu( 'dashboard' ); // サイト名 -> ダッシュボード (公開側)
$wp_admin_bar->remove_menu( 'themes' ); // サイト名 -> テーマ (公開側)
$wp_admin_bar->remove_menu( 'customize' ); // サイト名 -> カスタマイズ (公開側)
$wp_admin_bar->remove_menu( 'comments' ); // コメント
$wp_admin_bar->remove_menu( 'updates' ); // 更新
$wp_admin_bar->remove_menu( 'view' ); // 投稿を表示
$wp_admin_bar->remove_menu( 'new-content' ); // 新規
$wp_admin_bar->remove_menu( 'new-post' ); // 新規 -> 投稿
$wp_admin_bar->remove_menu( 'new-media' ); // 新規 -> メディア
$wp_admin_bar->remove_menu( 'new-link' ); // 新規 -> リンク
$wp_admin_bar->remove_menu( 'new-page' ); // 新規 -> 固定ページ
$wp_admin_bar->remove_menu( 'new-user' ); // 新規 -> ユーザー
$wp_admin_bar->remove_menu( 'my-account' ); // マイアカウント
$wp_admin_bar->remove_menu( 'user-info' ); // マイアカウント -> プロフィール
$wp_admin_bar->remove_menu( 'edit-profile' ); // マイアカウント -> プロフィール編集
$wp_admin_bar->remove_menu( 'logout' ); // マイアカウント -> ログアウト
$wp_admin_bar->remove_menu( 'search' ); // 検索 (公開側)
}
add_action('admin_bar_menu', 'remove_bar_menus', 201);
WordPressの管理バーをカスタマイズしてオリジナルのメニューを加える方法
WordPressの管理バーをカスタマイズしてオリジナルのメニューを加える方法
管理バーの右側をログアウトのみにする wpcj.net/483
/**
* 管理バーの右側をログアウトのみにします。
*/
function admin_bar_right_logout( $wp_admin_bar ) {
// マイアカウントを削除
$wp_admin_bar->remove_menu( 'my-account' );
// ログアウトを追加
$wp_admin_bar->add_menu( array(
'id' => 'mylogout',
'title' => __( 'Log Out' ),
'href' => wp_logout_url(),
'meta' => array(
// ab-top-secondary = 右側表示。何も指定しない場合は左側
'class' => 'ab-top-secondary',
),
) );
}
add_action('admin_bar_menu', 'admin_bar_right_logout', 201);
結局
//アドミンバー
add_action('admin_bar_menu', 'customize_admin_bar_menu', 9999);
function customize_admin_bar_menu($wp_admin_bar){
$current_user = wp_get_current_user(); //現在のユーザー情報を取得
if(check_user_role($current_user,'subscriber')){//購読者
// Adminバー左側
$wp_admin_bar->remove_node('wp-logo'); // 一番左のWordPressのロゴを消す。
//$wp_admin_bar->remove_node('site-name'); // 左から2番めのサイト名を消す。
$wp_admin_bar->remove_node('new-content'); // 「+ 新規」ってメニューを消す。
// Adminバー右側
//$wp_admin_bar->remove_node('my-account'); // アカウントのメニューを消す。
$wp_admin_bar->remove_node('search'); // 検索のメニューを消す。
$wp_admin_bar->remove_node('edit-profile'); // プロフィール編集
$wp_admin_bar->remove_node('user-info'); //
$wp_admin_bar->remove_menu( 'dashboard' );
$wp_admin_bar->remove_menu( 'site-name' ); // サイト名
$wp_admin_bar->remove_menu( 'my-account' ); // マイアカウント
// ログアウトを追加
$wp_admin_bar->add_menu( array(
'id' => 'mylogout',
'title' => __( 'Log Out' ),
'href' => wp_logout_url(),
'meta' => array(
// ab-top-secondary = 右側表示。何も指定しない場合は左側
'class' => 'ab-top-secondary',
),
) );
}
}
//WP-Members
// 管理バーを非表示にする
//add_filter( 'show_admin_bar', '__return_false' );
// 会員を管理画面に入れない
function subscriber_go_to_home( $user_id ) {
$user = get_userdata( $user_id );
if ( !$user->has_cap( 'edit_posts' ) ) {
wp_redirect( get_home_url() );
exit();
}
}
add_action( 'auth_redirect', 'subscriber_go_to_home' );
<a href="<?php the_permalink(); ?>" class="kanin_rela">
<?php if (get_post_meta($post->ID, '_wpmem_block', true)) : ?>
<?php if (!is_user_logged_in()) : ?>
<div class="kanin_gentei_sam"><div class="kanin_gentei"><span>会員限定記事</span></div></div>
<?php endif; ?>
<?php endif; ?>