🐛(frontend) avoid documents indexing in search engine

Some documents are available publicly (without being logged) and may thus end-up
being indexed by search engine.
This commit is contained in:
NathanPanchout
2024-10-24 10:33:14 +02:00
committed by Nathan Panchout
parent d715e7b3b6
commit a5af9f0776
3 changed files with 26 additions and 3 deletions

View File

@@ -21,6 +21,7 @@ and this project adheres to
- 🐛(i18n) same frontend and backend language using shared cookies #365
- 🐛(frontend) add default toolbar buttons #355
- 🐛(frontend) throttle error correctly display #378
- 🐛(frontend) (frontend) avoid documents indexing in search engine #372
## Removed

View File

@@ -7,6 +7,22 @@ test.describe('Doc Routing', () => {
await page.goto('/');
});
test('Check the presence of the meta tag noindex', async ({ page }) => {
const buttonCreateHomepage = page.getByRole('button', {
name: 'Create a new document',
});
await expect(buttonCreateHomepage).toBeVisible();
await buttonCreateHomepage.click();
await expect(
page.getByRole('button', {
name: 'Share',
}),
).toBeVisible();
const metaDescription = page.locator('meta[name="robots"]');
await expect(metaDescription).toHaveAttribute('content', 'noindex');
});
test('checks alias docs url with homepage', async ({ page }) => {
await expect(page).toHaveURL('/');

View File

@@ -1,4 +1,5 @@
import { Loader } from '@openfun/cunningham-react';
import Head from 'next/head';
import { useRouter as useNavigate } from 'next/navigation';
import { useRouter } from 'next/router';
import { useEffect, useState } from 'react';
@@ -21,9 +22,14 @@ export function DocLayout() {
}
return (
<MainLayout withoutFooter>
<DocPage id={id} />
</MainLayout>
<>
<Head>
<meta name="robots" content="noindex" />
</Head>
<MainLayout withoutFooter>
<DocPage id={id} />
</MainLayout>
</>
);
}