Stage BTS SIO - SLAM

Stage 2nde année au CNRS

Du 8 janvier au 9 février 2024

Une mission divisée en 2 étapes : restructuration HTML d'un site puis intégration d'une base de données avec EasyAdmin.

Étape 1 : Restructuration HTML

  • Réorganisation approfondie d'un site internet initialement construit via SPIP (leglise.cnrs.fr)
  • Adoption d'une nouvelle structure HTML pure, excluant l'utilisation de base de données au profit de fichiers HTML statiques

Étape 2 : Base de données

  • Exploration de la possibilité de générer automatiquement des fichiers HTML via un formulaire
  • Approche abandonnée (trop complexe) en faveur de EasyAdminBundle pour simplifier l'administration

Contexte du stage

Information sur l'entreprise

  • Nom : Centre National de la Recherche Scientifique (CNRS)
  • Activité : Recherche
  • Forme juridique : EPST (Établissement Public à caractère Scientifique et Technologique)
  • Adresse : Campus de Villejuif (7 Rue Guy Môquet, 94800 Villejuif)
  • Effectif à l'adresse : De 1 000 à 4 999 employés
  • Effectif total : Plus de 33.000 agents

Service d'accueil

  • Unité Ardis : Appui à la Recherche et Diffusion des Savoirs - Une unité qui comporte 4 équipes, dont une équipe informatique
  • Activités de l'équipe : Prestations web, gestion de bases de données, administration des serveurs, dépannage des machines

Expression des besoins

  • SPIP (Système de Publication pour l'Internet Partagé) est un CMS open source français largement utilisé pour la création et gestion de sites web
  • Reposant sur une base de données, SPIP offre une gestion efficace du contenu, adaptée aux sites d'information, blogs ou sites institutionnels
  • Un plugin essentiel développé par le CNRS n'est plus maintenu, entraînant des problèmes de compatibilité
  • La nécessité de mettre à jour SPIP (imposée par l'hébergeur pour des raisons de sécurité) rend la migration vers un autre support inévitable

Cahier des charges

  • Recodage des pages selon les directives initiales de ma tutrice
  • Mise en place d'une gestion multilingue via des URL /fr et /en
  • Création d'une base de données pour générer de nouvelles pages en tant qu'administrateur
  • Adoption d'EasyAdminBundle pour simplifier les opérations CRUD
    • L'intégration s'est bien déroulée, mais l'ajout d'images a nécessité une recherche approfondie
    • Solution trouvée : insertion d'images via expressions régulières, avec une syntaxe spécifique [image: filename.jpg, position, width, height, mediabox]

Ressources mises à disposition

  • PC portable HP : Windows 11 Pro, Intel Core i7, 16 Go de RAM
  • IDE JetBrains : PhpStorm
  • Docker Desktop pour la gestion de la base de données

Création du site

J'ai développé une interface de connexion pour les administrateurs, pour leur faciliter la création de rubriques et d'articles sur le site.

L'objectif principal est de simplifier le processus d'alimentation du site pour l'administrateur, en lui permettant de créer du contenu via un formulaire, lui évitant ainsi d'avoir à utiliser des fichiers HTML et de connaître ce langage.