diff --git a/src/steps/extract-metadata.js b/src/steps/extract-metadata.js
index eb17c9a6..e1495e87 100644
--- a/src/steps/extract-metadata.js
+++ b/src/steps/extract-metadata.js
@@ -14,7 +14,7 @@ import { toString } from 'hast-util-to-string';
import { remove } from 'unist-util-remove';
import { visit, EXIT, CONTINUE } from 'unist-util-visit';
import {
- getAbsoluteUrl, makeCanonicalHtmlUrl, optimizeImageURL, resolveUrl,
+ getAbsoluteUrl, makeCanonicalHtmlUrl, optimizeImageURL, resolveUrl, rewriteUrl,
} from './utils.js';
import { toMetaName } from '../utils/modifiers.js';
import { childNodes } from '../utils/hast-utils.js';
@@ -251,7 +251,9 @@ export default function extractMetaData(state, req) {
meta.image = content.image || '/default-meta-image.png';
}
if (meta.image) {
- meta.image = getAbsoluteUrl(state, optimizeMetaImage(state.info.path, meta.image));
+ meta.image = rewriteUrl(state, meta.image);
+ meta.image = optimizeMetaImage(state.info.path, meta.image);
+ meta.image = getAbsoluteUrl(state, meta.image);
}
meta.imageAlt = meta['image-alt'] ?? content.imageAlt;
diff --git a/test/fixtures/content/image-from-meta-rewrite-link.html b/test/fixtures/content/image-from-meta-rewrite-link.html
new file mode 100644
index 00000000..da662f5f
--- /dev/null
+++ b/test/fixtures/content/image-from-meta-rewrite-link.html
@@ -0,0 +1,34 @@
+
+
+
+ ACME CORP
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/fixtures/content/image-from-meta-rewrite-link.md b/test/fixtures/content/image-from-meta-rewrite-link.md
new file mode 100644
index 00000000..b09b7f65
--- /dev/null
+++ b/test/fixtures/content/image-from-meta-rewrite-link.md
@@ -0,0 +1,11 @@
+# Hero
+
+Test Content.
+
++---------------------------------------------------------------------------------------------------+
+| Metadata |
++------------------+--------------------------------------------------------------------------------+
+| Image | |
++------------------+--------------------------------------------------------------------------------+
+| Publication Date | 09/12/2023 |
++------------------+--------------------------------------------------------------------------------+
diff --git a/test/fixtures/content/image-from-meta.html b/test/fixtures/content/image-from-meta.html
index a9f00d73..9e4fe3d1 100644
--- a/test/fixtures/content/image-from-meta.html
+++ b/test/fixtures/content/image-from-meta.html
@@ -5,12 +5,12 @@
-
-
+
+
-
+
diff --git a/test/rendering.test.js b/test/rendering.test.js
index 4c990022..7c6a0128 100644
--- a/test/rendering.test.js
+++ b/test/rendering.test.js
@@ -378,6 +378,11 @@ describe('Rendering', () => {
await testRender('image-from-meta-rewrite', 'html');
});
+ it('uses correct image - from metadata with rewrite (link)', async () => {
+ loader.status('config-all.json', 404);
+ await testRender('image-from-meta-rewrite-link', 'html');
+ });
+
it('uses correct description', async () => {
config = DEFAULT_CONFIG_EMPTY;
await testRender('description-long', 'head');