【WordPress】ツイッターのハッシュタグをカテゴリー・タグ名から作成する例

WordPressでサイトを作成していると、Twitter(ツイッター)のシェアボタン・共有リンクを設置する場合があると思います。

今回は、そのツイッターの共有リンクをWordPressのサイトで作成する例となります。

また、ツイッターの共有リンクでは、URLパラメータを設定することにより、ハッシュタグをシェアするツイートに含めることができます。

例では、そのハッシュタグを投稿に設定されているカテゴリー・タグ名を使い作成します。

ツイッター共有リンクのハッシュタグをカテゴリー・タグ名から作成

例のツイッターの共有リンクでは、共有するツイート内に以下の4点が含まれる形となります。

  • シェアするURL
  • ページタイトル
  • ハッシュタグ(カテゴリー・タグ名から作成)
  • ツイッターユーザー名

ソースコードは以下となり、投稿内でツイッターの共有リンクを表示したい場所に記述します。

<?php
// 現在のページURLを取得してURLエンコード
$url_encode = urlencode( get_permalink() );
// 現在のページのタイトルを取得してURLエンコード
$title_encode = urlencode( get_the_title() );

// カテゴリー・タグ名を格納する変数$hashtagsを定義
$hashtags = NULL;
// ループですべてのカテゴリー名を取得
$categories = get_the_category();
foreach( $categories as $category ) {
	$hashtags .= $category->name . ',';
}
// ループですべてのタグ名を取得
$posttags = get_the_tags();
if ( $posttags ) {
	foreach( $posttags as $tag ) {
		$hashtags .= $tag->name . ',';
	}
}

// 取得したカテゴリー・タグ名をURLエンコード
$tags_encode = urlencode( $hashtags );
?>

<!-- Twitterの共有リンク -->
<p class="share-twitter">
	<a target="_blank" href="<?php echo esc_url( 'https://twitter.com/share?url=' . $url_encode . '&text=' . $title_encode . '&via=yic666kr&hashtags=' . $tags_encode ); ?>">Twitterでシェア</a>
</p>

ソースコードの説明

今回の例では、ツイッターの共有リンクのURLパラメータは、以下のような形式となります。

https://twitter.com/share?url=「シェアするURL」&text=「ページタイトル」&via=「ツイッターユーザー名」&hashtags=「ハッシュタグ名」

URLパラメータの値は、以下のとおり取得・指定しています。

  • 「シェアするURL」は、get_permalink()で取得し指定。
  • 「ページタイトル」は、get_the_title()で取得し指定。
  • 「ツイッターユーザー名」は、ツイッターユーザー名の@を除いて文字列で指定。
  • 「ハッシュタグ名」は、 get_the_category()、get_the_tags()でカテゴリー・タグ名を取得し指定。

URLパラメータで使用するため、テンプレートタグで取得した値は、urlencode関数でURLエンコードを行っています。

また、今回の例で使用したカテゴリー・タグ名の取得方法については、以下のリンク先を参考にしてみてくささい。

urlencode関数について

urlencode関数は、URLに使用できない文字列を、URLに使用できる文字列に変換(URLエンコード)することができます。また、WordPress以外でも使用できるPHP関数となります。

URLエンコードの詳細については、以下のリンク先を参考にしてみてください。

URLエンコードとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ツイッターの共有リンクのURLパラメータ一覧

以下は、今回使用したものも含む、ツイッターの共有リンクのURLパラメータ一覧となります。

パラメータ名 パラメータに指定するデータ
text シェアする文章を指定
url シェアするページのURLを指定
hashtags ハッシュタグを指定。複数の場合はカンマで区切る
via メンションするユーザー名を指定
related ツイート後にフォローを促す画面に表示するユーザーを指定

 

参考サイトなど

コメント投稿またはTwitterで返信

コメントは、以下の項目(*は必須項目)を入力し「コメントを送信」ボタンから送信お願いします。メールアドレスは公開されることはありません。
Twitterで返信する場合はこちらから。

また、コメントは承認制となります。