Maison  >  Questions et réponses  >  le corps du texte

La mise à jour de WebhookUrl dans le plugin WordPress entraîne une erreur fatale : Erreur non détectée : appel à une méthode non définie Mollie\Api\Endpoints\SubscriptionEndpoint::update()

<p>J'essaie de mettre à jour le webhookUrl dans Mollie pour l'abonnement. L'ancien webhookUrl est obsolète et les programmeurs qui l'ont créé ne sont plus avec nous. </p> <p>Voici un lien vers le mollie que j'essaie d'utiliser. Après avoir vérifié la nouvelle version sur github, j'ai trouvé que la méthode de mise à jour des abonnements est un peu différente. Malgré les différences, j'obtiens toujours l'erreur : </p> <p>Erreur fatale : erreur non détectée : appel à une méthode non définie MollieApiEndpointsSubscriptionEndpoint::update()</p> <p>C'est le code que j'ai utilisé pour créer le formulaire. J'essaie de modifier le webhookUrl pour me connecter à Easy digital Downloads afin que l'abonnement et la licence n'expirent pas en raison de l'impossibilité de vérifier le paiement. </p> <p>Formulaire (admin__update_subscription.php) : </p> <pre class="brush:php;toolbar:false;"><form id="wmcs-form" method="post"> <div class="wmcs_admin_card"> <div class="wmcs_admin_body"> <fieldset class="choose-theme-wrap radio-boxes dp-tabular"> <ul> <li> <étiquette>ID client</étiquette> <type d'entrée="texte" id="id_client" nom="id_client" valeur=""obligatoire> ≪/li> <li> <label>ID d'abonnement</label> <type d'entrée="texte" id="subscription_id" nom="subscription_id" ≪/li> <li> <label>URL du webhook</label> <type d'entrée="texte" id="webhook_url" nom="webhook_url" valeur="" ≪/li> <li> <type de bouton="soumettre" class="bouton-primaire" nom="mollie_update_subscription">Modifier</bouton> ≪/li> </ul> </fieldset><!-- Fin du choix du thème --> </div><!-- Fin de wmcs_admin_body --> </div><!-- Fin de wmcs_admin_card --> </form></pre> <p>表单处理程序:</p> <pre class="brush:php;toolbar:false;">public function change_subscription(){ ?> <div class="wrap"> <?php if(isset($_POST['mollie_update_subscription'])){ if(!empty($_POST['customer_id']) && !empty($_POST['subscription_id'])){ $customer_id = sanitize_text_field($_POST['customer_id']); $subscription_id = sanitize_text_field($_POST['subscription_id']); $webhook_url = sanitize_text_field($_POST['webhook_url']); // $orderID = sanitize_text_field($_POST['order_id']); // $orderKey = sanitize_text_field($_POST['order_key']); echo $this->mollie_update_subscription($customer_id, $subscription_id, $webhook_url); } } ?> <h2><?php _e('Modifier l'URL d'abonnement'); ?>≪/h2> <div id="Fonctionnalités" class="wmcs-tabs"> <?php require_once('admin__update_subscription.php'); ?> </div> <!-- Fin des paramètres ---> <?php }</pré> <p>莫莉更新请求:</p> <pre class="brush:php;toolbar:false;">fonction publique mollie_update_subscription($customer_id, $subscription_id, $webhook_url){ $mollie = new MollieApiMollieApiClient(); $mollie->setApiKey(MOLLIE_KEY);(défini ailleurs) $message = ""; essayer { $client = $mollie->clients->get($customer_id); $abonnement = $client->getSubscription($abonnement_id); $abonnement->webhookUrl = $webhook_url; $subscription->description = 'réussite de la mise à jour de l'abonnement'; $mollie->abonnements->mise à jour(); $message = "<p>Abonnement mis à jour : " . $abonnement->id . "≪/p>" ; } catch (MollieApiExceptionsApiException $e) { $message = "<div class='alert alert-danger' role='alert'> L'appel API a échoué : " . htmlspecialchars($e->getMessage()).'</div>'; } renvoyer $message ; }</pré> <p>
P粉993712159P粉993712159384 Il y a quelques jours508

répondre à tous(1)je répondrai

  • P粉685757239

    P粉6857572392023-09-04 23:16:22

    J'ai trouvé la solution. Je dois changer cette pièce :

    $mollie->subscriptions->update();

    à

    $subscription->update();

    répondre
    0
  • Annulerrépondre