Files
Digital-Dabei-Hamburg-Job-M…/ddhh-job-manager.php
Viktor Miller 0bef634eb8 fix: correct Formidable API usage and move activation hooks to top level
- Replace non-existent FrmFormActionsController::create_action() with proper API
  - Use get_form_actions('wppost')->prepare_new() pattern
  - Affects job submission, edit, and deactivation forms
- Move register_activation_hook() to main plugin file top level
  - WordPress requires activation hooks at bootstrap, not in plugins_loaded
  - Fixes missing page creation on plugin activation

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-03 17:29:23 +09:00

61 lines
2.5 KiB
PHP

<?php
/**
* Plugin Name: Digital Dabei Job Manager
* Plugin URI: https://hamburg-digital-dabei.de
* Description: Closed job board for provider self-registration and mentor applications
* Version: 1.0.0
* Author: vihais
* Author URI: https://hamburg-digital-dabei.de
* Text Domain: ddhh-job-manager
* Domain Path: /languages
* Requires at least: 6.0
* Requires PHP: 7.4
* License: GPL v2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*
* @package DDHH_Job_Manager
*/
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit;
// Load Action Scheduler before other code for proper initialization.
// Action Scheduler must be included early so it can register its hooks and tables.
require_once plugin_dir_path( __FILE__ ) . 'vendor/action-scheduler/action-scheduler.php';
// Define plugin constants.
define( 'DDHH_JM_VERSION', '1.0.0' );
define( 'DDHH_JM_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'DDHH_JM_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'DDHH_JM_PLUGIN_FILE', __FILE__ );
// Include core classes.
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-activator.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-deactivator.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-post-types.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-roles.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-acf-fields.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-formidable.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-pages.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-dashboard.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-access-control.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-notifications.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-archive.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-template.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-admin-ui.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-user-preferences.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-scheduler.php';
require_once DDHH_JM_PLUGIN_DIR . 'includes/class-ddhh-job-manager.php';
// Register activation and deactivation hooks (must be at top level).
register_activation_hook( __FILE__, array( 'DDHH_JM_Activator', 'activate' ) );
register_deactivation_hook( __FILE__, array( 'DDHH_JM_Deactivator', 'deactivate' ) );
/**
* Initialize the plugin.
*/
function ddhh_jm_init() {
DDHH_JM_Job_Manager::get_instance();
}
add_action( 'plugins_loaded', 'ddhh_jm_init', 10 );