「Duplicate Post」で「WP to Twitter」するとトラブルに

WordPressで記事を複製するプラグイン「Duplicate Post」と記事内容を投稿する「WP to Twitter」は相性がよくありません。複製した記事を投稿すると過去のtwitterカードが表示されるようです。解決にはIFTTTなどの外部サービスを利用したほうがいいかもしれません。
  • 「Duplicated Post」で記事を複製すると元記事のtwitterカードが残る
  • 修正は同じパーマリンクの記事を新規作成する必要がある
  • IFTTTなどの利用を検討してほうがいいかも

トラブル

まずは、以下の画像をご覧ください。

上記画像は、当サイトでWordPressテーマをレビューしたときの、twitter上での投稿です。元々、WordPress上で、「Socially Viral」というWordPressテーマのレビュー記事を投稿し、それを「Duplicate Post」というプラグインで複製して、別のWordPressテーマの記事を作成しました。

そして、当サイトはWordPressで投稿した記事を「Wp to Twitter」というプラグインを利用して、twitterへ自動投稿する仕組みをとっています。

その結果、新しく書いたWordPressテーマの記事に、「Socially Viral」のTwitterカードの情報が残ってしまって、投稿内容とtwitterカードの内容に齟齬がでるというトラブルに見舞われました。

解決方法

方法1:手作業で記事を再作成する

通常の新規投稿と同じ要領で、記事を再作成すれば修正できます。一度書いた記事ですので、テキストエディタにコピー&ペーストして、記事を一回消去して、同じパーマリンクで記事を再作成すれば、影響はほとんどありません。しかし、記事の生産性を考えますと、あまり賢い方法ではないかもしれません。あくまで応急処置的な方法という位置づけです。

方法2:IFTTTを利用する

IFTTTというサービスを利用すると、RSS上で表示された情報をFacebookやTwiiterに連携することができます。当サイトもFacebookへの連携はIFTTTを使っています。ですが、twitterへなぜIFTTTを採用しなかったかといいますと、「Wp to Twitter」には、タグをハッシュタグに変換する機能がついていて、これが非常に優秀だったからです。Facebookではハッシュタグはあまり役に立ちませんが、Twitterではこの機能が非常に有効です。ですが、このトラブルの一件を受けて、今後、RSSにタグを表示させ、IFTTT経由でTwitterに連携する方法も作る必要が出てくると感じました。

まとめ

「Duplicate Post」も「WP to Twitter」も、記事作成や情報発信においては非常に作業を楽にしてくれるプラグインです。しかし、この2つが両立しないことが今回のトラブルでわかりました。Twitter投稿のほうは、RSS経由という別の方法がありますので、子テーマに追加のPHPコードを記述していく対策をとることになるかと思います。進展がありましたら、追って記事にしたいと思います。