La fonction register_uninstall_hook() n’a pas l’effet souhaité (Créer un compte)

  • WordPress :5.5
  • Statut : hors support
3 sujets de 1 à 3 (sur un total de 3)
  • Auteur
    Messages
  • #2359131
    mumu51
    Participant
    Padawan WordPress
    97 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 7.4
    • Thème utilisé : Je le fais moi-même
    • Extensions en place : Askimet, Caldera Forms
    • Nom de l’hébergeur : En local

    Problème(s) rencontré(s) :

    Je développe actuellement mon propre plugin et rencontre un souci de codage.
    J’ai bien prévu le fichier unistall.php dans le dossier, seulement, ma fonction visant à supprimer mes tables générées par mon plugin lui-même ne sont pas supprimées lors de la suppression du plugin depuis l’administration.

    Voici mon code :

    <?php

    /**
    * Fichier de désinstallation du plugin
    *
    * @package devisPlugin
    */

    if( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) exit();

    function dp_delete_database_tables(){

    global $wpdb;

    $table_regimes = $wpdb->prefix . 'regimes';
    $table_prospects = $wpdb->prefix . 'prospects';
    $table_devis = $wpdb->prefix . 'devis';

    $wpdb->query( "DROP TABLE IF EXISTS $table_regimes" );
    $wpdb->query( "DROP TABLE IF EXISTS $table_prospects" );
    $wpdb->query( "DROP TABLE IF EXISTS $table_devis" );

    }
    register_uninstall_hook(__FILE__, 'dp_delete_database_tables');

     

    J’en profite pour prendre un peu d’avance et demande à qui voudra bien m’aider comment activer un plugin automatiquement depuis un thème.
    En fait, je le réalise moi-même, et j’aimerai bien créer une fonction qui installe automatiquement mon plugin, mais le hook register_activate_hook() n’a aucun effet…

    Merci d’avance !

    #2359136
    mathieu42
    Participant
    Maître WordPress
    2025 contributions

    vous êtes sur d’avoir besoin de nouvelles tables ? d’habitude les extensions créent un nouveau type d’objet avec « register_post_type »

    https://fr.wordpress.org/support/article/post-types/

    #2359149
    mumu51
    Participant
    Padawan WordPress
    97 contributions

    Bonjour,

    Je suis sûre de vouloir créer des tables, puisque j’en ai besoin pour récupérer des données qui seront enregistrées du côté front, via un formulaire, et pour tout ce qui va y avoir à enregistrer, je ne me vois pas enregistrer de nouvelles options.
    Autant passer par la création de nouvelles tables, en plus, par la suite, je ferais quelques manipulations avec requêtes SQL du côté administration (supprimer un devis, l’envoyer par mail…).
    Mon souci actuel est que lorsque je supprime mon plugin depuis l’administration, mes tables ne se suppriment pas dans la bdd.

    Je connais les custom_post_type mais pour le coup, je recherchais un moyen de pouvoir le générer depuis le fichier functions.php.

     

     

     

3 sujets de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.