Υπάρχουν μερικά μέρη σε κάθε σελίδα. Αυτά περιλαμβάνουν τη διάταξη, το περιεχόμενο και τις επιλογές γλώσσας.
Η διάταξη είναι το HTML που περιβάλλει το περιεχόμενο. Περιλαμβάνει την κεφαλίδα, το υποσέλιδο και οποιαδήποτε άλλα στοιχεία που είναι συνεπή σε όλες τις σελίδες. Αυτή η διάταξη ορίζεται σε μια άλλη σελίδα ως συνάρτηση TypeScript.
Το περιεχόμενο είναι το HTML που είναι μοναδικό για κάθε σελίδα. Το ορίζουμε όπως φαίνεται παρακάτω. Βεβαιωθείτε ότι συμπεριλαμβάνετε κλήσεις στο i18Next.t όπου είναι κατάλληλο για να υποστηρίξετε τις μεταφράσεις.
Οι επιλογές γλώσσας είναι οι διαφορετικές γλώσσες στις οποίες είναι διαθέσιμη η σελίδα. Τις ορίζουμε στην αρχή. Συνδέει τη διαδρομή και τη λειτουργία της ατομικής σελίδας μαζί. Η μετάφραση των διευθύνσεων URL διαχειρίζεται μέσα σε αυτό.
Copied!
TypeScript - pages/ExamplePage.ts
import i18next from"../GlobalSitesCore/i18n";
import { Layout } from"../Layout";
import { RenderProps, renderLanguageFiles } from"../GlobalSitesCore/languages";
import { FileResult } from"../GlobalSitesCore/FileResult";
exportasyncfunctionExamplePagePages(): Promise<FileResult[]> {
returnrenderLanguageFiles({
subDirectoryInEnglish: undefined,
fileNameInEnglish: "example-page",
includeInSitemap: true,
render: (props) =>ExamplePage(props),
});
}
interfaceExamplePagePropsextendsRenderProps {}
exportfunctionExamplePage(props: ExamplePageProps): string {
var title = i18next.t(`Example Page`);
var metaDescription = i18next.t(`This is an example page.`);
returnLayout({
lang: props.option.code,
title: title,
description: metaDescription,
languageOptions: props.allOptions,
content: /* HTML */`
<h1>${title}</h1>
<p>${metaDescription}</p>
<!-- Add more content as needed -->
`,
});
}