Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/elemento.../includes/widgets
File: divider.php
<?php
[0] Fix | Delete
namespace Elementor;
[1] Fix | Delete
[2] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[3] Fix | Delete
exit; // Exit if accessed directly.
[4] Fix | Delete
}
[5] Fix | Delete
[6] Fix | Delete
use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
[7] Fix | Delete
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;
[8] Fix | Delete
[9] Fix | Delete
/**
[10] Fix | Delete
* Elementor divider widget.
[11] Fix | Delete
*
[12] Fix | Delete
* Elementor widget that displays a line that divides different elements in the
[13] Fix | Delete
* page.
[14] Fix | Delete
*
[15] Fix | Delete
* @since 1.0.0
[16] Fix | Delete
*/
[17] Fix | Delete
class Widget_Divider extends Widget_Base {
[18] Fix | Delete
[19] Fix | Delete
/**
[20] Fix | Delete
* Get widget name.
[21] Fix | Delete
*
[22] Fix | Delete
* Retrieve divider widget name.
[23] Fix | Delete
*
[24] Fix | Delete
* @since 1.0.0
[25] Fix | Delete
* @access public
[26] Fix | Delete
*
[27] Fix | Delete
* @return string Widget name.
[28] Fix | Delete
*/
[29] Fix | Delete
public function get_name() {
[30] Fix | Delete
return 'divider';
[31] Fix | Delete
}
[32] Fix | Delete
[33] Fix | Delete
/**
[34] Fix | Delete
* Get widget title.
[35] Fix | Delete
*
[36] Fix | Delete
* Retrieve divider widget title.
[37] Fix | Delete
*
[38] Fix | Delete
* @since 1.0.0
[39] Fix | Delete
* @access public
[40] Fix | Delete
*
[41] Fix | Delete
* @return string Widget title.
[42] Fix | Delete
*/
[43] Fix | Delete
public function get_title() {
[44] Fix | Delete
return esc_html__( 'Divider', 'elementor' );
[45] Fix | Delete
}
[46] Fix | Delete
[47] Fix | Delete
/**
[48] Fix | Delete
* Get widget icon.
[49] Fix | Delete
*
[50] Fix | Delete
* Retrieve divider widget icon.
[51] Fix | Delete
*
[52] Fix | Delete
* @since 1.0.0
[53] Fix | Delete
* @access public
[54] Fix | Delete
*
[55] Fix | Delete
* @return string Widget icon.
[56] Fix | Delete
*/
[57] Fix | Delete
public function get_icon() {
[58] Fix | Delete
return 'eicon-divider';
[59] Fix | Delete
}
[60] Fix | Delete
[61] Fix | Delete
/**
[62] Fix | Delete
* Get widget categories.
[63] Fix | Delete
*
[64] Fix | Delete
* Retrieve the list of categories the divider widget belongs to.
[65] Fix | Delete
*
[66] Fix | Delete
* Used to determine where to display the widget in the editor.
[67] Fix | Delete
*
[68] Fix | Delete
* @since 2.0.0
[69] Fix | Delete
* @access public
[70] Fix | Delete
*
[71] Fix | Delete
* @return array Widget categories.
[72] Fix | Delete
*/
[73] Fix | Delete
public function get_categories() {
[74] Fix | Delete
return [ 'basic' ];
[75] Fix | Delete
}
[76] Fix | Delete
[77] Fix | Delete
/**
[78] Fix | Delete
* Get widget keywords.
[79] Fix | Delete
*
[80] Fix | Delete
* Retrieve the list of keywords the widget belongs to.
[81] Fix | Delete
*
[82] Fix | Delete
* @since 2.1.0
[83] Fix | Delete
* @access public
[84] Fix | Delete
*
[85] Fix | Delete
* @return array Widget keywords.
[86] Fix | Delete
*/
[87] Fix | Delete
public function get_keywords() {
[88] Fix | Delete
return [ 'divider', 'hr', 'line', 'border' ];
[89] Fix | Delete
}
[90] Fix | Delete
[91] Fix | Delete
protected function is_dynamic_content(): bool {
[92] Fix | Delete
return false;
[93] Fix | Delete
}
[94] Fix | Delete
[95] Fix | Delete
public function has_widget_inner_wrapper(): bool {
[96] Fix | Delete
return ! Plugin::$instance->experiments->is_feature_active( 'e_optimized_markup' );
[97] Fix | Delete
}
[98] Fix | Delete
[99] Fix | Delete
/**
[100] Fix | Delete
* Get style dependencies.
[101] Fix | Delete
*
[102] Fix | Delete
* Retrieve the list of style dependencies the widget requires.
[103] Fix | Delete
*
[104] Fix | Delete
* @since 3.24.0
[105] Fix | Delete
* @access public
[106] Fix | Delete
*
[107] Fix | Delete
* @return array Widget style dependencies.
[108] Fix | Delete
*/
[109] Fix | Delete
public function get_style_depends(): array {
[110] Fix | Delete
return [ 'widget-divider' ];
[111] Fix | Delete
}
[112] Fix | Delete
[113] Fix | Delete
private static function get_additional_styles() {
[114] Fix | Delete
static $additional_styles = null;
[115] Fix | Delete
[116] Fix | Delete
if ( null !== $additional_styles ) {
[117] Fix | Delete
return $additional_styles;
[118] Fix | Delete
}
[119] Fix | Delete
$additional_styles = [];
[120] Fix | Delete
/**
[121] Fix | Delete
* Additional Styles.
[122] Fix | Delete
*
[123] Fix | Delete
* Filters the styles used by Elementor to add additional divider styles.
[124] Fix | Delete
*
[125] Fix | Delete
* @since 2.7.0
[126] Fix | Delete
*
[127] Fix | Delete
* @param array $additional_styles Additional Elementor divider styles.
[128] Fix | Delete
*/
[129] Fix | Delete
$additional_styles = apply_filters( 'elementor/divider/styles/additional_styles', $additional_styles );
[130] Fix | Delete
return $additional_styles;
[131] Fix | Delete
}
[132] Fix | Delete
[133] Fix | Delete
private function get_separator_styles() {
[134] Fix | Delete
return array_merge(
[135] Fix | Delete
self::get_additional_styles(),
[136] Fix | Delete
[
[137] Fix | Delete
'curly' => [
[138] Fix | Delete
'label' => esc_html_x( 'Curly', 'Shapes', 'elementor' ),
[139] Fix | Delete
'shape' => '<path d="M0,21c3.3,0,8.3-0.9,15.7-7.1c6.6-5.4,4.4-9.3,2.4-10.3c-3.4-1.8-7.7,1.3-7.3,8.8C11.2,20,17.1,21,24,21"/>',
[140] Fix | Delete
'preserve_aspect_ratio' => false,
[141] Fix | Delete
'supports_amount' => true,
[142] Fix | Delete
'round' => false,
[143] Fix | Delete
'group' => 'line',
[144] Fix | Delete
],
[145] Fix | Delete
'curved' => [
[146] Fix | Delete
'label' => esc_html_x( 'Curved', 'Shapes', 'elementor' ),
[147] Fix | Delete
'shape' => '<path d="M0,6c6,0,6,13,12,13S18,6,24,6"/>',
[148] Fix | Delete
'preserve_aspect_ratio' => false,
[149] Fix | Delete
'supports_amount' => true,
[150] Fix | Delete
'round' => false,
[151] Fix | Delete
'group' => 'line',
[152] Fix | Delete
],
[153] Fix | Delete
'multiple' => [
[154] Fix | Delete
'label' => esc_html_x( 'Multiple', 'Shapes', 'elementor' ),
[155] Fix | Delete
'shape' => '<path d="M24,8v12H0V8H24z M24,4v1H0V4H24z"/>',
[156] Fix | Delete
'preserve_aspect_ratio' => false,
[157] Fix | Delete
'supports_amount' => false,
[158] Fix | Delete
'round' => false,
[159] Fix | Delete
'group' => 'pattern',
[160] Fix | Delete
],
[161] Fix | Delete
'slashes' => [
[162] Fix | Delete
'label' => esc_html_x( 'Slashes', 'Shapes', 'elementor' ),
[163] Fix | Delete
'shape' => '<g transform="translate(-12.000000, 0)"><path d="M28,0L10,18"/><path d="M18,0L0,18"/><path d="M48,0L30,18"/><path d="M38,0L20,18"/></g>',
[164] Fix | Delete
'preserve_aspect_ratio' => false,
[165] Fix | Delete
'supports_amount' => true,
[166] Fix | Delete
'round' => false,
[167] Fix | Delete
'view_box' => '0 0 20 16',
[168] Fix | Delete
'group' => 'line',
[169] Fix | Delete
],
[170] Fix | Delete
'squared' => [
[171] Fix | Delete
'label' => esc_html_x( 'Squared', 'Shapes', 'elementor' ),
[172] Fix | Delete
'shape' => '<polyline points="0,6 6,6 6,18 18,18 18,6 24,6 "/>',
[173] Fix | Delete
'preserve_aspect_ratio' => false,
[174] Fix | Delete
'supports_amount' => true,
[175] Fix | Delete
'round' => false,
[176] Fix | Delete
'group' => 'line',
[177] Fix | Delete
],
[178] Fix | Delete
'wavy' => [
[179] Fix | Delete
'label' => esc_html_x( 'Wavy', 'Shapes', 'elementor' ),
[180] Fix | Delete
'shape' => '<path d="M0,6c6,0,0.9,11.1,6.9,11.1S18,6,24,6"/>',
[181] Fix | Delete
'preserve_aspect_ratio' => false,
[182] Fix | Delete
'supports_amount' => true,
[183] Fix | Delete
'round' => false,
[184] Fix | Delete
'group' => 'line',
[185] Fix | Delete
],
[186] Fix | Delete
'zigzag' => [
[187] Fix | Delete
'label' => esc_html_x( 'Zigzag', 'Shapes', 'elementor' ),
[188] Fix | Delete
'shape' => '<polyline points="0,18 12,6 24,18 "/>',
[189] Fix | Delete
'preserve_aspect_ratio' => false,
[190] Fix | Delete
'supports_amount' => true,
[191] Fix | Delete
'round' => false,
[192] Fix | Delete
'group' => 'line',
[193] Fix | Delete
],
[194] Fix | Delete
'arrows' => [
[195] Fix | Delete
'label' => esc_html_x( 'Arrows', 'Shapes', 'elementor' ),
[196] Fix | Delete
'shape' => '<path d="M14.2,4c0.3,0,0.5,0.1,0.7,0.3l7.9,7.2c0.2,0.2,0.3,0.4,0.3,0.7s-0.1,0.5-0.3,0.7l-7.9,7.2c-0.2,0.2-0.4,0.3-0.7,0.3s-0.5-0.1-0.7-0.3s-0.3-0.4-0.3-0.7l0-2.9l-11.5,0c-0.4,0-0.7-0.3-0.7-0.7V9.4C1,9,1.3,8.7,1.7,8.7l11.5,0l0-3.6c0-0.3,0.1-0.5,0.3-0.7S13.9,4,14.2,4z"/>',
[197] Fix | Delete
'preserve_aspect_ratio' => true,
[198] Fix | Delete
'supports_amount' => true,
[199] Fix | Delete
'round' => true,
[200] Fix | Delete
'group' => 'pattern',
[201] Fix | Delete
],
[202] Fix | Delete
'pluses' => [
[203] Fix | Delete
'label' => esc_html_x( 'Pluses', 'Shapes', 'elementor' ),
[204] Fix | Delete
'shape' => '<path d="M21.4,9.6h-7.1V2.6c0-0.9-0.7-1.6-1.6-1.6h-1.6c-0.9,0-1.6,0.7-1.6,1.6v7.1H2.6C1.7,9.6,1,10.3,1,11.2v1.6c0,0.9,0.7,1.6,1.6,1.6h7.1v7.1c0,0.9,0.7,1.6,1.6,1.6h1.6c0.9,0,1.6-0.7,1.6-1.6v-7.1h7.1c0.9,0,1.6-0.7,1.6-1.6v-1.6C23,10.3,22.3,9.6,21.4,9.6z"/>',
[205] Fix | Delete
'preserve_aspect_ratio' => true,
[206] Fix | Delete
'supports_amount' => true,
[207] Fix | Delete
'round' => false,
[208] Fix | Delete
'group' => 'pattern',
[209] Fix | Delete
],
[210] Fix | Delete
'rhombus' => [
[211] Fix | Delete
'label' => esc_html_x( 'Rhombus', 'Shapes', 'elementor' ),
[212] Fix | Delete
'shape' => '<path d="M12.7,2.3c-0.4-0.4-1.1-0.4-1.5,0l-8,9.1c-0.3,0.4-0.3,0.9,0,1.2l8,9.1c0.4,0.4,1.1,0.4,1.5,0l8-9.1c0.3-0.4,0.3-0.9,0-1.2L12.7,2.3z"/>',
[213] Fix | Delete
'preserve_aspect_ratio' => false,
[214] Fix | Delete
'supports_amount' => true,
[215] Fix | Delete
'round' => false,
[216] Fix | Delete
'group' => 'pattern',
[217] Fix | Delete
],
[218] Fix | Delete
'parallelogram' => [
[219] Fix | Delete
'label' => esc_html_x( 'Parallelogram', 'Shapes', 'elementor' ),
[220] Fix | Delete
'shape' => '<polygon points="9.4,2 24,2 14.6,21.6 0,21.6"/>',
[221] Fix | Delete
'preserve_aspect_ratio' => false,
[222] Fix | Delete
'supports_amount' => true,
[223] Fix | Delete
'round' => false,
[224] Fix | Delete
'group' => 'pattern',
[225] Fix | Delete
],
[226] Fix | Delete
'rectangles' => [
[227] Fix | Delete
'label' => esc_html_x( 'Rectangles', 'Shapes', 'elementor' ),
[228] Fix | Delete
'shape' => '<rect x="15" y="0" width="30" height="30"/>',
[229] Fix | Delete
'preserve_aspect_ratio' => false,
[230] Fix | Delete
'supports_amount' => true,
[231] Fix | Delete
'round' => true,
[232] Fix | Delete
'group' => 'pattern',
[233] Fix | Delete
'view_box' => '0 0 60 30',
[234] Fix | Delete
],
[235] Fix | Delete
'dots_tribal' => [
[236] Fix | Delete
'label' => esc_html_x( 'Dots', 'Shapes', 'elementor' ),
[237] Fix | Delete
'shape' => '<path d="M3,10.2c2.6,0,2.6,2,2.6,3.2S4.4,16.5,3,16.5s-3-1.4-3-3.2S0.4,10.2,3,10.2z M18.8,10.2c1.7,0,3.2,1.4,3.2,3.2s-1.4,3.2-3.2,3.2c-1.7,0-3.2-1.4-3.2-3.2S17,10.2,18.8,10.2z M34.6,10.2c1.5,0,2.6,1.4,2.6,3.2s-0.5,3.2-1.9,3.2c-1.5,0-3.4-1.4-3.4-3.2S33.1,10.2,34.6,10.2z M50.5,10.2c1.7,0,3.2,1.4,3.2,3.2s-1.4,3.2-3.2,3.2c-1.7,0-3.3-0.9-3.3-2.6S48.7,10.2,50.5,10.2z M66.2,10.2c1.5,0,3.4,1.4,3.4,3.2s-1.9,3.2-3.4,3.2c-1.5,0-2.6-0.4-2.6-2.1S64.8,10.2,66.2,10.2z M82.2,10.2c1.7,0.8,2.6,1.4,2.6,3.2s-0.1,3.2-1.6,3.2c-1.5,0-3.7-1.4-3.7-3.2S80.5,9.4,82.2,10.2zM98.6,10.2c1.5,0,2.6,0.4,2.6,2.1s-1.2,4.2-2.6,4.2c-1.5,0-3.7-0.4-3.7-2.1S97.1,10.2,98.6,10.2z M113.4,10.2c1.2,0,2.2,0.9,2.2,3.2s-0.1,3.2-1.3,3.2s-3.1-1.4-3.1-3.2S112.2,10.2,113.4,10.2z"/>',
[238] Fix | Delete
'preserve_aspect_ratio' => true,
[239] Fix | Delete
'supports_amount' => false,
[240] Fix | Delete
'round' => false,
[241] Fix | Delete
'group' => 'tribal',
[242] Fix | Delete
'view_box' => '0 0 126 26',
[243] Fix | Delete
],
[244] Fix | Delete
'trees_2_tribal' => [
[245] Fix | Delete
'label' => esc_html_x( 'Fir Tree', 'Shapes', 'elementor' ),
[246] Fix | Delete
'shape' => '<path d="M111.9,18.3v3.4H109v-3.4H111.9z M90.8,18.3v3.4H88v-3.4H90.8z M69.8,18.3v3.4h-2.9v-3.4H69.8z M48.8,18.3v3.4h-2.9v-3.4H48.8z M27.7,18.3v3.4h-2.9v-3.4H27.7z M6.7,18.3v3.4H3.8v-3.4H6.7z M46.4,4l4.3,4.8l-1.8,0l3.5,4.4l-2.2-0.1l3,3.3l-11,0.4l3.6-3.8l-2.9-0.1l3.1-4.2l-1.9,0L46.4,4z M111.4,4l2.4,4.8l-1.8,0l3.5,4.4l-2.5-0.1l3.3,3.3h-11l3.1-3.4l-2.5-0.1l3.1-4.2l-1.9,0L111.4,4z M89.9,4l2.9,4.8l-1.9,0l3.2,4.2l-2.5,0l3.5,3.5l-11-0.4l3-3.1l-2.4,0L88,8.8l-1.9,0L89.9,4z M68.6,4l3,4.4l-1.9,0.1l3.4,4.1l-2.7,0.1l3.8,3.7H63.8l2.9-3.6l-2.9,0.1L67,8.7l-2,0.1L68.6,4z M26.5,4l3,4.4l-1.9,0.1l3.7,4.7l-2.5-0.1l3.3,3.3H21l3.1-3.4l-2.5-0.1l3.2-4.3l-2,0.1L26.5,4z M4.9,4l3.7,4.8l-1.5,0l3.1,4.2L7.6,13l3.4,3.4H0l3-3.3l-2.3,0.1l3.5-4.4l-2.3,0L4.9,4z"/>',
[247] Fix | Delete
'preserve_aspect_ratio' => true,
[248] Fix | Delete
'supports_amount' => false,
[249] Fix | Delete
'round' => false,
[250] Fix | Delete
'group' => 'tribal',
[251] Fix | Delete
'view_box' => '0 0 126 26',
[252] Fix | Delete
],
[253] Fix | Delete
'rounds_tribal' => [
[254] Fix | Delete
'label' => esc_html_x( 'Half Rounds', 'Shapes', 'elementor' ),
[255] Fix | Delete
'shape' => '<path d="M11.9,15.9L11.9,15.9L0,16c-0.2-3.7,1.5-5.7,4.9-6C10,9.6,12.4,14.2,11.9,15.9zM26.9,15.9L26.9,15.9L15,16c0.5-3.7,2.5-5.7,5.9-6C26,9.6,27.4,14.2,26.9,15.9z M37.1,10c3.4,0.3,5.1,2.3,4.9,6H30.1C29.5,14.4,31.9,9.6,37.1,10z M57,15.9L57,15.9L45,16c0-3.4,1.6-5.4,4.9-5.9C54.8,9.3,57.4,14.2,57,15.9z M71.9,15.9L71.9,15.9L60,16c-0.2-3.7,1.5-5.7,4.9-6C70,9.6,72.4,14.2,71.9,15.9z M82.2,10c3.4,0.3,5,2.3,4.8,6H75.3C74,13,77.1,9.6,82.2,10zM101.9,15.9L101.9,15.9L90,16c-0.2-3.7,1.5-5.7,4.9-6C100,9.6,102.4,14.2,101.9,15.9z M112.1,10.1c2.7,0.5,4.3,2.5,4.9,5.9h-11.9l0,0C104.5,14.4,108,9.3,112.1,10.1z"/>',
[256] Fix | Delete
'preserve_aspect_ratio' => true,
[257] Fix | Delete
'supports_amount' => false,
[258] Fix | Delete
'round' => false,
[259] Fix | Delete
'group' => 'tribal',
[260] Fix | Delete
'view_box' => '0 0 120 26',
[261] Fix | Delete
],
[262] Fix | Delete
'leaves_tribal' => [
[263] Fix | Delete
'label' => esc_html_x( 'Leaves', 'Shapes', 'elementor' ),
[264] Fix | Delete
'shape' => '<path d="M3,1.5C5,4.9,6,8.8,6,13s-1.7,8.1-5,11.5C0.3,21.1,0,17.2,0,13S1,4.9,3,1.5z M16,1.5c2,3.4,3,7.3,3,11.5s-1,8.1-3,11.5c-2-4.1-3-8.3-3-12.5S14,4.3,16,1.5z M29,1.5c2,4.8,3,9.3,3,13.5s-1,7.4-3,9.5c-2-3.4-3-7.3-3-11.5S27,4.9,29,1.5z M41.1,1.5C43.7,4.9,45,8.8,45,13s-1,8.1-3,11.5c-2-3.4-3-7.3-3-11.5S39.7,4.9,41.1,1.5zM55,1.5c2,2.8,3,6.3,3,10.5s-1.3,8.4-4,12.5c-1.3-3.4-2-7.3-2-11.5S53,4.9,55,1.5z M68,1.5c2,3.4,3,7.3,3,11.5s-0.7,8.1-2,11.5c-2.7-4.8-4-9.3-4-13.5S66,3.6,68,1.5z M82,1.5c1.3,4.8,2,9.3,2,13.5s-1,7.4-3,9.5c-2-3.4-3-7.3-3-11.5S79.3,4.9,82,1.5z M94,1.5c2,3.4,3,7.3,3,11.5s-1.3,8.1-4,11.5c-1.3-1.4-2-4.3-2-8.5S92,6.9,94,1.5z M107,1.5c2,2.1,3,5.3,3,9.5s-0.7,8.7-2,13.5c-2.7-3.4-4-7.3-4-11.5S105,4.9,107,1.5z"/>',
[265] Fix | Delete
'preserve_aspect_ratio' => true,
[266] Fix | Delete
'supports_amount' => false,
[267] Fix | Delete
'round' => false,
[268] Fix | Delete
'group' => 'tribal',
[269] Fix | Delete
'view_box' => '0 0 117 26',
[270] Fix | Delete
],
[271] Fix | Delete
'stripes_tribal' => [
[272] Fix | Delete
'label' => esc_html_x( 'Stripes', 'Shapes', 'elementor' ),
[273] Fix | Delete
'shape' => '<path d="M54,1.6V26h-9V2.5L54,1.6z M69,1.6v23.3L60,26V1.6H69z M24,1.6v23.5l-9-0.6V1.6H24z M30,0l9,0.7v24.5h-9V0z M9,2.5v22H0V3.7L9,2.5z M75,1.6l9,0.9v22h-9V1.6z M99,2.7v21.7h-9V3.8L99,2.7z M114,3.8v20.7l-9-0.5V3.8L114,3.8z"/>',
[274] Fix | Delete
'preserve_aspect_ratio' => true,
[275] Fix | Delete
'supports_amount' => false,
[276] Fix | Delete
'round' => false,
[277] Fix | Delete
'group' => 'tribal',
[278] Fix | Delete
'view_box' => '0 0 120 26',
[279] Fix | Delete
],
[280] Fix | Delete
'squares_tribal' => [
[281] Fix | Delete
'label' => esc_html_x( 'Squares', 'Shapes', 'elementor' ),
[282] Fix | Delete
'shape' => '<path d="M46.8,7.8v11.5L36,18.6V7.8H46.8z M82.4,7.8L84,18.6l-12,0.7L70.4,7.8H82.4z M0,7.8l12,0.9v9.9H1.3L0,7.8z M30,7.8v10.8H19L18,7.8H30z M63.7,7.8L66,18.6H54V9.5L63.7,7.8z M89.8,7L102,7.8v10.8H91.2L89.8,7zM108,7.8l12,0.9v8.9l-12,1V7.8z"/>',
[283] Fix | Delete
'preserve_aspect_ratio' => true,
[284] Fix | Delete
'supports_amount' => false,
[285] Fix | Delete
'round' => false,
[286] Fix | Delete
'group' => 'tribal',
[287] Fix | Delete
'view_box' => '0 0 126 26',
[288] Fix | Delete
],
[289] Fix | Delete
'trees_tribal' => [
[290] Fix | Delete
'label' => esc_html_x( 'Trees', 'Shapes', 'elementor' ),
[291] Fix | Delete
'shape' => '<path d="M6.4,2l4.2,5.7H7.7v2.7l3.8,5.2l-3.8,0v7.8H4.8v-7.8H0l4.8-5.2V7.7H1.1L6.4,2z M25.6,2L31,7.7h-3.7v2.7l4.8,5.2h-4.8v7.8h-2.8v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L25.6,2z M47.5,2l4.2,5.7h-3.3v2.7l3.8,5.2l-3.8,0l0.4,7.8h-2.8v-7.8H41l4.8-5.2V7.7h-3.7L47.5,2z M66.2,2l5.4,5.7h-3.7v2.7l4.8,5.2h-4.8v7.8H65v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L66.2,2zM87.4,2l4.8,5.7h-2.9v3.1l3.8,4.8l-3.8,0v7.8h-2.8v-7.8h-4.8l4.8-4.8V7.7h-3.7L87.4,2z M107.3,2l5.4,5.7h-3.7v2.7l4.8,5.2h-4.8v7.8H106v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L107.3,2z"/>',
[292] Fix | Delete
'preserve_aspect_ratio' => true,
[293] Fix | Delete
'supports_amount' => false,
[294] Fix | Delete
'round' => false,
[295] Fix | Delete
'group' => 'tribal',
[296] Fix | Delete
'view_box' => '0 0 123 26',
[297] Fix | Delete
],
[298] Fix | Delete
'planes_tribal' => [
[299] Fix | Delete
'label' => esc_html_x( 'Tribal', 'Shapes', 'elementor' ),
[300] Fix | Delete
'shape' => '<path d="M29.6,10.3l2.1,2.2l-3.6,3.3h7v2.9h-7l3.6,3.5l-2.1,1.7l-5.2-5.2h-5.8v-2.9h5.8L29.6,10.3z M70.9,9.6l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2l-5.2-5.5h-5.8v-2.9h5.8L70.9,9.6z M111.5,9.6l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2l-5.2-5.5h-5.8v-2.9h5.8L111.5,9.6z M50.2,2.7l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2L45,10.7h-5.8V7.9H45L50.2,2.7z M11,2l2.1,1.7L9.6,7.2h7V10h-7l3.6,3.3L11,15.5L5.8,10H0V7.2h5.8L11,2z M91.5,2l2.1,2.2l-3.6,3.3h7v2.9h-7l3.6,3.5l-2.1,1.7l-5.2-5.2h-5.8V7.5h5.8L91.5,2z"/>',
[301] Fix | Delete
'preserve_aspect_ratio' => true,
[302] Fix | Delete
'supports_amount' => false,
[303] Fix | Delete
'round' => false,
[304] Fix | Delete
'group' => 'tribal',
[305] Fix | Delete
'view_box' => '0 0 121 26',
[306] Fix | Delete
],
[307] Fix | Delete
'x_tribal' => [
[308] Fix | Delete
'label' => esc_html_x( 'X', 'Shapes', 'elementor' ),
[309] Fix | Delete
'shape' => '<path d="M10.7,6l2.5,2.6l-4,4.3l4,5.4l-2.5,1.9l-4.5-5.2l-3.9,4.2L0.7,17L4,13.1L0,8.6l2.3-1.3l3.9,3.9L10.7,6z M23.9,6.6l4.2,4.5L32,7.2l2.3,1.3l-4,4.5l3.2,3.9L32,19.1l-3.9-3.3l-4.5,4.3l-2.5-1.9l4.4-5.1l-4.2-3.9L23.9,6.6zM73.5,6L76,8.6l-4,4.3l4,5.4l-2.5,1.9l-4.5-5.2l-3.9,4.2L63.5,17l4.1-4.7L63.5,8l2.3-1.3l4.1,3.6L73.5,6z M94,6l2.5,2.6l-4,4.3l4,5.4L94,20.1l-3.9-5l-3.9,4.2L84,17l3.2-3.9L84,8.6l2.3-1.3l3.2,3.9L94,6z M106.9,6l4.5,5.1l3.9-3.9l2.3,1.3l-4,4.5l3.2,3.9l-1.6,2.1l-3.9-4.2l-4.5,5.2l-2.5-1.9l4-5.4l-4-4.3L106.9,6z M53.1,6l2.5,2.6l-4,4.3l4,4.6l-2.5,1.9l-4.5-4.5l-3.5,4.5L43.1,17l3.2-3.9l-4-4.5l2.3-1.3l3.9,3.9L53.1,6z"/>',
[310] Fix | Delete
'preserve_aspect_ratio' => true,
[311] Fix | Delete
'supports_amount' => false,
[312] Fix | Delete
'round' => false,
[313] Fix | Delete
'group' => 'tribal',
[314] Fix | Delete
'view_box' => '0 0 126 26',
[315] Fix | Delete
],
[316] Fix | Delete
'zigzag_tribal' => [
[317] Fix | Delete
'label' => esc_html_x( 'Zigzag', 'Shapes', 'elementor' ),
[318] Fix | Delete
'shape' => '<polygon points="0,14.4 0,21 11.5,12.4 21.3,20 30.4,11.1 40.3,20 51,12.4 60.6,20 69.6,11.1 79.3,20 90.1,12.4 99.6,20 109.7,11.1 120,21 120,14.4 109.7,5 99.6,13 90.1,5 79.3,14.5 71,5.7 60.6,12.4 51,5 40.3,14.5 31.1,5 21.3,13 11.5,5 "/>',
[319] Fix | Delete
'preserve_aspect_ratio' => true,
[320] Fix | Delete
'supports_amount' => false,
[321] Fix | Delete
'round' => false,
[322] Fix | Delete
'group' => 'tribal',
[323] Fix | Delete
'view_box' => '0 0 120 26',
[324] Fix | Delete
],
[325] Fix | Delete
]
[326] Fix | Delete
);
[327] Fix | Delete
}
[328] Fix | Delete
[329] Fix | Delete
private function filter_styles_by( $styles_array, $key, $value ) {
[330] Fix | Delete
return array_filter( $styles_array, function( $style ) use ( $key, $value ) {
[331] Fix | Delete
return $value === $style[ $key ];
[332] Fix | Delete
} );
[333] Fix | Delete
}
[334] Fix | Delete
[335] Fix | Delete
private function get_options_by_groups( $styles, $group = false ) {
[336] Fix | Delete
$groups = [
[337] Fix | Delete
'line' => [
[338] Fix | Delete
'label' => esc_html__( 'Line', 'elementor' ),
[339] Fix | Delete
'options' => [
[340] Fix | Delete
'solid' => esc_html__( 'Solid', 'elementor' ),
[341] Fix | Delete
'double' => esc_html__( 'Double', 'elementor' ),
[342] Fix | Delete
'dotted' => esc_html__( 'Dotted', 'elementor' ),
[343] Fix | Delete
'dashed' => esc_html__( 'Dashed', 'elementor' ),
[344] Fix | Delete
],
[345] Fix | Delete
],
[346] Fix | Delete
];
[347] Fix | Delete
foreach ( $styles as $key => $style ) {
[348] Fix | Delete
if ( ! isset( $groups[ $style['group'] ] ) ) {
[349] Fix | Delete
$groups[ $style['group'] ] = [
[350] Fix | Delete
'label' => ucwords( str_replace( '_', '', $style['group'] ) ),
[351] Fix | Delete
'options' => [],
[352] Fix | Delete
];
[353] Fix | Delete
}
[354] Fix | Delete
$groups[ $style['group'] ]['options'][ $key ] = $style['label'];
[355] Fix | Delete
}
[356] Fix | Delete
[357] Fix | Delete
if ( $group && isset( $groups[ $group ] ) ) {
[358] Fix | Delete
return $groups[ $group ];
[359] Fix | Delete
}
[360] Fix | Delete
return $groups;
[361] Fix | Delete
}
[362] Fix | Delete
[363] Fix | Delete
/**
[364] Fix | Delete
* Register divider widget controls.
[365] Fix | Delete
*
[366] Fix | Delete
* Adds different input fields to allow the user to change and customize the widget settings.
[367] Fix | Delete
*
[368] Fix | Delete
* @since 3.1.0
[369] Fix | Delete
* @access protected
[370] Fix | Delete
*/
[371] Fix | Delete
protected function register_controls() {
[372] Fix | Delete
$styles = $this->get_separator_styles();
[373] Fix | Delete
$this->start_controls_section(
[374] Fix | Delete
'section_divider',
[375] Fix | Delete
[
[376] Fix | Delete
'label' => esc_html__( 'Divider', 'elementor' ),
[377] Fix | Delete
]
[378] Fix | Delete
);
[379] Fix | Delete
[380] Fix | Delete
$this->add_control(
[381] Fix | Delete
'style',
[382] Fix | Delete
[
[383] Fix | Delete
'label' => esc_html__( 'Style', 'elementor' ),
[384] Fix | Delete
'type' => Controls_Manager::SELECT,
[385] Fix | Delete
'groups' => array_values( $this->get_options_by_groups( $styles ) ),
[386] Fix | Delete
'render_type' => 'template',
[387] Fix | Delete
'default' => 'solid',
[388] Fix | Delete
'selectors' => [
[389] Fix | Delete
'{{WRAPPER}}' => '--divider-border-style: {{VALUE}}',
[390] Fix | Delete
],
[391] Fix | Delete
]
[392] Fix | Delete
);
[393] Fix | Delete
[394] Fix | Delete
$this->add_control(
[395] Fix | Delete
'separator_type',
[396] Fix | Delete
[
[397] Fix | Delete
'type' => Controls_Manager::HIDDEN,
[398] Fix | Delete
'default' => 'pattern',
[399] Fix | Delete
'prefix_class' => 'elementor-widget-divider--separator-type-',
[400] Fix | Delete
'condition' => [
[401] Fix | Delete
'style!' => [
[402] Fix | Delete
'',
[403] Fix | Delete
'solid',
[404] Fix | Delete
'double',
[405] Fix | Delete
'dotted',
[406] Fix | Delete
'dashed',
[407] Fix | Delete
],
[408] Fix | Delete
],
[409] Fix | Delete
'render_type' => 'template',
[410] Fix | Delete
]
[411] Fix | Delete
);
[412] Fix | Delete
[413] Fix | Delete
$this->add_control(
[414] Fix | Delete
'pattern_spacing_flag',
[415] Fix | Delete
[
[416] Fix | Delete
'type' => Controls_Manager::HIDDEN,
[417] Fix | Delete
'default' => 'no-spacing',
[418] Fix | Delete
'prefix_class' => 'elementor-widget-divider--',
[419] Fix | Delete
'condition' => [
[420] Fix | Delete
'style' => array_keys( $this->filter_styles_by( $styles, 'supports_amount', false ) ),
[421] Fix | Delete
],
[422] Fix | Delete
'render_type' => 'template',
[423] Fix | Delete
]
[424] Fix | Delete
);
[425] Fix | Delete
[426] Fix | Delete
$this->add_control(
[427] Fix | Delete
'pattern_round_flag',
[428] Fix | Delete
[
[429] Fix | Delete
'type' => Controls_Manager::HIDDEN,
[430] Fix | Delete
'default' => 'bg-round',
[431] Fix | Delete
'prefix_class' => 'elementor-widget-divider--',
[432] Fix | Delete
'condition' => [
[433] Fix | Delete
'style' => array_keys( $this->filter_styles_by( $styles, 'round', true ) ),
[434] Fix | Delete
],
[435] Fix | Delete
]
[436] Fix | Delete
);
[437] Fix | Delete
[438] Fix | Delete
$this->add_responsive_control(
[439] Fix | Delete
'width',
[440] Fix | Delete
[
[441] Fix | Delete
'label' => esc_html__( 'Width', 'elementor' ),
[442] Fix | Delete
'type' => Controls_Manager::SLIDER,
[443] Fix | Delete
'size_units' => [ 'px', '%', 'em', 'rem', 'vw', 'custom' ],
[444] Fix | Delete
'range' => [
[445] Fix | Delete
'px' => [
[446] Fix | Delete
'max' => 1000,
[447] Fix | Delete
],
[448] Fix | Delete
],
[449] Fix | Delete
'default' => [
[450] Fix | Delete
'size' => 100,
[451] Fix | Delete
'unit' => '%',
[452] Fix | Delete
],
[453] Fix | Delete
'tablet_default' => [
[454] Fix | Delete
'unit' => '%',
[455] Fix | Delete
],
[456] Fix | Delete
'mobile_default' => [
[457] Fix | Delete
'unit' => '%',
[458] Fix | Delete
],
[459] Fix | Delete
'selectors' => [
[460] Fix | Delete
'{{WRAPPER}} .elementor-divider-separator' => 'width: {{SIZE}}{{UNIT}};',
[461] Fix | Delete
],
[462] Fix | Delete
]
[463] Fix | Delete
);
[464] Fix | Delete
[465] Fix | Delete
$this->add_responsive_control(
[466] Fix | Delete
'align',
[467] Fix | Delete
[
[468] Fix | Delete
'label' => esc_html__( 'Alignment', 'elementor' ),
[469] Fix | Delete
'type' => Controls_Manager::CHOOSE,
[470] Fix | Delete
'options' => [
[471] Fix | Delete
'left' => [
[472] Fix | Delete
'title' => esc_html__( 'Left', 'elementor' ),
[473] Fix | Delete
'icon' => 'eicon-text-align-left',
[474] Fix | Delete
],
[475] Fix | Delete
'center' => [
[476] Fix | Delete
'title' => esc_html__( 'Center', 'elementor' ),
[477] Fix | Delete
'icon' => 'eicon-text-align-center',
[478] Fix | Delete
],
[479] Fix | Delete
'right' => [
[480] Fix | Delete
'title' => esc_html__( 'Right', 'elementor' ),
[481] Fix | Delete
'icon' => 'eicon-text-align-right',
[482] Fix | Delete
],
[483] Fix | Delete
],
[484] Fix | Delete
'selectors' => [
[485] Fix | Delete
'{{WRAPPER}} .elementor-divider' => 'text-align: {{VALUE}}',
[486] Fix | Delete
'{{WRAPPER}} .elementor-divider-separator' => 'margin: 0 auto; margin-{{VALUE}}: 0',
[487] Fix | Delete
],
[488] Fix | Delete
]
[489] Fix | Delete
);
[490] Fix | Delete
[491] Fix | Delete
$this->add_control(
[492] Fix | Delete
'look',
[493] Fix | Delete
[
[494] Fix | Delete
'label' => esc_html__( 'Add Element', 'elementor' ),
[495] Fix | Delete
'type' => Controls_Manager::CHOOSE,
[496] Fix | Delete
'default' => 'line',
[497] Fix | Delete
'options' => [
[498] Fix | Delete
'line' => [
[499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function