Developer reference
Understand integration boundaries, stored options and the hooks actually present in the source.
WordPress integration
The plugin runs in the WordPress admin context and uses native post creation, user selection, post types, categories, tags, media attachments and WordPress Cron. It registers the cron event aiab_cron_hook with aiab_custom_interval (300 seconds).
The admin screens require WordPress administrative permissions. The supplied code does not expose a public content-generation REST API, shortcode workflow or standalone command-line interface.
Stored options
| Option | Purpose |
|---|---|
aiab_campaigns | Campaign arrays and their state |
aiab_options | Provider keys and global execution settings |
aiab_data | Prompt and endpoint data loaded from the vendor |
aiab_log | Operation log |
aiab_checkdate | Maintenance check timestamp |
aiab_openrouter_image_models | Cached image-model list |
aiab_complete_uninstall | Full uninstall cleanup flag |
aiab_reg_name, aiab_reg_email | License registration details |
aiab_xcd, aiab_core_version | Licensed core data and its version |
Use the admin interface to change campaigns. Direct option edits can break assumptions about saved values and are not a stable extension API.
Hook inventory
No plugin-specific public apply_filters() or do_action() extension points are declared in the supplied source. The explicit calls belong to WPML integration:
| Hook | Arguments used |
|---|---|
wpml_default_language | Filter value: null |
wpml_active_languages | null, 'skip_missing=1' |
wpml_element_trid | null, post ID, 'post_' plus post type |
wpml_set_element_language_details | Array of element language details |
wpml_set_element_translations | Translations array |
These are third-party integration hooks, not new AI Autoblogger extension points. Consult the active multilingual plugin's API before integrating with them.
Read-only diagnostic examples
The following code belongs in a developer's diagnostic environment after WordPress has loaded. It reads the next scheduled check and campaign count without exposing provider keys:
$next = wp_next_scheduled('aiab_cron_hook');
echo $next ? gmdate('c', $next) : 'No scheduled AI Autoblogger check';
$campaigns = get_option('aiab_campaigns', []);
echo is_array($campaigns) ? count($campaigns) : 0;
Use the normal WordPress post APIs to integrate with generated posts. Do not modify the plugin licensing mechanism or core source. The license terms apply.
Source behavior notes
- Shared prompt instructions are included in every section request, followed by that section's matching block if present. Other sections' blocks are not included. The outline-generation request uses the shared instructions alone.
- CSV fields are zero-indexed and unresolved fields remain unchanged.
- HTML after content applies Spintax but not CSV replacement.
- The schedule overview omits the randomized adjustment.
- Image-error fallback changes Publish immediately to draft; it does not override every post status.
- The old model comparison table is replaced here with mappings parsed from the supplied source.