Heading Title 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 →Heading Title
WriteAdds the The Plus "Heading Title" widget (tp-heading-title) 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_heading_title_ability verifies Elementor is active and the tp-heading-title widget is registered, loads the target post's Elementor page data, and maps a very large set of style/content properties (title, sub_title, separators, gradients, text animation controls, transform effects, and animation timing) into the widget settings array when present in input, merged with any raw settings object. It then builds a new widget element with a generated ID, inserts it into the specified parent container at the given position, and saves the Elementor page data. Requires post_id, parent_id, and title.
See it in action
You ask your AI assistant
"Add a heading title widget titled 'Our Services' with subtitle 'What we offer' using style_2, centered, to this page section."
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. |
| heading_style | string | No | Style |
| select_heading | string | No | Select Heading |
| sub_title_align | object | No | Alignment |
| title | string | Yes | Heading Title |
| sub_title | string | No | Sub Title |
| title_s | string | No | Extra Title |
| heading_s_style | string | No | Extra Title Position |
| heading_title_subtitle_limit | string | No | heading_title_subtitle_limit |
| display_heading_title_limit | string | No | Heading Title Limit |
| display_heading_title_by | string | No | Limit on |
| display_heading_title_input | string | No | Heading Title Count |
| display_title_3_dots | string | No | Display Dots |
| display_sub_title_limit | string | No | Sub Title Limit |
| display_sub_title_by | string | No | Limit on |
| display_sub_title_input | string | No | Sub Title Count |
| display_sub_title_3_dots | string | No | Display Dots |
| enable_text_animation | string | No | Enable Animation |
| text_animations | string | No | Animation |
| tp_select_text_global_animation | string | No | Global Animation |
| text_animation_type | string | No | Animation Type |
| tp_tansformtion_toggel | string | No | Transform Effects |
| transform_x | string | No | X Position |
| transform_y | string | No | Y Position |
| transform_skewx | string | No | Skew X |
| transform_skewy | string | No | Skew Y |
| transform_scale | string | No | Scale |
| transform_rotation | string | No | Rotation |
| transform_origin | string | No | Transform Origin |
| split_type | string | No | Split Type |
| text_trigger | string | No | Animation Trigger |
| tp_scrub | string | No | tp_scrub |
| heading_animation_controls | string | No | heading_animation_controls |
| text_duration | string | No | Duration |
| text_delay | string | No | Delay |
| text_stagger | string | No | Stagger |
| text_ease | string | No | Animation Effects |
| text_repeat | string | No | Repeat |
| enable_text_animation_sub_txt | string | No | Enable Animation |
| sub_text_animations | string | No | Animation |
| tp_select_sub_text_global_animation | string | No | Global Animation |
| text_animation_type_sub_txt | string | No | Animation Type |
| tp_tansformtion_toggel_sub_txt | string | No | Transform Effects |
| transform_x_sub_txt | string | No | X Position |
| transform_y_sub_txt | string | No | Y Position |
| transform_skewx_sub_txt | string | No | Skew X |
| transform_skewy_sub_txt | string | No | Skew Y |
| transform_scale_sub_txt | string | No | Scale |
| transform_rotation_sub_txt | string | No | Rotation |
| transform_origin_sub_txt | string | No | Transform Origin |
| split_type_sub_txt | string | No | Split Type |
| text_trigger_sub_txt | string | No | Animation Trigger |
| tp_scrub_sub_txt | string | No | tp_scrub_sub_txt |
| sub_animation_controls | string | No | sub_animation_controls |
| text_duration_sub_txt | string | No | Duration |
| text_delay_sub_txt | string | No | Delay |
| text_stagger_sub_txt | string | No | Stagger |
| text_ease_sub_txt | string | No | Animation Effects |
| text_repeat_sub_txt | string | No | Repeat |
| sep_img | integer | No | Separator With Image (Image ID) |
| input_margin | object | No | Margin (Dimensions Object) |
| double_color | string | No | Color (Color Hex/RGBA) |
| double_top | string | No | Top Separator Height |
| double_bottom | string | No | Bottom Separator Height |
| sep_clr | string | No | Separator Color (Color Hex/RGBA) |
| sep_width | object | No | Separator Width (Slider/Size Object) |
| dot_color | string | No | Separator Dot Color (Color Hex/RGBA) |
| sep_height | object | No | Separator Height (Slider/Size Object) |
| top_clr_width | object | No | Width (Slider/Size Object) |
| top_clr_height | object | No | Height (Slider/Size Object) |
| top_clr | string | No | Separator Vertical Color (Color Hex/RGBA) |
| title_sep_spacing | object | No | Separator Spacing (Slider/Size Object) |
| title_h | string | No | Title Tag |
| title_link | object | No | Heading Title Link |
| s_maintitle_pg | object | No | Padding (Dimensions Object) |
| title_color | string | No | Title Color |
| title_solid_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 | string | No | Color (Color Hex/RGBA) |
| special_effect | string | No | Special Effect |
| special_effect_options | string | No | special_effect_options |
| subtitle_sep_spacing | object | No | Separator Spacing (Slider/Size Object) |
| sub_title_tag | string | No | Subtitle Tag |
| s_subtitle_pg | object | No | Padding (Dimensions Object) |
| sub_title_color | string | No | Subtitle Title Color |
| sub_title_solid_color | string | No | Color (Color Hex/RGBA) |
| sub_title_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| sub_title_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| sub_title_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| sub_title_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| sub_title_gradient_style | string | No | Gradient Style |
| sub_title_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| sub_title_gradient_position | string | No | Position |
| sub_title_hover_color | string | No | Color (Color Hex/RGBA) |
| ex_title_color | string | No | Extra Title Color |
| ex_title_solid_color | string | No | Color (Color Hex/RGBA) |
| ex_title_gradient_color1 | string | No | Color 1 (Color Hex/RGBA) |
| ex_title_gradient_color1_control | object | No | Color 1 Location (Slider/Size Object) |
| ex_title_gradient_color2 | string | No | Color 2 (Color Hex/RGBA) |
| ex_title_gradient_color2_control | object | No | Color 2 Location (Slider/Size Object) |
| ex_title_gradient_style | string | No | Gradient Style |
| ex_title_gradient_angle | object | No | Gradient Angle (Slider/Size Object) |
| ex_title_gradient_position | string | No | Position |
| ex_title_hover_color | string | No | Color (Color Hex/RGBA) |
| position | string | No | Title Position |
| mobile_center_align | string | No | Center Alignment In Mobile |
| animation_effects | string | No | Choose Animation Effect |
| animation_delay | object | No | Animation Delay (Slider/Size Object) |
| animation_duration_default | string | No | Animation Duration |
| 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 |
| animation_out_duration | object | No | Duration Speed (Slider/Size Object) |
| settings | object | No | Raw Elementor control key/value pairs to merge. Supports SVG title stroke, background clipping typography, and animated underline physics. |
Returns
Returns an object with the new widget's element_id, the widget_type (tp-heading-title), and the post_id it was inserted into.
Permission
Requires the current user to have the edit_posts capability, and if a post_id is supplied, also requires edit_post capability for 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.