chore: wp.org submission prep — v0.1.3

Rebrand to RangerHQ Buddy and prepare for the WordPress.org Plugin
Directory. Same workflow as rangerhq-radio v0.7.0 → v0.7.5.

Changes:
- Plugin Name: Buddy → RangerHQ Buddy (matches family naming)
- Plugin URI: icanhelp.ie/buddy → davidtkeane.com/rangerhq-buddy
- Author URI: rangersmyth.xyz → davidtkeane.com
- Text Domain: buddy → rangerhq-buddy (62 occurrences across 8 PHP files)
- Add LICENSE file (full GPL v2 text from gnu.org)
- Add wp.org-format readme.txt with all 8 required headers
- Remove inc/updater.php (self-hosted Gitea updater forbidden for
  wp.org-hosted plugins per the rangerhq-radio v0.7.3 walkback)
- Replace mt_rand with wp_rand in inc/state.php for better RNG
- Add 5 translator comments for printf-style i18n placeholders
- Wrap 2 dashboard-widget.php printf placeholders in (int) casts
- Add tests/ to .gitignore (PCP reports are local-only)

PCP audit: 85 issues → ~1 (the .gitignore file itself, stripped from
the submission zip).
Plugin Check Namer Tool: "Generally Allowable" verdict on both name
and slug.
Plugin URI https://davidtkeane.com/rangerhq-buddy/ returns HTTP 200.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-06-07 01:56:26 +01:00
parent 0675c9f7d8
commit cba0df9439
11 changed files with 505 additions and 299 deletions
+6 -6
View File
@@ -33,25 +33,25 @@ function buddy_handle_rename_post() {
add_action( 'admin_notices', function () {
printf(
'<div class="notice notice-success is-dismissible"><p>%s</p></div>',
esc_html__( 'Buddy renamed.', 'buddy' )
esc_html__( 'Buddy renamed.', 'rangerhq-buddy' )
);
} );
}
function buddy_render_settings_page() {
if ( ! current_user_can( 'read' ) ) {
wp_die( esc_html__( 'You do not have permission to view this page.', 'buddy' ) );
wp_die( esc_html__( 'You do not have permission to view this page.', 'rangerhq-buddy' ) );
}
$state = buddy_get_state();
?>
<div class="wrap">
<h1><?php esc_html_e( 'Buddy Settings', 'buddy' ); ?></h1>
<h1><?php esc_html_e( 'Buddy Settings', 'rangerhq-buddy' ); ?></h1>
<form method="post" style="max-width: 720px; background:#fff; padding:18px 22px; border:1px solid #ccd0d4; border-radius:4px; margin-top: 16px;">
<?php wp_nonce_field( 'buddy_rename', 'buddy_rename_nonce' ); ?>
<h2 style="margin-top:0;"><?php esc_html_e( 'Name', 'buddy' ); ?></h2>
<h2 style="margin-top:0;"><?php esc_html_e( 'Name', 'rangerhq-buddy' ); ?></h2>
<p>
<label for="buddy_name"><?php esc_html_e( 'What is your Buddy called?', 'buddy' ); ?></label><br>
<label for="buddy_name"><?php esc_html_e( 'What is your Buddy called?', 'rangerhq-buddy' ); ?></label><br>
<input type="text"
name="buddy_name"
id="buddy_name"
@@ -61,7 +61,7 @@ function buddy_render_settings_page() {
</p>
<p>
<button type="submit" name="buddy_rename_submit" class="button button-primary">
<?php esc_html_e( 'Save name', 'buddy' ); ?>
<?php esc_html_e( 'Save name', 'rangerhq-buddy' ); ?>
</button>
</p>
</form>