diff --git a/Doc/Makefile b/Doc/Makefile
index b8896da4a91869..c8a749a02a89ec 100644
--- a/Doc/Makefile
+++ b/Doc/Makefile
@@ -204,6 +204,7 @@ dist-html:
find dist -name 'python-$(DISTVERSION)-docs-html*' -exec rm -rf {} \;
$(MAKE) html
cp -pPR build/html dist/python-$(DISTVERSION)-docs-html
+ rm -rf dist/python-$(DISTVERSION)-docs-html/_images/social_previews/
tar -C dist -cf dist/python-$(DISTVERSION)-docs-html.tar python-$(DISTVERSION)-docs-html
bzip2 -9 -k dist/python-$(DISTVERSION)-docs-html.tar
(cd dist; zip -q -r -9 python-$(DISTVERSION)-docs-html.zip python-$(DISTVERSION)-docs-html)
diff --git a/Doc/conf.py b/Doc/conf.py
index 7c7acc8029c732..cfd8b3a16dc8f7 100644
--- a/Doc/conf.py
+++ b/Doc/conf.py
@@ -624,11 +624,19 @@
# Options for sphinxext-opengraph
# -------------------------------
-ogp_site_url = 'https://docs.python.org/3/'
+ogp_canonical_url = 'https://docs.python.org/3/'
ogp_site_name = 'Python documentation'
-ogp_image = '_static/og-image.png'
+ogp_social_cards = { # Used when matplotlib is installed
+ 'image': '_static/og-image.png',
+ 'line_color': '#3776ab',
+}
ogp_custom_meta_tags = [
- '',
- '',
'',
]
+if 'create-social-cards' not in tags: # noqa: F821
+ # Define a static preview image when not creating social cards
+ ogp_image = '_static/og-image.png'
+ ogp_custom_meta_tags += [
+ '',
+ '',
+ ]
diff --git a/Doc/requirements.txt b/Doc/requirements.txt
index 2e429f46b43408..a2960ea9aa0203 100644
--- a/Doc/requirements.txt
+++ b/Doc/requirements.txt
@@ -11,7 +11,7 @@ sphinx~=8.2.0
blurb
-sphinxext-opengraph~=0.9.0
+sphinxext-opengraph~=0.10.0
sphinx-notfound-page~=1.0.0
# The theme used by the documentation is stored separately, so we need