reactjs meta标签不工作使用Next.js甚至Facebook调试器

9wbgstp7  于 2023-01-04  发布在  React
关注(0)|答案(2)|浏览(134)

我正在使用React + NextJS(均为最新版本)(未使用redux等)
我需要动态更改元标记的内容
当我渲染页面并通过Chrome开发工具观察时,成功创建了Meta标签,但当我在Slack,FB等上提供URL时,它不起作用。此外,Facebook OpenGraph调试器无法检查我的og标签
需要帮助
这是我的密码
[编号]. jsx〉

const Main = () => {
....

    return (
    <>
        <MetaSEO
            title={response.data.seo ? response.data.seo['page-title'] : SEOSheet.seo.title}
            keywords={response.data.seo ? response.data.seo.keywords : SEOSheet.seo.keywords}
            description={response.data.seo ? response.data.seo.description : SEOSheet.seo.description}
            ogType={SEOSheet.seo['sns-type']}
            ogTitle={response.data.seo ? response.data.seo['sns-title'] : SEOSheet.seo['sns-title']}
            ogDescription={response.data.seo ? response.data.seo['sns-description'] : SEOSheet.seo['sns-description']}
            ogImage={SEOSheet.seo['sns-image']}
            ogUrl={SEOSheet.seo['sns-url']}
            indexing="all"
          />
.......
    </>
    );
}

搜索引擎优化. jsx

import Head from 'next/head';

const MetaSEO = ({
  title, keywords, description, ogTitle, ogDescription, ogImage, ogUrl, indexing
}) => (
  <Head>
    <title>{title}</title>
    <meta name="keywords" content={keywords} />
    <meta name="description" content={description} />
    <meta property="og:type" content="website" />
    <meta property="og:title" content={ogTitle} />
    <meta property="og:description" content={ogDescription} />
    <meta property="og:image" content={ogImage} />
    <meta property="og:url" content={ogUrl} />
    <meta name="robots" content={indexing} />
  </Head>
);

export default MetaSEO;

努力解决我做了-〉-使用NextSEO-在所有页面添加Meta标签-使用getInitialProps

kq0g1dla

kq0g1dla1#

您需要使用getServerSidePropsgetStaticProps获取数据,然后通过props将其传递给组件,以便正确呈现 meta标记,您可以使用View Source验证它,而不使用Dev Tools

tag5nh1u

tag5nh1u2#

---已解决---有一些代码阻止组件呈现(如'return false')

相关问题