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
This commit is contained in:
Gustavo committed 2026-11-02 13:33:30 -03:00
1 parent 5891467266
commit 0ea3651fb5
73 files changed
+8858 -39

No files matched your search

@@ -0,0 +1,103 @@
<?php
defined('ABSPATH') || exit;
/**
* fr
*/
return [
'nav_label' => 'Navigation du plugin',
'tab_execucoes' => 'Exécutions',
'tab_configuracoes' => 'Réglages',
'tab_log' => 'Journal en direct',
'tab_ajuda' => 'Aide',
'config_subtitle' => 'Configurez toutes les options du plugin par catégorie.',
'config_categories' => 'Catégories de réglages',
'section_general' => 'Général',
'section_general_desc' => 'Réglages principaux du plugin.',
'section_prompts' => 'Prompts et Filtre',
'section_prompts_desc' => 'Profil éditorial, exclusions et instructions de réécriture.',
'section_feeds' => 'Flux RSS',
'section_feeds_desc' => 'Sources d’actualités via RSS.',
'section_gnews' => 'GNews.io',
'section_gnews_desc' => 'Clé API et catégories de recherche.',
'section_ai' => 'Intelligence Artificielle',
'section_ai_desc' => 'Fournisseur, modèle et paramètres de l’IA.',
'section_images' => 'Images',
'section_images_desc' => 'Instructions de recherche et légende.',
'section_other' => 'Autres réglages',
'section_other_desc' => 'Version et support.',
'field_pub_mode' => 'Mode de publication',
'pub_mode_draft_label' => 'Enregistrer en brouillon',
'pub_mode_pub_label' => 'Publier automatiquement',
'field_language' => 'Langue des articles',
'field_app_language' => 'Langue de l’application',
'field_posts_per_run' => 'Articles par exécution',
'min_posts' => 'Min :',
'max_posts' => 'Max :',
'field_editorial' => 'Profil éditorial',
'field_negative' => 'Profil négatif',
'rewrite_label' => 'Réécriture',
'field_rewrite' => 'Instructions de réécriture',
'field_feeds' => 'URL des flux',
'field_feed_max' => 'Articles par flux',
'field_gnews_key' => 'Clé API',
'field_gnews_cats' => 'Catégories',
'field_gnews_max' => 'Articles par catégorie',
'field_provider' => 'Fournisseur d’IA',
'field_model' => 'Modèle',
'field_ai_limits' => 'Délai et tentatives',
'timeout_label' => 'Délai',
'retries_label' => 'Tentatives',
'field_image_instructions' => 'Instructions d’image',
'field_image_caption' => 'Légende configurable',
'other_version' => 'Version du plugin',
'other_support' => 'Support et crédits',
'save_all' => 'Enregistrer tous les réglages',
'discard_changes' => 'Annuler les modifications',
'unsaved_changes' => 'Modifications non enregistrées',
'exec_subtitle' => 'Suivez les exécutions et contrôlez la génération automatique.',
'running_now' => 'Exécution en cours...',
'no_execution' => 'Aucun processus en cours',
'started_in' => 'Démarré à : %s',
'idle_desc' => 'Aucune exécution en cours.',
'last_run' => 'Dernière :',
'never' => 'jamais',
'running_btn' => 'En cours...',
'abort_btn' => 'Arrêter l’exécution',
'status_running' => 'En cours',
'status_idle' => 'Arrêté',
'section_run_now' => 'Exécuter maintenant',
'card_auto' => 'Génération automatique',
'auto_status_label' => 'Statut',
'auto_active' => 'Active',
'auto_inactive' => 'Inactive',
'next_run' => 'Prochaine :',
'auto_first_run' => 'Première exécution',
'start_now' => 'Démarrer maintenant',
'set_schedule' => 'Définir un horaire',
'field_auto_period' => 'Période de génération automatique',
'stop_auto_btn' => 'Mettre en pause',
'start_auto_btn' => 'Démarrer l’automatique',
'log_title' => 'Journal en direct',
'log_panel_subtitle' => 'Suivez les événements et erreurs du plugin.',
'log_live' => 'Actualisation automatique',
'log_level' => 'Niveau',
'log_level_all' => 'Tous les niveaux',
'log_loading' => 'Chargement...',
'log_load_more' => 'Charger plus',
'help_subtitle' => 'Crédits du plugin.',
'created_by' => 'créé par',
'licence_label' => 'Licence GPLv2',
'help_website' => 'Site de l’auteur',
'plugin_active' => 'Plugin actif',
'version_label' => 'Version %s',
'js_run_now' => 'Exécuter maintenant',
'js_settings_saved' => 'Réglages enregistrés.',
'js_comm_error' => 'Échec de communication.',
'help_page_title' => 'Aide, Crédits et Don',
'section_donate' => 'Soutenez le Projet',
'section_credits' => 'Crédits',
'section_about' => 'À propos du Plugin',
'donate_btn' => 'Faire un don avec Pix',
'or_label' => 'ou',
];