fad5a7d03b
S1 skeleton (cp-8ci, already done): - wp-multi-city.php with header, constants, hooks bootstrap - includes/class-plugin.php with PSR-4-ish autoloader, ACF dependency guard - includes/class-activator.php placeholder - composer.json (PHP 8.0, phpunit dev) - README.md with roadmap - uninstall.php placeholder S2 design (cp-q7g): - docs/superpowers/specs/2026-05-12-s2-taxonomy-cpt-acf-design.md
31 lines
1018 B
PHP
31 lines
1018 B
PHP
<?php
|
|
/**
|
|
* Plugin Name: WP Multi City
|
|
* Description: Мультигородская подсистема: taxonomy town, шорткоды для подстановки по городу, роутер /{city}/{path}/, page-clones по городам.
|
|
* Version: 0.1.0
|
|
* Author: Vladimir Bryzgalov
|
|
* Requires PHP: 8.0
|
|
* Requires at least: 6.0
|
|
* License: GPLv2 or later
|
|
* Text Domain: wp-multi-city
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
if (!defined('ABSPATH')) exit;
|
|
|
|
define('WPMC_PLUGIN_FILE', __FILE__);
|
|
define('WPMC_PLUGIN_DIR', plugin_dir_path(__FILE__));
|
|
define('WPMC_PLUGIN_URL', plugin_dir_url(__FILE__));
|
|
define('WPMC_VERSION', '0.1.0');
|
|
|
|
require_once WPMC_PLUGIN_DIR . 'includes/class-plugin.php';
|
|
\WPMultiCity\Plugin::register_autoloader();
|
|
|
|
register_activation_hook(__FILE__, ['\\WPMultiCity\\Activator', 'activate']);
|
|
register_deactivation_hook(__FILE__, ['\\WPMultiCity\\Activator', 'deactivate']);
|
|
|
|
add_action('plugins_loaded', static function (): void {
|
|
\WPMultiCity\Plugin::instance()->boot();
|
|
});
|