2012-08-08 13 views
9

私はGoogle+を使用してページ上のリンクを共有していますが、パラメータを含むURLを共有しようとすると問題が発生します。例:URLとGoogleの共有とパラメータ

http://google.com?n=somethink&link=p/1393007&i=images/icons/gplus-16.png 

このページでフィールドにこのURLを入れるとき:

https://developers.google.com/+/plugins/share/ 

...とshareボタンをクリックし、名前、絵のようにページの情報を見ることができませんおよび説明。しかし、 "png"の前にドットを削除すると、Googleはそのページに関するデータを表示します。

'シンボルをURLの任意の場所に書き込むと、同じことが起こります。 Googleヘルプページでこのエラーに関する情報を見つけることができません。これは、このようなURLを使用すると機能します。

http://google.com?n='&link=p/1393007&i=images/icons/gplus-16.png 

...しかしそれほどエレガントな解決策ではありません。

クリーンURLの書き方は?

答えて

11

Google+共有リンクを介してGoogle+に共有するリンクをURLエンコードしてください。例えば

:今、あなたは共有リンクを介してGoogle+のリンクを共有することができ

http%3A%2F%2Fexample.com%3Fa%3Db%26c%3Dd 

:あなたは、リンクhttp://example.com?a=b&c=dを共有したい場合は、最初のURLは見えるようにリンクをエンコード

https://plus.google.com/share?url=http%3A%2F%2Fexample.com%3Fa%3Db%26c%3Dd 
+0

私は私が試した>ことが必要だとは思わない://と/だけで正常に動作します。 – Sven

40

現在のところ、G + shareは2つのパラメータ(ターゲットURLの場合はurl、言語コードの場合はhl)のみをサポートしています。

https://plus.google.com/share?url=http://www.stackoverflow.com

また、あなたはこのように同じフィールドを指定するには、ページの先頭にOpenGraphタグを追加することができます。

<meta property="og:title" content="..."/> 
<meta property="og:image" content="..."/> 
<meta property="og:description" content="..."/> 
+6

質問に答えなかったのは面白いですが、私は答えました! – Chloe

+1

G +は他の追加パラメータをサポートしていますか? –

+1

@BalasubramaniM、 'text'パラメータは機能しますが、文書化されていないため、将来予告なしに削除される可能性があります。 – Jashwant

1
function googleplusbtn(url) { 
     sharelink = "https://plus.google.com/share?url="+url; 
     newwindow=window.open(sharelink,'name','height=400,width=600'); 
     if (window.focus) {newwindow.focus()}                                 
     return false; 
    } 
    var url="www.google.com"; 
     googleplusbtn(url); 
(まだテストしていません)

Refer this link

1

答えが非常に悪いです。ログインにはapiを使用し、コンテンツを共有する必要があります。

require_once 'google-api-php-client-master/src/Google/Client.php'; 
$client = new Google_Client(); 
$client->setClientId('YOUR_CLIENT_ID'); 
$client->setClientSecret('YOUR_CLIENT_SECRET'); 
$client->setRedirectUri('YOUR_REDIRECT_URI'); 
$plus = new Google_PlusService($client); 

$authUrl = $client->createAuthUrl(); 
$visibleActions = array(
    'http://schema.org/AddAction', 
    'http://schema.org/ReviewAction'); 

$authUrl .= '&request_visible_actions=' . 
    urlencode(implode(' ', $visibleActions)); 
print '<a href="' . $authUrl . '">Sign in with Google</a>'; 
1

共有リンクは、ネイティブクライアントアプリケーション、Flashアプリケーション、プライバシーに敏感なサイト、および+1ボタンや共有ボタンを使用できないユーザーを対象としています。あなたのサイトに次のマークアップを追加すると、あなたの訪問者の共有ダイアログを開くための簡単なアイコンが表示されます。

<a href="https://plus.google.com/share?url=https://stackoverflow.com/questions/11868291/google-plus-share-and-parameters-in-url" onclick="javascript:window.open(this.href, 
 
      '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;"><img 
 
      src="https://www.gstatic.com/images/icons/gplus-64.png" alt="Share on Google+"/></a>

関連する問題