Files
gustavoo-me/wp-content/plugins/automatic-ai-posts/src/Core/Autoloader.php
T
Gustavo 0ea3651fb5 Automatic AI Posts, setup automatizado e seeder de permalinks/avatar
Plugin automatic-ai-posts (v2.0.0)
- Pipeline completo: coleta de feeds RSS/Atom, filtro por IA, reescrita,
  categoria, imagem de capa e agendamento
- Página de configuração com teste real do provedor de IA
- Editor: botão para refazer imagem de capa e metadados, textos em PT-BR
- Ajuda com botão Pix (copia-e-cola + QR) e sem nota de avaliação
- Cache-busting por mtime nos assets do admin

Tema gustavoo-portfolio
- Marca do cabeçalho reduzida a "Gustavo"
- Suporte a título próprio da marca

Setup (docker/wp-init.sh, compose.yaml)
- Plugins de terceiros (Post Views Counter, Rank Math, Site Kit)
  instalados do WordPress.org em vez de versionados
- Falha explícita ao final se algum plugin obrigatório não instalar
- WPCLI_UID/WPCLI_GID configuráveis

Seeder do tema
- Links permanentes "Dia e nome" e avatar "Iniciais" aplicados
  apenas em instalação nova, com regravação do .htaccess
2026-11-02 13:33:30 -03:00

31 lines
690 B
PHP

<?php
namespace AAP\Core;
defined('ABSPATH') || exit;
/**
* PSR-4 style autoloader: AAP\Foo\Bar -> src/Foo/Bar.php
*/
final class Autoloader {
private static string $base = '';
public static function register(string $base): void {
self::$base = rtrim($base, '/') . '/';
spl_autoload_register([self::class, 'load']);
}
public static function load(string $class): void {
if (strncmp($class, 'AAP\\', 4) !== 0) {
return;
}
$relative = substr($class, 4);
$path = self::$base . str_replace('\\', '/', $relative) . '.php';
if (is_readable($path)) {
require_once $path;
}
}
}