メンバー

  • nekyo さんのプロフィール写真
    アクティブ: 3か月 2週前
  • コピー1 さんのプロフィール写真
    アクティブ: 1年 8か月前

最近の活動メンバー

nekyo さんのプロフィール写真
コピー1 さんのプロフィール写真

最近のコメント

プライベートメッセージ

[設定] → [BuddyPress]でコンポーネントのプライベートメッセージを有効にする。

プライベートメッセージ

プロフィールページに [プライベートメッセージ] ボタンが追加されて、ユーザ間のプライベートメッセージが可能になる。
複数ユーザも指定できる。

もちろんログインしないと表示されない。


メンバーページのリンクを作成する

buddypress のプラグインやテーマを見たけれど、標準では、記事内で簡単にメンバーページのリンクを表示するショートコードは用意されていなそう。
# 誰か知っている人が居たら教えて

サイトのURL取得は get_option(‘home’) または get_option(‘siteurl’) を使って、
記事の投稿ユーザのログイン名は get_the_author_meta(‘user_login’) を使って取得する。
なので、メンバーページへのリンクは以下の様になる。

<?php
    $murl = get_option('home') . '/members/' . get_the_author_meta('user_login');
    echo "<a href=\"$murl\">$murl</a>\n";
?>

ただし、記事中で標準では <?php~?> のphpコードは実行できない。実行するには Exec-PHP などのプラグインがインストールが必要。
でも、複数のユーザで使う BuddyPress で、記事に phpコードを使えると色々できてしまうので、セキュリティ的にちょっと心配

なので、対応方法はさしあたり2つ。いずれも記事でPHPを使えるようにする必要はない。

対応方法1:記事のテンプレートに記述

記事のテンプレートのユーザ表示部分にメンバーページのリンクも記述してしまう。
メリット:何もしなくても自動的にリンクが表示される。
デメリット:全ての記事に適応されてしまう(逆にメリット?)。テンプレートの場所がテーマによって違う

ちなみに、ここのテーマは BuddyPress 対応の Simple Portal で、親テーマ Twenty Thirteen のテンプレートを引き継いでいる。
ブログの一覧を表示しているのは Twenty Thirteen の content.php なので

<div class="entry-meta">
        <?php twentythirteen_entry_meta(); ?>

の下に

<?php
    echo "<a href=\"" . get_option('home') . '/members/' . get_the_author_meta('user_login')
       . "\" title=\"メンバーページへ\"><span class=\"glyphicon glyphicon-info-sign\"></span></a>\n";
?>&nbsp;&nbsp;&nbsp;

を追加する。この記事の上にある が実行結果なので、クリックしてみてください。
Twenty Thirteen の functions.php に記述されている twentythirteen_entry_meta 関数の中に追記しても良いかもしれない。
※ ただし bootstrap を使っていないと アイコンは表示されないので適宜置き換え。

対応方法2:ショートコードを定義する

ショートコードを定義して、それを記述するとメンバーページのリンクが表示されるようにする。
メリット:ユーザが記事内で個別にショートコードでリンクを表示できる。
デメリット:ショートコードを書かないとリンクが表示されない。
なので作ってみた。これを function.php の一番最後とかに追記する。

/**
 * メンバーのリンクを表示する
 * [memberslink] [memberslink label='メンバーのリンク']
 * @param label ラベル(省略時は URL)
 * @author nekyo.
 */
function membersLinkFunc($atts) {
    extract(shortcode_atts(array('label' => null,), $atts));
    $murl = get_option('home') . '/members/' . get_the_author_meta('user_login');
    if (!$label) {
        $label = $murl;
    }
    return "<a href=\"$murl\">" . htmlspecialchars($label) . "</a>\n";
}
add_shortcode('memberslink', 'membersLinkFunc');

実行結果:メンバーのリンク


会員制サイトを作るプラグイン

ロフィール編集フォームも用意されている。有料会員とPayPalとも連携できる。日経なんとかに良くありそうなサイトが作れる。目的によっては BuddyPress を使わず、これを使う方が良いかも。

WordPress Access Control 一部のコンテンツをメンバー限定にするプラグイン
WP-Members 投稿や固定ページの記事に対して、アクセス制限を設定できる。記事を閲覧するには、ログインする必要がある。それに加え、会員の新規登録、会員情報の表示機能などがある。ここら辺は BuddyPress と競合する。
Members Only サイト全体の閲覧をログインユーザーのみに限定できる。
Theme My Login 利用しているテーマに会員制サイト用のログインページ、会員登録ページ、パスワード再送信ページを簡単に設置できる。
Gianism acebook,Twitter,Google(Gmailアカウント必須),Amazon,Github,mixi,Yahoo! JAPAN,hatena などのアカウントを利用してユーザーがWodPressにログインできるようにするプラグインです。
Never Let Me Go ユーザ退会処理を組み込める。
User Role Editor ユーザー権限をカスタマイズできる
Simple Membership 会員レベルを作って、有効期限、限定公開などを設定できる。会員登録フォーム、ログインフォーム、パスワードリセットフォーム、プ
Cube Points ポイントを付与、管理するプラグイン。投稿とコメントにポイントが付けられる。
Display Widgets ウィジェットの表示・非表示を制御できる。未ログイン時に表示しないウィジェットとか
Members 権限グループを追加・編集できる。記事毎に表示可能な権限グループを設定できる。
Adminimize 管理画面のメニュー表示を権限グループごとに設定できる。
Nav Menu Roles カスタムメニューの表示・非表示を設定できる。ログイン時、ログアウト時、権限ごとに設定
Member Press 後発なのでいいとこどり?
Allow Categories カテゴリーごとにユーザーのアクセス権を設定
Bind user to category ユーザーごとに投稿できるカテゴリーを限定するプラグイン
admin-only-categories 管理者のみが投稿するカテゴリーを設定
User Access Manager ユーザーグループを作成してグループ毎にアクセス権(閲覧・投稿)を設定
Private Only サイト全体をログインユーザーのみに公開とする
Absolute Privacy 特定のページ以外は一般に非公開とする
Private Suite 特定のカテゴリーを一般に非公開とする
Advanced Access Manager アクセス制限、ユーザー権限の追加・編集ができるプラグイン。
Role Manager ユーザーの利用権限を編集できるプラグイン。

こうやって見ると、会員制ページを作るには必ずしも、BuddyPress を使う必要はなく、他にも選択肢はいくらでもある。
逆に BuddyPress のコンテンツを会員限定にするには、どれが良いのかよくわからないね。


BuddyPressのコンポーネント

コンポーネント 説明 初期設定
拡張プロフィール ユーザーが自己紹介できる編集可能なプロフィール欄を使って、コミュニティをカスタマイズできる。
アカウント設定   ユーザーがプロフィールから直接アカウントや通知設定を編集できるようにする。
友達関係  ユーザーがお互い友だちになり、気になっている人のアクティビティを集中してフォローできるようにする。
プライベートメッセージ ユーザー同士が直接、非公開で話すことができるようになる。一対一の話し合いだけではなく、メッセージは複数メンバー間でも送信できる。
アクティビティストリーム スレッド化コメント、直接投稿、お気に入りや @ メンションを含んだ全体・個人・グループのアクティビティストリームのすべてが、RSS フィードとメール通知に対応している。
通知 ツールバーのバブルやメールで最近のアクティビティをメンバーに通知し、メンバーが通知設定をカスタマイズできるようにする。
ユーザーグループ グループを使うことで、アクティビティストリームやメンバー一覧とは別の、メンバー同士が話し合える公開または非公開の場を設定できる。
サイトトラッキング サイトの新しい記事とコメントを記録する。
BuddyPress コア BuddyPress の機能を有効化するために必要。 必須
コミュニティのメンバー BuddyPress のコミュニティはすべて、メンバーが中心となっている。 必須

ちなみに、以前あったらしい「グループのフォーラム」- BuddyPress フォーラムは廃止されて、bbPress を使えということになったらしい。


WordPress のユーザ権限

権限 英語 内容
特権管理者 Super Admin マルチサイトでのサイトネットワーク権限を含む全機能へアクセスできるユーザー
管理者 Administrator シングルサイト内の全理機能へアクセスできるユーザー
編集者 Editor 他のユーザーの投稿を含むすべての投稿を発行・管理できるユーザー
記事投稿、ページ作成、記事管理、ページ管理、アップロード管理、カテゴリー管理、
コメント管理、リンク管理(追加、インポート)、プロフィール変更
投稿者 Author 自身の投稿を発行・管理できるユーザー
記事投稿、記事管理、コメント管理、アップロード管理、プロフィール変更
寄稿者 Contributor 自身の投稿を編集・管理できるが、発行はできないユーザー
事投稿(公開権限なし)、記事管理(公開承認後は変更できません)、プロフィール変更
購読者 Subscriber プロファイル管理のみを実行できるユーザー
プロフィール変更

ちなみに、普通の WordPress は、投稿者でログインして書き込むと承認などは必要なく公開できる。
Buddy Press で投稿者で書き込むと [公開] ではなく [レビュー待ちとして送信] ボタンになる。
管理者が投稿一覧を見るとタイトルの後ろに – レビュー待ち と表示され、編集を引き継ぐと投稿者は編集できなくなる。
承認フローを実装するためにも BuddyPress を入れる価値はある?
ちなみに更に細かい権限設定をしたい場合は User Role Editor というプラグインがある。
ここら辺に日本語対応ファイルあり:しろうとにけがはえた


ネットオウルのWebサービス

無料で使えるサービス
5つまで WordPress が立ち上げられる。
ストレージ容量 1GB / 広告の表示 あり(PCからのアクセスでは広告なし) / データベース容量 100MB / FTP可
ただし FTP の接続ルートは WordPress の wp-content となる。

Pukiwiki が使える。


オプションで PHP+MySQL が使える無料ホームページスペース WEBCROW などがある。

ちなみに wpblog は既に MultiSite の様になっているらしく、MultiSite の設定が効かない。BuddyPress プラグインは使える。
webcrow で WordPress を真っ当に入れれば、MultiSite 設定が可能になる。


BuddyPress インストール

WordPress を SNS化するために プラグイン Buddypress をインストールする
これは通常のプラグインインストールと同じように行う。

日本語化

  1. https://translate.wordpress.org/projects/buddypress の Sub-projects の下の
    最新バージョンをクリックして表示される一覧から japanese を選択。
  2. all current、Machine Object Message Catalog (.mo) を選択して Export をクリック
  3. ダウンロードしたファイル名を buddypress-ja.mo に変更。
  4. wp-content/languages/ にアップロード。

テーマの選び方

外観>テーマ>新規追加>特徴フィルター:機能:BuddyPress をチェック>フィルターを適用
で BuddyPress対応のテーマが一覧される。

設定

設定>一般設定 のメンバーシップ だれでもユーザー登録ができるようにする にチェックを入れる。
登録と有効化の固定ページを作る。中味は空で良い。ただし有効化のページのパーマリンクは英語にしておいた方が良い。
設定>BuddyPress の固定ページタグの登録・有効化と関連付けておく。
その他、BuddyPress 用のウィジェットをサイドバーなどに設定できる。

ユーザ権限の変更

初回登録時の初期値を「購読者」に設定した場合、投稿もコメントも書けない。
書けるようにするには、ユーザの権限を「寄稿者」以上にする必要がある。
ちなみに WordPress はユーザのメアドを重複して登録できないが、
gmail の裏ワザとして、 アカウント+適当な文字列@gmail.com が使える。届く先はいっしょ。
ちなみに投稿した記事は になる。
管理者などの承認が必要。なるほど。


ツールバーへスキップ