Ich arbeite an einer WordPress-Site. Wenn sich ein Benutzer auf der Website anmeldet, wird er zur Seite mit den Allgemeinen Geschäftsbedingungen weitergeleitet. Wenn er also die Allgemeinen Geschäftsbedingungen akzeptiert, darf er Dienste nutzen, und wenn er die Allgemeinen Geschäftsbedingungen nicht akzeptiert, wird sein Konto gekündigt. Jetzt habe ich die Funktion wp_delete_user verwendet, um sein Konto zu kündigen, aber es funktioniert nicht. Hier ist mein Code
add_action('init', 'function_init_terms');
function function_init_terms()
{
if(isset($_POST['terms_submit']))
{
if($_POST['terms_agree'] == 'yes')
{
wp_redirect( get_permalink(215)); exit;
}
if($_POST['terms_agree'] != 'yes')
{
$user_ID = get_current_user_id();
wp_delete_user($user_ID);
echo html_entity_decode( wp_logout_url(home_url()) );
}
}
}
Der erste Teil des Codes funktioniert einwandfrei, dh wenn er mit den Bedingungen einverstanden ist, wird er erfolgreich auf die Seiten-ID 215 umgeleitet. Aber der andere Teil funktioniert nicht. Hier ist mein html
<form method="POST" action="<?php bloginfo('url') ?>/">
<input type="checkbox" name="terms_agree" id="terms_agree" value="yes"/>Agree<br>
<input type="submit" name="terms_submit" id="terms_submit" value="Continue" />
</form>
Was meinst du mit “der andere Teil funktioniert nicht”? Erhalten Sie einen Fehler?
– andreivictor
29. März 2014 um 18:28 Uhr
denn wenn der Benutzer die Allgemeinen Geschäftsbedingungen nicht akzeptiert, sollte sein Konto gekündigt werden, aber es wird auf die Startseite umgeleitet und der Benutzer ist immer noch angemeldet und sein Konto wird nicht gelöscht.
– Riz
29. März 2014 um 18:31 Uhr
habe es erledigt. verwendete globale Variable $wpdb. vielen Dank für Ihre Zeit
– Riz
29. März 2014 um 18:44 Uhr
Es kann damit gemacht werden
wp_delete_user
. Sie müssen die enthalten./wp-admin/includes/user.php
Datei vor derwp_delete_user()
Funktionsaufruf, andernfalls wird a ausgelöstcall to undefined function
Error. Beispiel hier: codex.wordpress.org/Function_Reference/wp_delete_user#Examples– andreivictor
29. März 2014 um 18:46 Uhr