【wordpress】商品一覧:カスタム投稿タイプで
1.まずカスタム投稿タイプを作るためにプラグイン「Custom Post Type UI」をインストールし→有効化。
※functions.phpに書く方法もあるけど割愛。
2.投稿タイプ名Post Type Slug…アルファベットを入力。
ラベルPlural Label…ダッシュボードに表示される名称。
[Create Custom Post Type]をクリック。
3.カスタム投稿タイプにカスタムフィールドを設定し、価格やサイズなどの共通する情報を入力しやすくするため、プラグイン「Advanced Custom Fields」をインストール→有効化。
4.タイトルにカスタム投稿名を入力。
「位置」→「ルール」より
どの編集画面でカスタムフィールドを表示するかを一番右のセレクトから選びます。
これをしないと、通常の投稿画面のほうにカスタムフィールドが表示されてしまいます。
5.「フィールドを追加」で、詰問を1つづつ設定していきます。
6.一覧を表示させるための固定ページと、テンプレートを作ります。
イメージマップのロールオーバーを変化させる
実装前メモ
jQuery プラグイン ImageMapster で、イメージマップのロールオーバーを変化させる
http://honttoni.web.fc2.com/blog_honttoni/samples/sample61set/
これも?
http://cgi-lab.net/javascript/89-image-map.html
試しに作ったらまた追記します。
確認画面付きお問い合わせフォーム「MW WP Form」
確認画面付きお問い合わせフォームを頼まれたので、
プラグイン「MW WP Form」を採用。
【問題】
ユーザーの自動返信メール届かない
【解決】
管理画面の「自動返信メール設定」の「自動返信メール」欄にメールアドレスのnameの値のみを入力しないと、返信先が設定されたことにならない。
固定ページで特定の子ページのみ内容が表示されない
会員制ページのあるサイトをつくるよ
1つのID/PASSを会員が共用し、会員ページバナーをクリックすると会員用ページが見られる仕様。
【手順1】購読者権限で新規ユーザをつくる。これが会員に配布するID/PASSになります。
【手順2】
会員ページにアクセスした際、ログインしていない場合、Wordpressのログイン画面にとばすようにします。
今回はページ内の数ページを会員ページとしたので、会員ページに該当するページには「single-kaiin.php」を読ませています。
▼やりかた
「single-kaiin.php」の一番上に下記を記述。
<?php if (is_user_logged_in()){
}else {auth_redirect();
}; ?>
▼注意!
<html>やテンプレート名の前に入れないとうまくいかない。真っ白ページになっちゃう。
【手順3】
ログインしたら管理画面ではなくトップページなどにとばします。
▼やりかた
ログインしたときに指定URLにリダイレクトしてくれる「Peter’s Login Redirect」プラグインを使用して、設定より飛ばすページを指定します。
【手順4】
購読者でログインしたユーザに管理画面をのぞかれないようにします。
▼やりかた
function.phpに、下記2つを書き加える。
/* 購読者のログイン後にはツールバー(アドミンバー)を消す */
add_action( 'after_setup_theme', 'subscriber_hide_admin_bar' );
function subscriber_hide_admin_bar() {
$user = wp_get_current_user();
if ( isset( $user->data ) && !$user->has_cap( 'edit_posts' ) ) {
show_admin_bar( false );
}
}
/* 管理者しかダッシュボードにアクセスできないよ */
add_action( 'auth_redirect', 'subscriber_go_to_home' );
function subscriber_go_to_home( $user_id ) {
$user = get_userdata( $user_id );
if ( !$user->has_cap( 'edit_posts' ) ) {
wp_redirect( get_home_url() );
exit();
}
}
【手順5】
管理画面をカスタマイズする。
<?php
function login_logo() {
echo '<style type="text/css">
#login h1 a {
background: url('.get_bloginfo('template_directory').'/images/logo.png) no-repeat;
width: (ロゴのサイズ)px;
height: (ロゴのサイズ)px;
}
</style>';
}
add_action('login_head', 'login_logo');
?>
【手順6】
公開ページにも非公開ページにもそれぞれ新着情報を表示させたいので、投稿のカテゴリによって公開/非公開をわけられるようにします。
プラグインAllow Categoriesで、カテゴリ毎に設定ができるので設定する。
一般公開の場合(Public)、ログインした場合(Logged In)。
ログイン機能を使用するカテゴリーにはチェックしない。
My Link Orderプラグインが効かない
呼出しを
<?php mylinkorder_list_bookmarks('orderby=order&category_orderby=order'); ?>
とする