@penguin22
> 掲題の通りなのですが、FB上でメールアドレスを非公開にしているユーザーからは当然メールアドレスを取得できず、ログイン情報として使用不可能かと思います。
私の認識不足なのかもしれないのですが、メールアドレスの公開非公開ってステータスが関係ありましたでしょうか? ユーザーが明示的に「このアプリに提供する情報」をカスタマイズた場合に限ると思うのですが、どうでしょう。
OAuthのリクエストの場合、メールアドレスへのアクセス許可を求める画面が表示されます。
で、その場合にFacebookが提供する機能としては、アプリ(この場合はGianismを搭載したWordPress)に提供する機能をカスタマイズすることができます。
以下は上記の「ユーザーがGianismに対してメールアドレスの提供を拒否した」という場合を前提にします。
いまのところ、回答としては「できません」になってしまいます。もちろん、プラグインファイルをいじらないことが前提です。該当箇所は以下のURLですので、ここを改修して、仮のメールアドレスを発行しておき、とりあえず登録をさせるということは可能です。
https://github.com/fumikito/Gianism/blob/master/app/Gianism/Service/Facebook.php#L252
Facebookでは当然メールアドレスが提供されるものとして実装しているので、「メールアドレスの提供が嫌ならメールアドレスを必須とするWordPressには登録できない」というポリシーの実装にしています。
とはいえ、結局twitterもメールアドレスが取れたり取れなかったりするので、仮のメールアドレスを発行するような実装にしています。
Facebookでもそういった方向に寄せることは可能ではあります。
ただ、結局メールアドレスを入力させるのであれば、WordPressの普通の登録でも同じなのでは、と思うのですが、いかがでしょう。
いまのところ、いくつかのSNSで実装されているように、「SNSアカウントでログインした後、メールアドレスの入力を強制する」というオプションはわりと使い勝手がいいのでは、と思っていますので、もしかしたら実装するかもしれません。