PluginProbe
ThinkRank AI SEO – AI SEO Plugin for WordPress: Schema, XML Sitemaps, Meta Tags, Search Console & Local SEO / 2.8.0
ThinkRank AI SEO – AI SEO Plugin for WordPress: Schema, XML Sitemaps, Meta Tags, Search Console & Local SEO v2.8.0
2.8.0 2.7.0 2.6.0 2.5.0 2.4.0 2.3.0 2.2.0 2.1.1 2.1.0 2.0.2 2.0.1 2.0.0 1.32.0 1.31.0 1.30.0 1.29.0 1.28.0 1.27.0 1.26.0 1.25.0 trunk 1.0.0 1.0.1 1.0.2 1.1.0 All 49 releases
← All changes | includes/abilities/settings/class-update-global-settings.php +9 -2 2.1.02.8.0 View file →
@@ -33,9 +33,9 @@
33 33 */
34 34 public function __construct() {
35 35 $this->id = 'thinkrank/update-global-settings';
36 36 $this->label = __( 'Update ThinkRank Global Settings', 'thinkrank' );
37 - $this->description = __( 'Update ThinkRank global SEO settings for a specific post type. ThinkRank stores global SEO as per-post-type templates, so a post type is required.', 'thinkrank' );
37 + $this->description = __( 'Update ThinkRank global SEO settings for a specific post type. ThinkRank stores global SEO as per-post-type templates, so a post type is required. Read the current values with get-global-settings first; only the keys you pass are changed.', 'thinkrank' );
38 38 }
39 39
40 40 /**
41 41 * {@inheritDoc}
@@ -44,9 +44,16 @@
44 44 */
45 45 public function get_annotations() {
46 46 return [
47 47 'readonly' => false,
48 - 'destructive' => true,
48 + // Settings writes are recoverable: the matching get-* ability reads
49 + // the previous value, so nothing is lost that cannot be put back.
50 + // `destructive` is reserved for calls that lose data or reach
51 + // outside the site, and marking routine configuration with it made
52 + // MCP clients demand a human approval for every save — which users
53 + // reported as a permission bug, because the client's refusal reads
54 + // as "No approval received" (#675).
55 + 'destructive' => false,
49 56 'idempotent' => true,
50 57 'priority' => 2.0,
51 58 'openWorldHint' => false,
52 59 ];