settings(); $agencoen_frequency = $agencoen_settings->get_sync_frequency(); $agencoen_seo_label = $data['seoPlugin']; /* * Local preferences only. Every control here is editable without a Rezolve Ai * account; the account itself lives on the Connection screen. The handful of * controls that do talk to the service (scheduled sync, auto-apply, the * optional daily crawler report) say so in place. */ $agencoen_offline = empty( $connected ); ?>

__( 'Below the product description', 'agentic-commerce-engine' ), 'above_description' => __( 'Above the product description', 'agentic-commerce-engine' ), 'bottom_of_page' => __( 'Bottom of the product page', 'agentic-commerce-engine' ), 'product_tab' => __( 'In a product tab', 'agentic-commerce-engine' ), 'manual' => __( 'Wherever I place it myself', 'agentic-commerce-engine' ), 'hidden' => __( 'Do not show it on the page', 'agentic-commerce-engine' ), ); $agencoen_type_labels = array( 'product-qa' => __( 'Product Q&A', 'agentic-commerce-engine' ), 'highlights' => __( 'Highlights', 'agentic-commerce-engine' ), 'irl-cards' => __( 'IRL scenario cards', 'agentic-commerce-engine' ), 'internal-links' => __( 'Internal links', 'agentic-commerce-engine' ), 'product-attributes' => __( 'Product specifications', 'agentic-commerce-engine' ), ); $agencoen_candidates = $agencoen_offline ? array() : \Agencoen\Content_Destinations::candidates( $plugin ); $agencoen_destinations = $agencoen_offline ? array() : \Agencoen\Content_Destinations::all(); ?>

'block' ); $agencoen_choice = 'block'; if ( 'description' === $agencoen_dest['kind'] ) { $agencoen_choice = 'description:' . $agencoen_dest['position']; } elseif ( 'field' === $agencoen_dest['kind'] ) { $agencoen_choice = 'field:' . $agencoen_dest['field']['id']; } $agencoen_slug = str_replace( '-', '_', $agencoen_type ); $agencoen_label = isset( $agencoen_type_labels[ $agencoen_type ] ) ? $agencoen_type_labels[ $agencoen_type ] : $agencoen_type; $agencoen_placeable = in_array( $agencoen_type, \Agencoen\Settings::placeable_types(), true ); // A routed type's block is stored as hidden. Offering that back // when the merchant returns to the block would save it hidden // again, so the position starts at the default instead. $agencoen_position = $agencoen_placeable ? $agencoen_settings->get_placement( $agencoen_type ) : ''; if ( 'block' !== $agencoen_dest['kind'] && 'hidden' === $agencoen_position ) { $agencoen_position = 'below_description'; } ?>
/>

' . esc_html( $agencoen_seo_label ) . '' ); ?>

__( 'Google Merchant', 'agentic-commerce-engine' ), 'microsoft' => __( 'Microsoft Bing', 'agentic-commerce-engine' ), 'agentic' => __( 'Agentic Commerce', 'agentic-commerce-engine' ), ); foreach ( $agencoen_feeds as $agencoen_ch => $agencoen_ch_label ) : ?>