html头中拾取的元标记的顺序

Dem*_*ian 5 html wordpress html-head meta-tags

我想知道是否有人可以解释社交媒体丰富的预览如何定义选择哪个og:title

我使用wordpress,对于某些页面,我会插入php echo字符串以将它们注入<head>。我选择这样做是为了将某些标题和说明更改为更多的商业文本。显而易见的是,有2个og:titlemeta标签;我注入了一个和Wordpress后端页面标题。

有人告诉我,顶部的第一个meta标签<head>将被选作meta标签,例如将其用于丰富的预览,但这似乎不再发生了。

以下是我目前的情况以及在中的元标记的确切顺序<head>

<html>
	<head>
		<meta charset="UTF-8">
		<title>EXAMPLE</title> // my injected and used by Google
		<link rel="canonical" content="https://example.com">
		<meta name="description" content="description">
		<meta name="subject" content="example">
		<meta name="og:image" content="/image.jpg"> // my injected and used by Social Media
		<meta property="og:title" content="og:title #1"> // my injected og:title, but ignored
		<meta property="og:description" content="description">
		<meta property="og:url" content="https://example.com">
		<meta name="twitter:title" content="EXAMPLE">
		<meta name="twitter:description" content="description">
		<link rel="alternate" href="https://example.com" hreflang="nl-nl">
		<link rel="alternate" href="https://example.com" hreflang="nl-be">
		<title>EXAMPLE</title> // default by Wordpress
		<meta property="og:title" content="og:title #2"> // default by Wordpress and being used
		<meta property="og:type" content="website">
		<meta property="og:url" content="https://example.com">
                <meta name="og:image" content="/image.jpg"> // default by Wordpress
	</head>	
</html>
Run Code Online (Sandbox Code Playgroud)

发生的事情是,Whatsapp和Facebook正在采用第二个og:titlemeta标签,在我看来这没有意义。

在后端更改标题页不是解决方案,因为它变成了类似Check out our great shop的东西,这不是用户友好的。另外,我也不喜欢Yoast,因为Yoast会将多余的代码加载到页面中,这是我不想要的。

谁知道解决方案,或者可以解释为什么会这样?


更新和答案
感谢克里斯,我了解og:元标记正在中从上到下进行扫描<head>,并用正在扫描的最后一个更新了2个相同的属性。此RDFa流程通常用于Facebook,Whatsapp,Twitter等应用。一个例外: og:image顶部似乎需要,但它不会覆盖其下面的第二个或第三个。

与Google搜索相关的标签由顶部的第一个标签拾取,<head>并保持该标签为“先到先得”。

解决方案:我将og:标记注入的底部,<head>其他标记则保留在顶部。经过测试,它可以正常工作。