3

このようなものが機能することを期待します

http://en.gravatar.com/site/signup?email=user%40example.com

ユーザーが電子メールを再入力する必要がないようにするため。

4

3 に答える 3

1

ユーザーのためにそれ(および他のもののトン)を処理するこのwordpressパッケージに気づいたので、彼のコードを少し掘り下げたところ、彼はこのPHP関数を使用しました:

/**
 * Get URL to locale gravatar signup page
 *
 * @since 2.0
 * @param string $email Email address that should be apended
 * @return string $gse_url URL of locale signup page
 */
function gravatar_signup_encouragement_locale_signup_url( $email = '' ) {
    /* translators: Locale gravatar.com, e.g. sr.gravatar.com for Serbian */
    $gse_locale_url = _x( 'en.gravatar.com', 'Locale gravatar.com, e.g. sr.gravatar.com for Serbian', 'gse_textdomain' );

    /* Check if it's really locale.gravatar.com */
    if ( preg_match( '|^[A-Z_%+-]+.gravatar+.com|i', $gse_locale_url ) ) {
        $gse_locale_url = $gse_locale_url;
    } else {
        $gse_locale_url = 'en.gravatar.com';
    }

    /* If email exists, append it */
    if ( empty( $email ) ) {
        $gse_url = "http://" . $gse_locale_url . '/site/signup/';
    } else {
        $encoded_email = urlencode( $email );
        $gse_url = "http://" . $gse_locale_url . '/site/signup/' . $encoded_email;
    }

    return $gse_url;
}

残念ながら、Wordpress が oauth アカウントを使用してフォームを引き継いだため、これはおそらく機能しなくなったため、Ruby on Rails に変換したソリューションを次に示します。重要なのは、HTTP パラメーターuser_emailが存在し、機能するという事実です。

  def gravatar_create_url(user)
     user_email = u user.email.downcase
     "https://signup.wordpress.com/signup/?ref=oauth2&user_email=#{user_email}&oauth2_redirect=bf551c93d83b96478db51481a9cbe97e%40https%3A%2F%2Fpublic-api.wordpress.com%2Foauth2%2Fauthorize%2F%3Fclient_id%3D1854%26response_type%3Dcode%26blog_id%3D0%26state%3D331f9ecba5fcab15e2168e1231f7be2a4b1b8cd24dd6f90b3672fb5159d7b590%26redirect_uri%3Dhttps%253A%252F%252Fen.gravatar.com%252Fconnect%252F%253Faction%253Drequest_access_token%26jetpack-code%26jetpack-user-id%3D0%26action%3Doauth2-login&wpcom_connect=1"
  end

WordpressがGravatarを引き継いだ方法で時間の経過とともに変化する可能性があるため、他のすべてのリダイレクトパラメーターについてはわかりませんが、これが正しい方向に進むことを願っています.

于 2014-05-01T03:41:29.580 に答える
1

toobulkehの回答(これは受け入れられるべきです)を抽出し、実装に依存しないようにするためだけに...

サインアップ ページの URL でuser_emailクエリ パラメータを使用する

https://signup.wordpress.com/signup/?user_email=user%40example.com

于 2015-07-13T02:11:02.520 に答える
-1

変わりました。最初に md5 ハッシュを計算する必要があります。このような:

http://www.gravatar.com/avatar/[メールのMD5]?s=[グラバターのサイズ]

例: http://www.gravatar.com/avatar/1f8b4ac238826420d85929df0cdc00f4?s=255

于 2011-10-27T12:06:21.157 に答える