Flip Box is a WordPress ability from The Plus Addons for Elementor — usable via Easy MCP AI, which connects Claude, ChatGPT, and any AI assistant to your site.
Install Free Plugin →Flip Box
WriteAdds the The Plus "Flip Box" widget (tp-flip-box) to an Elementor container.
Requires the The Plus Addons for Elementor plugin (which registers under the 'tpae' ability category) on WordPress 6.9+, with Elementor active. Every ability requires the current user to have the 'edit_posts' capability (and 'edit_post' for the specific post being modified); abilities that create or edit content also verify Elementor and, where relevant, the target The Plus widget are available. A subset of abilities (theme templates, template conditions, dynamic tags, popups, and some custom-code abilities) only register when Elementor Pro is active, and many widget abilities load only in the free plugin when the Pro add-on is inactive.
What it does
The execute_callback tpae_mcp_add_theplus_flip_box_ability() reads the target post's Elementor page data, builds a widget element of type tp-flip-box from the mapped input settings (flip box type/layout, flip style/direction, box height, title, icon/image selection, description, button config, extensive icon/title gradient and hover color controls, box border, and animation settings), inserts it into the specified parent container at the requested position, and saves the updated Elementor data back to the post. It requires Elementor to be active and the tp-flip-box widget to be registered, and requires post_id, parent_id, and title, with the target post existing.
See it in action
You ask your AI assistant
"Add a Flip Box widget to container services-grid on page 18 with title 'Web Design' and content_desc 'We craft beautiful websites' using a horizontal flip style."
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| post_id | integer | Yes | Elementor page/post ID |
| parent_id | string | Yes | Target Elementor container ID |
| position | integer | No | Insert position. Use -1 to append. |
| flipbox_type | string | No | Type (enum: advanced, basic) |
| info_box_layout | string | No | Select Layout (enum: carousel_layout, columns, single_layout) |
| plus_pro_info_box_layout_options | string | No | plus_pro_info_box_layout_options |
| flip_style | string | No | Flip Type (enum: columns, horizontal, info_box_layout, vertical) |
| flip_box_height | object | No | Box Height (Slider/Size Object) |
| title | string | Yes | Title |
| image_icon | string | No | Select Icon |
| plus_pro_image_icon_svg_options | string | No | plus_pro_image_icon_svg_options |
| select_image | integer | No | Use Image As icon (Image ID) |
| select_image_size | object | No | Icon Image Max-Width (Slider/Size Object) |
| icon_font_style | string | No | Icon Font |
| icon_fs_popover_toggle | string | No | Font Awesome (enum: yes, no) |
| icon_fontawesome | string | No | Icon Library |
| icon_f5_popover_toggle | string | No | Font Awesome 5 (enum: yes, no) |
| icon_fontawesome_5 | string | No | Icon Library |
| iconmind_options | string | No | iconmind_options |
| content_desc | string | No | Description |
| display_button | string | No | Button (enum: yes, no) |
| button_type_switch | string | No | Button Type |
| button_global_style_preset | string | No | Global Style |
| button_style | string | No | Button Style |
| button_pro_options | string | No | button_pro_options |
| button_text | string | No | Text |
| button_link | object | No | Button Link |
| button_icon_font_style | string | No | Icon Font |
| button_icon_toggle | string | No | Font Awesome (enum: yes, no) |
| button_icon | string | No | Icon |
| button_icon_5_toggle | string | No | Font Awesome 5 (enum: yes, no) |
| button_icon_5 | string | No | Icon Library |
| icon_mind_options | string | No | icon_mind_options |
| before_after | string | No | Icon Position |
| icon_spacing | object | No | Icon Spacing (Slider/Size Object) |
| section_svg_styling_options | string | No | section_svg_styling_options |
| icon_style | string | No | Icon Styles (enum: hexagon, pentagon, rounded, square, square-rotate) |
| icon_size | object | No | Icon Size (Slider/Size Object) |
| icon_width | object | No | Icon Width (Slider/Size Object) |
| icon_color_option | string | No | Icon Color (enum: gradient, icon, solid) |
| icon_color | string | No | Color (Color Hex/RGBA) |
| icon_fill_color | string | No | Fill (Color Hex/RGBA) |
| icon_stroke_color | string | No | Stroke (Color Hex/RGBA) |
| icon_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| icon_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| icon_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| icon_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| icon_gradient_style | string | No | Gradient Style |
| icon_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| icon_gradient_position | string | No | Position |
| icon_border_color | string | No | Border Color (Color Hex/RGBA) |
| icon_hover_color_option | string | No | Icon Hover Color (enum: gradient, icon, solid) |
| icon_hover_color | string | No | Hover Color (Color Hex/RGBA) |
| icon_fill_color_Hover | string | No | Hover Fill (Color Hex/RGBA) |
| icon_stroke_color_hover | string | No | Hover Stroke (Color Hex/RGBA) |
| icon_hover_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| icon_hover_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| icon_hover_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| icon_hover_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| icon_hover_gradient_style | string | No | Gradient Style |
| icon_hover_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| icon_hover_gradient_position | string | No | Position |
| icon_border_hover_color | string | No | Hover Border Color (Color Hex/RGBA) |
| title_top_space | object | No | Title Top Space (Slider/Size Object) |
| title_btm_space | object | No | Title Bottom Space (Slider/Size Object) |
| title_color_option | string | No | Title Color (enum: gradient, icon, solid) |
| title_color | string | No | Color (Color Hex/RGBA) |
| title_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| title_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| title_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| title_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| title_gradient_style | string | No | Gradient Style |
| title_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| title_gradient_position | string | No | Position |
| title_hover_color_option | string | No | Title Hover Color (enum: gradient, icon, solid) |
| title_hover_color | string | No | Hover Color (Color Hex/RGBA) |
| title_hover_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| title_hover_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| title_hover_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| title_hover_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| title_hover_gradient_style | string | No | Gradient Style |
| title_hover_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| title_hover_gradient_position | string | No | Position |
| desc_hover_color | string | No | Color (Color Hex/RGBA) |
| button_padding | object | No | Padding (Dimensions Object) |
| button_svg_icon | object | No | Svg Icon Size (Slider/Size Object) |
| btn_text_color | string | No | Text Color (Color Hex/RGBA) |
| button_border_style | string | No | Border Style |
| button_border_width | object | No | Border Width (Dimensions Object) |
| button_border_color | string | No | Border Color (Color Hex/RGBA) |
| btn_text_hover_color | string | No | Text Hover Color (Color Hex/RGBA) |
| button_border_hover_color | string | No | Hover Border Color (Color Hex/RGBA) |
| box_front_overlay_bg_color | string | No | Overlay Background Color (Color Hex/RGBA) |
| box_back_overlay_bg_color | string | No | Overlay Background Color (Color Hex/RGBA) |
| box_border | string | No | Box Border (enum: yes, no) |
| box_border_style | string | No | Border Style |
| box_border_color | string | No | Border Color (Color Hex/RGBA) |
| box_border_width | object | No | Border Width (Dimensions Object) |
| border_radius | object | No | Border Radius (Dimensions Object) |
| plus_pro_carousel_options_options | string | No | plus_pro_carousel_options_options |
| box_padding | object | No | Box Padding (Dimensions Object) |
| messy_column | string | No | Messy Columns (enum: yes, no) |
| messy_column_even | object | No | Even Columns (Slider/Size Object) |
| messy_column_odd | object | No | Odd Columns (Slider/Size Object) |
| box_hover_effects | string | No | Box Hover Effects |
| responsive_visible_opt | string | No | Responsive Visibility (enum: yes, no) |
| desktop_opt | string | No | Desktop (enum: yes, no) |
| tablet_opt | string | No | Tablet (enum: yes, no) |
| mobile_opt | string | No | Mobile (enum: yes, no) |
| animation_effects | string | No | Choose Animation Effect |
| animation_delay | object | No | Animation Delay (Slider/Size Object) |
| animation_duration_default | string | No | Animation Duration (enum: yes, no) |
| animate_duration | object | No | Duration Speed (Slider/Size Object) |
| animation_out_effects | string | No | Out Animation Effect |
| animation_out_delay | object | No | Out Animation Delay (Slider/Size Object) |
| animation_out_duration_default | string | No | Out Animation Duration (enum: yes, no) |
| animation_out_duration | object | No | Duration Speed (Slider/Size Object) |
| settings | object | No | Raw Elementor/The Plus control settings to merge into the widget at creation time. Use control keys from sprout/get-theplus-widget-schema. |
Returns
Returns element_id (string), widget_type (string), and post_id (integer) of the created widget.
Permission
Requires the current user to have the edit_posts capability, and if a post_id is provided, also requires edit_post capability on that specific post.
More The Plus Addons for Elementor abilities
Accordion
Adds The Plus Addons "Accordion" widget (tp-accordion) to an Elementor container.
Add Code Snippet
Creates a site-wide Custom Code snippet using Elementor Pro, injecting CSS/JS/meta into the head or body on all pages.
Add Container
Adds a new Elementor flex container to a page or nests it inside another existing container.
Add Container
Adds a flex or grid container to a page, optionally nested inside a parent container.
Add Custom CSS
Adds custom CSS to a specific element or to the entire page (requires Elementor Pro).
Add Custom JavaScript
Adds a custom JavaScript snippet to a page by inserting an HTML widget containing a <script> tag; works with free Elementor.