human
Quand devrais-je utiliser wp_register_script() avec wp_enqueue_script() par rapport à juste wp_enqueue_script()
gpt
La page Codex de ```wp_register_script()``` dit littéralement:

  Une façon sûre d'enregistrer des scripts JavaScript dans WordPress pour une utilisation ultérieure avec ```wp_enqueue_script()```.

Cela signifie que si vous souhaitez enregistrer vos scripts, mais ne pas les charger directement dans vos pages, vous pouvez enregistrer les fichiers une fois, puis les charger lorsque vous en avez besoin.

Par exemple:
Vous avez une instruction switch qui charge certaines fonctionnalités, mais deux des trois cas nécessitent un fichier JavaScript particulier, et un ne le nécessite pas. Vous pouvez mettre en file d'attente le script à chaque fois, ce qui coûte plus de ressources, ou simplement mettre en file d'attente le script lorsque vous en avez besoin:
```...
wp_register_script( 'mon-javascript-pratique', ... );
...
switch( $somevar ) {
    case 'valeur':
        wp_enqueue_script( 'mon-javascript-pratique' ); // nécessite le fichier
        ...
    break;
    case 'valeur2':
        wp_enqueue_script( 'mon-javascript-pratique' ); // nécessite le fichier
        ...
    break;
    default:
    case 'valeur3': // ne nécessite pas le fichier
        ...
    break;
}
```
Il n'est pas nécessaire d'enregistrer un script puis de le mettre en file d'attente, mais cela peut apporter de la logique à votre code si vous enregistrez tous les scripts dont vous avez besoin quelque part dans votre ```functions.php``` au lieu de partout dans votre code.

Le Codex indique également ce qui suit:

  Utilisez l'action ```wp_enqueue_scripts``` pour appeler cette fonction, ou ```admin_enqueue_scripts``` pour l'appeler côté administration.

Cela signifie que si vous souhaitez mettre en file d'attente votre script sur le front-end et dans le back-end, vous pouvez enregistrer un script une fois, puis le charger sur le front-end avec ```wp_enqueue_script``` et dans le back-end avec ```admin_enqueue_script```.
De cette façon, vous n'aurez pas la même ressource d'enfilement deux fois dans un thème, un plugin, un widget ou autre chose.