■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

ブログ記事一覧ページに、記事毎のオリジナルソーシャルボタンを設置したい

unisaco > ブログ記事一覧ページに、記事毎のオリジナルソーシャルボタンを設置したい @ 2015/3/13 12:10
お世話になっております。
この度ブログを開設し、個別記事ページ(single.php)にオリジナル画像のソーシャルボタンを設置しました。
例えばツイートボタンは、以下のような方法です。
<a href="http://twitter.com/share?text=<?php $this->Blog->postTitle($post, false); ?>" target="_blank">画像</a>


ただできれば、記事一覧ページ(archives.php)に各記事独自のソーシャルボタンを設置したいと考えております。

▼ブログ記事一つ一つにフェイスブック、ツイッター、ハテブボタンを付けたい
http://forum.basercms.net/modules/newbb/viewtopic.php?topic_id=1719&forum=5#forumpost6459

上記を参考にさせていただきましたが、こちらのコードでは記事一覧ページのURLを取得してしまいます。
記事一覧ページにてソーシャルボタンをクリックした際、該当する個別記事のURLを参照し、シェアやツイート等を行う、
といったことをさせる方法はあるでしょうか。

雑談レベルでも構いませんので、何かアドバイス等いただけますと幸いです。
何卒よろしくお願いいたします。
kida > Re: ブログ記事一覧ページに、記事毎のオリジナルソーシャルボタンを設置したい @ 2015/3/18 11:26
unisacoさん、こんにちは!

> 記事一覧ページ(archives.php)に各記事独自のソーシャルボタンを設置したいと考えております。

ということなので、各記事のフルパスのURLを取得して、それをソーシャルボタンに入れてやると、
各記事のシェア、ツイートなどができるようになると思います。

そこで、Tweetボタンを一つ作ってみました!
<a href="https://twitter.com/share" class="twitter-share-button" data-url="<?php echo FULL_BASE_URL . $this->Blog->getPostLinkUrl($post, $post['BlogPost']['name']) ?>" data-via="basercms">Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>


記事毎のURLはこれで取得しています。
<?php echo FULL_BASE_URL . $this->Blog->getPostLinkUrl($post, $post['BlogPost']['name']) ?>


※上記のコードに出てくる FULL_BASE_URL は CakePHPの定数で、
https://example.com のような完全なURLを取得します。

FULL_BASE_URLを以下のように置き換えることも可能です。
<?php echo (empty($_SERVER["HTTPS"]) ? "http://" : "https://") . $_SERVER["HTTP_HOST"] . $this->Blog->getPostLinkUrl($post, $post['BlogPost']['name']); ?>


どのボタンにもTwitterの ”data-url”のようなURLを入力する箇所があると思うので、
上記のコードを参考にfacebookのシェアボタンなどを作ってみてはいかがでしょうか?
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
51 人のユーザが現在オンラインです。 (51 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 51