記事タイトルだけだとエゴサできないんだよなぁ……
このブログの記事下部にツイートボタン、ありますよね。

WordPressユーザーの皆さんにはご存知、Jetpackの共有ボタン(sharedaddy)が提供してくれているボタンなんですが、なんと挿入されるテキストが記事タイトルのみになっています。
どうにかしたいな〜と漁ったところ、まさにズバリなフィルターが用意されていました。
そのフィルターがsharing_title
フィルター。なんか名前からして他にも影響しそうなんだけどJetpackで使われているのはツイートボタンなどの共有ボタンに渡されるテキストのみの模様。
同フィルターにフックしているプラグインが他になければ、渡されるタイトルの後ろにテキトーに付け足してやればいいと思います。
1 2 3 |
add_filter( 'sharing_title', function ( $title, $post_id, $id ) { return $title . ' –– ' . get_bloginfo( 'name' ); }, 10, 3 ); |
ツイートのみに限定してフィルタを掛けたい場合は$id==='twitter'
でifを書いておけばいいです。
なおこれで取得されたタイトル、ツイートの場合は 140-24 (- viaで付加される文字数) を超えるとトリムされます。つまりタイトルが長すぎるとサイト名が切れる可能性。
そもそも日本語でタイトルそんなに長くならないだろうしvia文字数が多言語化考慮していなかったりでコード見て笑ってる自分がいる( via @screenname
と@screennameさんから
だと文字数変わらないから問題ないんだけれども。)
とりあえずサイト名が共有テキストに入ってくれました。
ちなみに、同様にsharing_permalink
フィルターは共有ボタンで共有されるURLのカスタマイズを可能にします。例えばAnalyticsのキャンペーントラッキングを利用したい場合はこれを利用すればいいでしょう。
以上、Jetpack 共有ボタンの記事タイトルの変え方でした。
ついでにシェアしていってくれてもいいんですよ?