• I read the post about the invalid links, and, while reviewing some of the newsletters that were already sent out, I encountered a similar problem. In the footer – which is supposed to provide the legally required options for unsubscribing and modifying the subscription – the subscriber isn’t found any more. When I click the unsubscribe link, the confirmation form does appear, but I don’t know if the button will work properly (it’s a real subscriber which I do not want to actually delete). The alternative option in that form (i.e. to unsubscribe from individual newsletters) no longer works. The link in the newsletter to modify the subscription (not to end it) also only returns the message “Subscriber not found.” This happens regardless of which version was used to create the newsletter (9.3.x or 9.4.1).
    Additionally, when viewing the newsletter in a browser, for example, the placeholders (eg. {name}) are no longer replaced in version 9.4.1; I suspect that instead of the personalized newsletter, only the template is displayed in the browser.
    To test this further, I just created a new subscriber using version 9.4.3. The sign-up process went smoothly, but the link in the confirmation email to manage the profile isn’t working again. Once again, the profile cannot be found.
    Please address this as soon as possible, as the issue apparently involves legal requirements.

Viewing 1 replies (of 1 total)
  • Hello,

    I’m also experiencing this bug. The link to the profile in the footer gives me the error ‘subscriber not found’.

    I debugged it with the help of an AI. The error comes from line 234 of the profile/profile.php file, because $user->_trusted is never a setter.

    Here are the two corrections the AI ​​suggested in the file: includes/module-base.php

    1. get_user_by_key() – (lines 437-439)

    $computed = md5($user->id . $user->token . $timestamp . $action);
    if (!hash_equals($computed, $signature)) {
    return null;
    }
    // The subscriber proved its identity with a valid signed key
    // it is trusted to access/modify its own data.
    $user->_trusted = true;
    return $user;

    2. get_user_by_old_key() – (line 465)

    if (hash_equals($user_token, $token)) {
    $user->_trusted = true;
    return $user;
    }

    @michael-travan, Can you please check the fix is OK.

Viewing 1 replies (of 1 total)

You must be logged in to reply to this topic.