atshift Members
atshift Members リファレンス
無料版1.0のショートコード、権限、保存先、外部サービスとデータの扱いを確認できます。Members Proの承認ワークフロー等は無料版の機能として案内していません。
01 / ACCOUNT
アカウント用の5つのページ
用途ごとに固定ページを分け、対応するショートコードを配置します。
Membersのページ設定で対象ページを対応付けます。ページ本文のショートコードを検出して送信処理や保護ヘッダーを準備するため、テーマから表示だけを呼び出す用途とは区別してください。
メールアドレス変更は登録情報変更ページ内の専用画面で扱い、新しいアドレスの確認が必要です。一般的なプロフィール値としてメールアドレスや権限をそのまま書き換える仕組みではありません。
確認項目
- atshme_registration: メール確認付きの会員登録
- atshme_account: 本人の会員情報
- atshme_account_edit: 本人の登録情報変更
- atshme_password_reset: パスワード再設定
- atshme_withdraw: 本人による退会と最終確認
[atshme_registration]
[atshme_account]
[atshme_account_edit]
[atshme_password_reset]
[atshme_withdraw]
02 / MEMBER HOME
会員ホームと案内リンク
利用者に許可されている操作へのリンクを表示します。
atshme_dashboardは利用可能な案内をまとめて表示します。atshme_account_linksとatshme_post_linksは、それぞれアカウント操作と投稿操作だけを表示します。未ログイン・利用停止では表示せず、未設定のアカウントページへのリンクも出しません。
classには追加CSSクラス、heading_tagにはh2〜h6またはpを指定できます。見出しの初期値はh2です。個別ショートコードではtitleで見出しを変更できます。任意のHTMLを属性から実行する機能ではありません。
limitは1〜20、初期値5ですが、承認情報を供給する連携用の上限です。atshme_approval_statusはPro連携用であり、無料版だけで投稿承認ワークフローを提供するものではありません。
[atshme_dashboard class="member-home" heading_tag="h2"]
[atshme_account_links title="アカウント" heading_tag="h3"]
[atshme_post_links title="記事を書く" heading_tag="h3"]
03 / DIRECTORY
会員一覧の属性と公開範囲
表示内容と閲覧権限はサイト共通設定で決まります。
atshme_member_directoryにはclass、heading_tag、per_pageを指定できます。heading_tagはh2〜h6またはpで初期値h3、per_pageは1〜100で初期値20です。ページ送りに対応し、同じページへの複数配置ではページ番号を共有します。
一覧は設定で有効化するまで表示されません。ショートコード属性から閲覧権限を広げることはできません。掲載対象は有効な会員で、個別の除外設定を優先します。分類の指定には対応する連携が必要です。
表示名がログイン名やメールアドレスそのものなら「会員」と表示します。ただし自己紹介等の自由入力内容まで個人情報を自動除去する機能ではありません。標準投稿者リンクの非表示設定も、第三者プラグインの独自出力を全面的に遮断するものではありません。
確認項目
- 閲覧範囲: 一般公開 / 有効な会員 / サイト運営者 / 指定分類
- 掲載項目: 表示名 / 本人の所属 / 自己紹介
- 一覧を公開しても、プロフィールページの閲覧権限は変更しない
[atshme_member_directory class="member-list" heading_tag="h3" per_page="20"]
04 / FILES
添付一覧・画像とファイル形式
会員専用ファイルは配信時にも会員状態と元記事の権限を確認します。
atshme_attachmentsは対象記事の添付一覧と、権限のある利用者向けのアップロード操作を提供します。post_idで対象記事を指定できますが、その記事への権限を迂回するものではありません。atshme_imageでは会員専用画像のIDと代替テキストを指定できます。
通常は対応する画像・ギャラリー・ファイル・動画ブロックやクラシックエディターのメディア操作を利用でき、毎回ショートコードを手入力する必要はありません。資料はダウンロードリンクとして扱い、PDFプレビューは提供しません。
画像はJPEG・PNG・GIF・WebP、資料はPDF・Word・Excel・PowerPoint・テキスト・ZIP、動画はMP4・WebMに対応します。WordPressとサーバーのアップロード上限に従い、形式に応じてPHP拡張が必要です。
マクロ付きOffice形式や、内容を確認できない暗号化された現行Officeファイルは対象外です。形式の検証はウイルス検査ではありません。クラウドストレージ、外部動画サービス、第三者独自のアップロードUIは別途検討が必要です。
確認項目
- 通常のメディアへ保存したファイルの公開URLは変わらない
- 別記事への再利用は記事用コピーを作り、元ファイルの権限を変更しない
- 資料・ZIPは展開や文書プレビューをしない
- 非公開ファイル配信は共有キャッシュの対象外にする
[atshme_attachments]
[atshme_attachments post_id="123"]
[atshme_image id="456" alt="資料の図版"]
05 / PERMISSIONS
権限と会員状態
サイト設定、会員管理、本人の投稿を分けて扱います。
サイト設定と保存先の変更は管理者が行います。サイト運営者には会員やコンテンツ管理の担当権限があり、管理者・プラグイン・サイト全体設定を操作する権限とは別です。WordPress標準のロール名だけでMembersの管理機能がすべて開放されるわけではありません。
投稿タイプの許可は、会員状態と現在の条件を確認して本人の作成・公開・編集・削除に適用します。他人の記事編集や非公開記事の閲覧を一律に許可しません。分類連携が失われた場合も、分類制限を無条件の許可へ置き換えません。
利用停止は公開済みコンテンツをすべて非公開にする操作ではありません。公開コンテンツは未ログインでも見える場合があります。退会、投稿権限の取り消し、会員状態の変更はそれぞれ効果を分けて確認してください。
06 / EXTERNAL SERVICES
外部サービスへ送る情報
TurnstileとPwned Passwordsを使用します。採用サイトの利用者へ案内してください。
Cloudflare Turnstile: 登録とパスワード再設定の要求フォームでブラウザ用スクリプトを読み込みます。送信時にレスポンストークンと管理者のシークレットキーをSiteverifyへ送信します。Cloudflare側ではサービスの方針に従いブラウザ・ネットワーク情報が処理される場合があります。検証失敗時は処理を進めません。
Pwned Passwords: このプラグインが新規または変更後のパスワードを検証する際、SHA-1ハッシュの先頭5桁だけをrange APIへ送ります。パスワード本体と完全なハッシュは送信しません。返された候補はその場の比較だけに使用し、保存しません。
パスワード検証は12文字以上・256バイト以下で、先頭末尾の空白や制御文字を受け付けません。Pwned Passwordsはタイムアウト5秒で、通信不能や不正な応答時は標準設定で受け付けを止めます。管理者がATSHME_PWNED_PASSWORDS_ENABLEDをfalseに定義すると漏えい照合のみ無効になりますが、保護の内容が変わるため運用上の判断が必要です。
メールはサイトに設定されたWordPressのメール配送手段を使用します。実到達を確認してください。
07 / DATA & WITHDRAWAL
保存期間と退会時の扱い
保存される記録と、削除できる範囲を区別します。
登録要求のメールアドレスは最大30分にCronの実行遅延を加えた期間保持します。登録完了用の確認情報は15分、監査イベントは7日にCron遅延を加えた期間です。秘密の確認情報はハッシュで保持し、送信元・メール・Cookieのカウンターには鍵付きハッシュを使います。ハッシュ化は仮名化であり、匿名化ではありません。
WordPressの外にあるアクセスログ、リバースプロキシ、アクセス解析へ確認トークンを記録しない対策が必要です。確認ページはno-referrerとno-storeを指定しますが、外部のログやキャッシュ設定まで自動管理するものではありません。
退会は原則としてアカウントとデータを削除します。最後の確認と10分以内のログインが必要です。明示的に選択した投稿はログイン不能なサイト管理用の受け皿へ移し、下書きにできます。未選択の本人所有コンテンツは削除対象です。大きな削除処理はWP-Cronで継続します。
共有実ファイル、第三者サービス、未対応プラグイン、バックアップ内のデータには削除できる範囲の限界があります。プラグイン単体であらゆる保存先から完全消去できるという説明はしないでください。
08 / TROUBLESHOOTING
動かないときの確認順
権限を広げたり検証を無効化する前に、環境と設定を確認します。
確認メールが届かない場合は、送信先・迷惑メール・サイトの配送設定・WP-Cronを確認します。登録済みアドレスかどうかを応答文だけから判別させないため、受付表示が出ても必ず新規登録メールが送られるわけではありません。短時間の繰り返し要求は制限されます。
登録が利用できない場合は、受付の有効化、HTTPS、Turnstileのドメインとキー、外部通信、InnoDB、シングルサイトを確認します。フォームを開き直しても失敗する場合は、会員ページをキャッシュしていないか確認してください。
一覧が表示されない場合は、有効化・閲覧範囲・有効な会員状態・分類連携・個別除外を確認します。添付が取得できない場合は、保存先の接続と会員状態、元記事の閲覧権限を確認します。
WORDPRESS PLUGINS BY @SHIFT
atshift Membersを、
サイトの運用へ。
まずはステージング環境で、実際の運用に合うかを確認してください。