Ist es möglich, alle Benutzer programmgesteuert auf aktiv zu setzen?
Dieses Problem tritt auf, weil ich versuche, meine Benutzer mithilfe von Ansichten anzuzeigen. Da meine migrierten Benutzer jedoch "blockiert" sind, kann ich sie nicht für Ansichten verfügbar machen.
Könnte jemand einen Codeausschnitt oder ein Tutorial zum Setzen des Benutzerstatus auf Aktiv bereitstellen?
Dies ist der Code, den ich am Anfang ausführen muss.
define('DRUPAL_ROOT', getcwd());
$_SERVER['REMOTE_ADDR'] = "localhost";
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
// Set the active DB
db_set_active('sage');
sage
Datenbank eine Nicht-Drupal-Datenbank, nicht wahr ? Wenn ja, entfernen Sie den Aufruf von,db_set_active()
bevor Sie den Code ausführendb_set_active()
) die von Drupal installierten Tabellen enthält.db_set_active()
schlägt die Verwendung bei keiner Abfrage fehl.Sie können eine Kombination von
user_load_multiple()
und verwendenuser_save()
, um diestatus
Eigenschaften der Benutzer zu aktualisieren :Beachten Sie, dass alle E-Mail-Benachrichtigungen, die Sie festgelegt haben, um Benutzer über ihren Kontostatus zu informieren, mit dieser Methode aufgerufen werden.
Wenn Sie nicht möchten, dass dies geschieht, müssen Sie direkt in die
{users}
Tabelle gehen und den Status manuell festlegen (nicht empfohlen):quelle
Auf diese Weise können Sie den Status aller Benutzer auf aktiv setzen.
entity_save()
wird aus dem Entity API- Modul implementiert .quelle