既読ボタン

会員制サイトで大切なお知らせをユーザーが読んだことを確認したい、読んだユーザーの名前と合計人数を投稿上に表示したい。 1.カスタムフィールドでユーザー名欄を作成 2.ログイン中のユーザー名を取得 3.ユーザー名欄を取得して、ログイン中ユーザー名が含まれていなければ既読ボタンを表示して送信してもらう 4.ユーザー名欄が空であれば、そのままログイン中ユーザー名を…

ACF ウィジェット

テーマを一から作成して構築する際、サイドバーやナビ、トップページにエンドユーザー側で設定する箇所がある場合、まとめて設定ページを作成するので、うっかり見逃していたが、ACFはウィジェットやメニューにも追加できる。 ウィジェットの設定についてはhttps://support.advancedcustomfields.com/forums/topic/repea…

ユーザーとタームの紐付け2

タクソノミー名はblog_cat。 ACF タクソノミーフィールドにadd_filter タクソノミーフィールドはタームを保存・ロードする設定でadd_filter で表示するタームを制限。https://www.advancedcustomfields.com/resources/acf-fields-taxonomy-wp_list_categories…

ユーザーとタームの紐付け

タクソノミー名はblog_cat。閲覧制限もかける場合、ユーザーグループでアクセス権を設定する場合はUser Access Manager が効率的かと思うが、1ユーザーずつ設定する場合は関数のほうが早いと思う。 1ユーザーに1タームを紐付ける 通常のタームの選択欄はAdmin CSS などで非表示に。 function blog_cat_check($po…

権限周り復習

特定のカスタム投稿タイプの投稿・編集権を特定の権限グループのみとする。仮にカスタム投稿タイプはnewsとする。 User Role Editor で権限グループを追加(編集者をコピー)して、news_editor とする。 カスタム投稿タイプnews の権限をnews とする。*CPT UI で追加した場合、権限はpost になっていると思う。 User R…

get_term_by など、タグ覚書

これの書き方をいつも忘れるのでメモとして。 タームの絞り込みをアーカイブ上でセレクトを使って行う場合に、表示しているタームを取得。*archive?area=xxxx のようなURLの場合 $area = $_GET[‘area’]; if (!empty($area)) { $term = get_term_by(‘sl…

ログイン後のリダイレクト

投稿に関しての問い合わせはログインユーザーのみで、問い合わせページに遷移時、ログインしていない場合はログインページにリダイレクト・ログイン後は問い合わせページにリダイレクトしたいのだが、リファラーを取得するコードを書くと何故かエラーが出る。*自分のテスト環境(エックスサーバー)で同じコードを書いても出ないのだが 問い合わせはMW Form を利用していて、リ…