feat: switch to single-panel newspaper comic style for article images

Replace photography-style prompts with a comedy writer system prompt
that generates Far Side-style single-panel comic concepts with punchy
captions. The LLM rewriter now outputs a comic scene + caption line,
and the style suffix renders as classic black-ink newspaper comic on
yellowed newsprint.

Includes v3 style migration to auto-replace both the old infomercial
and the short-lived photography style in wp_options. Bumped max_tokens
to 180 to accommodate scene + caption output.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
peptiderepo
2026-04-18 13:20:20 +07:00
parent 1a2af595c6
commit b17ed4719b
3 changed files with 49 additions and 41 deletions

View File

@@ -123,17 +123,26 @@ class PRAutoBlogger {
update_option( 'prautoblogger_migrated_gemini_flash_lite', '1' );
}
// One-time migration: replace 90s infomercial style suffix with premium
// science editorial style. The old pastiche rendered poorly on Gemini/GPT-5
// Image models. Only overwrite if the stored value IS the old default — if
// the user customized it, respect their choice.
if ( ! get_option( 'prautoblogger_migrated_style_suffix_v2' ) ) {
$old_infomercial = 'Style: a screengrab from a 1995 late-night cable TV infomercial';
$current = get_option( 'prautoblogger_image_style_suffix', '' );
if ( '' === $current || false !== strpos( $current, $old_infomercial ) ) {
// One-time migration (v3): switch to single-panel newspaper comic style.
// Replaces both the old infomercial pastiche and the short-lived premium
// photography style. Force-update unless the user has a truly custom value.
if ( ! get_option( 'prautoblogger_migrated_style_suffix_v3' ) ) {
$known_old_prefixes = [
'Style: a screengrab from a 1995', // v1: infomercial.
'Style: premium scientific lifestyle', // v2: photography.
];
$current = get_option( 'prautoblogger_image_style_suffix', '' );
$is_old = ( '' === $current );
foreach ( $known_old_prefixes as $prefix ) {
if ( false !== strpos( $current, $prefix ) ) {
$is_old = true;
break;
}
}
if ( $is_old ) {
update_option( 'prautoblogger_image_style_suffix', PRAUTOBLOGGER_DEFAULT_IMAGE_STYLE_SUFFIX );
}
update_option( 'prautoblogger_migrated_style_suffix_v2', '1' );
update_option( 'prautoblogger_migrated_style_suffix_v3', '1' );
}
// One-time migration: re-wrap existing encrypted values with "enc:" prefix.