Hallo zusammen,
ich bastel grade an einer Pluginerweiterung zum GeoAddress-
plugin.
Weiteres verwendetes
Plugin: Registered Only
Mein Ziel:
Jeder Benutzer soll seine eigene Kontakt-
Datenbank haben.
Meine Ansatz:
Ich lese die Userdaten via action "user_register" oder "wp_login" mit einer function aus:
PHP-Code:
function leed_user_install(){
$user_obj = wp_get_current_user();
$user_info = get_userdata($user_obj->id);
global $wpdb;
$table_name = $wpdb->prefix. $user_info->user_nicename . "geoaddress";
$structure = " CREATE TABLE IF NOT EXISTS $table_name (
id int(11) NOT NULL auto_increment,
cpName varchar(50) NOT NULL,
cpStrasse varchar(50) NOT NULL,
cpNr varchar(10) NOT NULL,
cpPlz varchar(10) NOT NULL,
cpOrt varchar(50) NOT NULL,
cpLand varchar(10) NOT NULL,
cpTelefon varchar(50) NOT NULL,
cpFax varchar(50) NOT NULL,
cpEmail varchar(100) NOT NULL,
cpWeb varchar(255) NOT NULL,
cpCat varchar(255) NOT NULL,
latitude varchar(30) NOT NULL,
longitude varchar(30) NOT NULL,
active tinyint(1) NOT NULL default '0',
validatecode varchar(100) NOT NULL,
valid tinyint(1) NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
";
$wpdb->query($structure);
}
Ich hab schon mit echo getestet, was in der Variable steht: Tatsächlich der User. Wenn ich jetzt als Admin beim Login für einen Aufruf sorge, dann legt er auch brav die Tabelle an.
Aber als User darf er das scheinbar nicht? Da ich auch ein User-level-
plugin drin hab, hab ich einem Testuser mal das Level 10 verpasst - bringt nix. Aber echo bestätigt mir, dass in der Variable die tatsächlichen gewünschten Daten drin stehen.
Was wäre die Lösung?
Muss ich die Variablen irgendwo hin übergeben das der Admin die dann übernimmt oder bekommt man das hin, dass die User in die
DB schreiben dürfen?
Irgendwie stehe ich mittler Weile auf dem Schlauch.
