@@ -20,14 +20,23 @@ export const resolvePagePermalink = ({
20
20
pathInferred : string | null
21
21
pathLocale : string
22
22
} ) : string | null => {
23
- // use permalink in frontmatter directly
23
+ // frontmatter.permalink has the highest priority
24
+ if ( frontmatter . permalink === null ) {
25
+ return null
26
+ }
24
27
if ( isString ( frontmatter . permalink ) ) {
25
28
return frontmatter . permalink
26
29
}
27
30
28
- // get permalink pattern
29
- const permalinkPattern = getPermalinkPattern ( { app, frontmatter } )
30
- if ( permalinkPattern === null ) {
31
+ // frontmatter.permalinkPattern has higher priority than app.options.permalinkPattern
32
+ if ( frontmatter . permalinkPattern === null ) {
33
+ return null
34
+ }
35
+
36
+ const permalinkPattern =
37
+ frontmatter . permalinkPattern || app . options . permalinkPattern
38
+
39
+ if ( ! isString ( permalinkPattern ) ) {
31
40
return null
32
41
}
33
42
@@ -45,22 +54,3 @@ export const resolvePagePermalink = ({
45
54
46
55
return ensureLeadingSlash ( link )
47
56
}
48
-
49
- /**
50
- * Get permalink pattern from frontmatter or app options
51
- */
52
- const getPermalinkPattern = ( {
53
- app,
54
- frontmatter,
55
- } : {
56
- app : App
57
- frontmatter : PageFrontmatter
58
- } ) : string | null => {
59
- if ( frontmatter . permalinkPattern === null ) {
60
- return null
61
- }
62
- if ( isString ( frontmatter . permalinkPattern ) ) {
63
- return frontmatter . permalinkPattern
64
- }
65
- return app . options . permalinkPattern
66
- }
0 commit comments