a-schild / churchtools-wp-calendarsync

Synchronise churchtools calendar with wordpress events manager
GNU General Public License v2.0
1 stars 1 forks source link

Veranstaltungskategorien werden nicht automatisch erstellt #5

Closed matthias6 closed 10 months ago

matthias6 commented 10 months ago

Im Moment werden mit Version v1.0.4 die Veranstaltungskategorien nicht erstellt. Nach ausgeführter Synchronisation sind die Veranstaltungskategorien im Events Manager weiter leer.

"Resource type for categories, use -1 to disable categories management" ist bei uns auf -1 gestellt. Müssen die Veranstaltungskategorien manuell erstellt werden?

a-schild commented 10 months ago

Nein,

das -1 bezieht sich nur auf die Zuweisung von Kategorien anhand der Ressourcen.

Im log müsstest du Einträge von hier sehen wenn der Debugmodus aktiv ist:

               if (sizeof($wpCategories) >= 1) {
                    logDebug("Found matching wp category: ".$desiredCategory . " wp: ".$wpCategories[0]->term_id);
                    array_push($wpDesiredCategories, $wpCategories[0]->term_id);
                } else {
                    logInfo("Need to create category: ".$desiredCategory);
                    $newTerm= wp_insert_term($desiredCategory, EM_TAXONOMY_CATEGORY);
                    if (is_array($newTerm)) {
                        array_push($wpDesiredCategories, $newTerm["term_id"]);
                    } else {
                        logError("Failed inserting new event category ".$desiredCategory." Error: ".$newTerm->get_error_message());
                    }
                }
matthias6 commented 10 months ago

Im Debug log ist nur dieser Eintrag: [10-Nov-2023 06:49:58 UTC] WordPress database error Duplicate entry '4275' for key 'ct_id' for query INSERT INTO wp17ctwpsync_mapping (ct_id, wp_id, ct_image_id, last_seen, event_start, event_end, ct_repeating) VALUES ('4275', '15034', '6390', '2023-11-10 06:49:58', '2023-11-23T16:30:00Z', '2023-11-23T18:30:00Z', '1') made by require_once('wp-admin/admin.php'), do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, register_ctwpsync_settings, save_ctwpsync_settings, do_action('ctwpsync_includeChurchcalSync'), WP_Hook->do_action, WP_Hook->apply_filters, ctwpsync_includeChurchcalSync, include('/plugins/churchtools-wp-calendarsync/churchtools-dosync.php'), processCalendarEntry

im wpcalsync.log habe ich noch diese Zeile entdeckt, die das Stichwort categorie enthält: DBG: Categories mapping via calendar ID's: a:7:{i:2;s:12:"Gemeinschaft";i:3;s:6:"Jugend";i:10;s:17:"Lobpreiswerkstatt";i:18;s:16:"Junge Erwachsene";i:21;s:19:"Kinder und Familien";i:24;s:9:"Netzwerke";i:29;s:11:"Region West";}

matthias6 commented 10 months ago

fällt mir schwer, das Problem zu lokalisieren. Ich bin leider gar nicht in PHP bewandert. Könnte aber mal unseren Jonathan drauf ansetzen, der unser altes Plugin geschrieben hat. Macht das mehr Sinn, dass er Debugging direkt am Code macht?

a-schild commented 10 months ago

Die Logzeile die du oben hast, zeigt nur an, dass welcher Kalender zu welcher Kategorie gemappt wird.

Aber viel weiter unten müsste dann noch mehr kommen. Du hast aber nicht allenfalls gelöschte Kategorien mit diesen Namen, oder?

matthias6 commented 10 months ago

sind sonst nur PHP Warnings im Debug log.

Du hast aber nicht allenfalls gelöschte Kategorien mit diesen Namen, oder?

Es gibt teilweise Tags die in wp_terms mit demselben Namen existieren. Nach der Ersteinrichtung hatte ich die Kategorien mal manuell angelegt und dann wieder gelöscht.

Ich werde nun mal testen, die manuell anzulegen. --> Update: Bringt aber nix. Die Kategorien sind nach dem Sync leer (zuvor hatte ich alle Events gelöscht).

a-schild commented 10 months ago

Gefunden, wenn man die Zuweisung via Ressourcekategorie nicht aktiv hatte, dann wurde die ganze Kategoriesache fälschlicherweise nicht ausgeführt. Ist im v1.0.5 nun behoben

matthias6 commented 10 months ago

jetzt läufts. Danke!