目次
はじめに
Pythonを使ってWordPress記事の自動投稿ができるようになったものの、
記事本文にリンクを貼る方法が分からず少しつまずきました。
今回は、本文中に任意のリンクを挿入する方法を学びましたので、
その実装方法と注意点をまとめておきます。
解決方法:HTMLタグを使ってリンクを挿入する
結論から言うと、content
部分にHTMLカスタムタグを直接記述すれば、
リンク付きのテキストを挿入することができます。
実際のコード例
以下は、記事情報を定義している部分の一部抜粋です:
post_data = {
'title': 'Hello,World!',
'content': "<p>これはテスト記事です。</p><p><a href='https://example.com'>こちらをクリック</a>するとリンク先へ飛びます。</p>",
'slug': 'python-post-test',
'categories': [category_id], # 記事に割り当てるカテゴリID
'status': 'draft', # 「下書き」。公開したい場合は "publish"
}
このように、<a href='URL'>リンクテキスト</a>
というHTML形式で書くことで、
WordPressに投稿された本文にそのままリンク付きテキストが反映されます。
応用例:URLを変数として使う
リンクが長い場合などは、URLを変数として用意しておくと便利です。
link_url = "https://example.com"
post_data = {
'title': 'リンクのテスト記事',
'content': f"<p>記事内で<a href='{link_url}'>こちら</a>を紹介しています。</p>",
'slug': 'link-test',
'categories': [category_id],
'status': 'publish',
}
このように **Pythonのf文字列(f-string)**を活用することで、
URLの使い回しや外部変数との連携もしやすくなります。
注意点
'
(シングルクオート)と"
(ダブルクオート)を混同しないよう注意<a href="...">...</a>
のHTML形式は、WordPressの投稿本文でそのまま反映される- WordPress側のエディタはHTMLを許可している必要あり(通常は問題なし)
まとめ
PythonからWordPressに記事を投稿する際、本文にリンクを挿入したい場合は
HTMLタグ(<a href=...>
)をそのまま文字列として使うだけで実現可能です。
ポイント:
content
にHTMLタグを記述すればリンクになる- URLが長い場合は変数化してf-stringで挿入
'
と"
の組み合わせに注意
PythonでのWordPress自動投稿がさらに便利になるので、
自動生成した記事にリンクを含めたい場合など、ぜひ活用してみてください。