Aller au contenu

Fonctionnalités

Référence du schéma des options de configuration de l’intégration StudioCMS

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {},
});

robotsTXT permet à l’utilisateur d’activer/de désactiver et de configurer l’utilisation de l’intégration personnalisée astro-robots-txt de StudioCMS

  • Type : RobotsConfig | boolean
  • Par défaut : { policy: [ { userAgent: ['*'], allow: ['/'], disallow: ['/dashboard/'] } ] }

Remarque : robotsTXT peut également être défini sur false pour le désactiver.

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
robotsTXT: {
policy: [
{
userAgent: ['*'],
allow: ['/'],
disallow: ['/dashboard/'],
}
]
}
}
})

injectQuickActionsMenu permet d’activer et de désactiver le menu d’actions rapides qui permet un accès facile à votre tableau de bord lorsque vous êtes connecté sur des pages autres que le tableau de bord.

  • Type : boolean
  • Par défaut : true
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
injectQuickActionsMenu: true
}
})

sdk peut être soit un booléen, soit un objet contenant la configuration du cache. S’il s’agit d’un booléen, sa valeur par défaut est true et le transforme en objet avec la configuration du cache par défaut.

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
import { Duration } from 'effect';
// ---cut---
export default defineStudioCMSConfig({
features: {
sdk: {
cacheConfig: {
lifetime: Duration.minutes(5),
},
}
}
})

cacheConfig est un objet utilisé pour configurer le cache du SDK.

  • Type : boolean | { lifetime?: Duration | undefined; } | undefined
  • Par défaut : { lifetime: Duration.minutes(5) }
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
import { Duration } from 'effect';
export default defineStudioCMSConfig({
features: {
sdk: {
// PAR DÉFAUT - Ceci utilise la configuration de cache par défaut.
cacheConfig: {
lifetime: Duration.minutes(5),
},
}
}
})

dashboardConfig permet la personnalisation de la configuration du tableau de bord

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {}
}
})

dashboardEnabled permet à l’utilisateur d’activer ou de désactiver le tableau de bord de StudioCMS tout en fournissant toutes les aides et utilitaires à ceux qui personnalisent leur configuration. Cela désactivera le tableau de bord et vous devrez gérer votre contenu via votre base de données

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
dashboardEnabled: true,
}
}
})

inject404Route permet à l’utilisateur d’activer ou de désactiver la route 404 par défaut pour le tableau de bord

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
inject404Route: true,
}
}
})

faviconURL permet à l’utilisateur de remplacer l’URL du favicon par défaut par une URL personnalisée

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
faviconURL: '/favicon.svg',
}
}
})

dashboardRouteOverride permet à l’utilisateur de modifier la route de base sur laquelle le tableau de bord est diffusé (par exemple, /admin au lieu de /dashboard)

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
dashboardRouteOverride: 'dashboard',
}
}
})

versionCheck permet à l’utilisateur d’activer ou de désactiver la vérification de version du tableau de bord.

Cela vérifiera la dernière version de StudioCMS et avertira l’utilisateur si une nouvelle version est disponible.

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
versionCheck: true,
}
}
})

security Permet la personnalisation de la configuration de sécurité

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
security: {}
}
}
})

hideGeneratorTags Permet d’activer ou de désactiver les balises méta generator dans le code HTML du tableau de bord.

  • Type : boolean
  • Par défaut : false
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
dashboardConfig: {
security: {
hideGeneratorTags: false
}
}
}
})

authConfig permet la personnalisation de la configuration d’authentification

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
authConfig: {}
}
})

Permet d’activer ou de désactiver la configuration d’authentification

  • Type : boolean
  • Par défaut : true
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
authConfig: {
enabled: true
}
}
})

Permet d’activer ou de désactiver les fournisseurs d’authentification

Le fournisseur suivant peut être configuré à partir d’ici : usernameAndPassword.

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
authConfig: {
providers: {
usernameAndPassword: true,
usernameAndPasswordConfig: {
allowUserRegistration: true
}
}
}
}
})

developerConfig permet la personnalisation des options du développeur

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
developerConfig: {}
}
})

Active le mode démo pour le site. Si ce paramètre est défini sur un objet, le site sera en mode démo et l’utilisateur pourra se connecter avec le nom d’utilisateur et le mot de passe fournis.

studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
developerConfig: {
demoMode: {
username: 'foo',
password: 'bar'
}
}
}
})

preferredImageService permet de définir l’identifiant du service d’images préféré

Nécessite l’installation d’un service d’image tel que cloudinary-js

  • Type : string | undefined
  • Par défaut : undefined
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
preferredImageService: 'cloudinary-js'
}
})

webVitals Permet d’activer ou de désactiver le suivi des indicateurs de performance web

  • Type : boolean
  • Par défaut : false
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
webVitals: true
}
})

api permet de configurer des fonctionnalités spécifiques à l’API

  • Type : ApiConfig | undefined
  • Par défaut : undefined
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
api: {
// fonctionnalités spécifiques à l'API ici
}
}
})

apiDocs permet d’activer ou de désactiver la route Docs de l’API qui fournit une spécification OpenAPI pour l’API de StudioCMS.

  • Type : boolean
  • Par défaut : true
studiocms.config.mjs
import { defineStudioCMSConfig } from 'studiocms/config';
// ---cut---
export default defineStudioCMSConfig({
features: {
api: {
apiDocs: true
}
}
})