Seite 1 von 1

Testumgebung erstellen

Verfasst: 12.03.2014, 08:31
von Dave89
Hallo,
ich möchte eine Testumgebung von meiner Wordpress Installation erstellen.
Diese habe ich dafür auf dem gleichen Webserver in ein anderes Unterverzeichnis kopiert.
Die Tabellen und Inhalte habe ich in eine andere Datenbank kopiert, die Einstellungen in der wp-config gesetzt
und in den url in Tabellen wie Options angepasst.
Wenn ich auf die Testseite, oder den Admin Bereich der Testseite gehe,
erhalte ich die Fehlermeldung:
Fatal error: Call to a member function add_cap() on a non-object in .../wp-content/plugins/wpshopgermany/mods/wpsg_mod_productgroups.class.php on line 20
Der Fehler entsteht an dieser Stelle:
public function init() { $role_object = get_role('administrator'); $role_object->add_cap('wpsg_productgroup'); }

Jetzt stehe ich auf dem Schlauch, da bei Google der Fehler "...function add_cap()..." nur in Zusammenhang mit Updates zu finden ist.
Hatte jemand evtl. das gleiche Problem?
Kann mir jemand sagen, was "$role_object->add_cap('wpsg_productgroup');" genau macht?

Re: Testumgebung erstellen

Verfasst: 12.03.2014, 08:41
von sellanger
Leider noch nicht, aber das Thema ist auch für mich interessant, deshalb hänge ich mich hier mal mit ran :-)

Re: Testumgebung erstellen

Verfasst: 12.03.2014, 09:09
von daschmi
Hi,

..->add_cap( ... setzt eine Berechtigung für eine ausgewählte Rolle.Vorher wird die Rolle mittels get_role("administrator") geladen. Das schlägt fehl, sonst wäre es ein Objekt.

Siehe auch: https://codex.wordpress.org/Function_Reference/get_role

Die Rolle "administrator" sollte es aber immer geben. Vermutlich ist etwas beim kopieren in der wp_options schief gegangen.

Viele Grüße

Daschmi

Re: Testumgebung erstellen

Verfasst: 12.03.2014, 14:33
von Dave89
Hallo,
..."kopieren in der wp_options..."
meinst du damit die Tabelle options in der Datenbank?

Re: Testumgebung erstellen

Verfasst: 12.03.2014, 14:38
von maennchen1.de
Ja, er bezieht sich auf die Tabelle wp_options welche evtl. fehlerhaft durch dich kopiert wurde.

Re: Testumgebung erstellen

Verfasst: 18.03.2014, 11:03
von Dave89
Hallo,
nach langem suchen hab ich es gefunden.
In der wp-config.php gibt es die Option $table_prefix.
Wenn dort z.B. "Produktiv" hinterlegt ist wird der Prefix für die "user-role" mit in die Tabelle Options übernommen.
Ändert sich der Prefix nicht, ist alles OK,
wenn doch muss die Spalte "option_name" entsprechend dem Prefix geändert werden.

Re: Testumgebung erstellen

Verfasst: 18.03.2014, 14:02
von maennchen1.de
Das müsstest du ggf. bitte noch etwas genauer erklären.
Hattest du den Prefix in einer fertigen Installation umbenannt?
Oder hattest du mit geändertem Prefix WordPress installiert und danach wpShopGermany?

Re: Testumgebung erstellen

Verfasst: 18.03.2014, 15:12
von Dave89
Hallo,
ich habe eine Kopie der fertigen Installation erstellt und darin den Prefix entsprechend umbenannt.