/
home
/
techb158
/
balacoffee.com
/
wp-content
/
themes
/
Divi-1
/
includes
/
builder
/
module
/
/home/techb158/balacoffee.com/wp-content/themes/Divi-1/includes/builder/module
mkdir
upload
Name
Size
Mode
Actions
field/
-
0755
rm
helpers/
-
0755
rm
settings/
-
0755
rm
type/
-
0755
rm
woocommerce/
-
0755
rm
Accordion.php
17198
0644
edit
dl
rm
AccordionItem.php
11092
0644
edit
dl
rm
Audio.php
17416
0644
edit
dl
rm
BarCounters.php
31792
0644
edit
dl
rm
BarCountersItem.php
20987
0644
edit
dl
rm
Blog.php
74431
0644
edit
dl
rm
Blurb.php
38747
0644
edit
dl
rm
Button.php
12083
0644
edit
dl
rm
CircleCounter.php
18065
0644
edit
dl
rm
Code.php
4244
0644
edit
dl
rm
Comments.php
24012
0644
edit
dl
rm
ContactForm.php
36426
0644
edit
dl
rm
ContactFormItem.php
36757
0644
edit
dl
rm
CountdownTimer.php
10245
0644
edit
dl
rm
Cta.php
12023
0644
edit
dl
rm
Divider.php
15332
0644
edit
dl
rm
FilterablePortfolio.php
27137
0644
edit
dl
rm
FullwidthCode.php
4110
0644
edit
dl
rm
FullwidthHeader.php
37763
0644
edit
dl
rm
FullwidthImage.php
13559
0644
edit
dl
rm
FullwidthMap.php
10243
0644
edit
dl
rm
FullwidthMenu.php
52779
0644
edit
dl
rm
FullwidthPortfolio.php
23198
0644
edit
dl
rm
FullwidthPostContent.php
648
0644
edit
dl
rm
FullwidthPostSlider.php
58514
0644
edit
dl
rm
FullwidthPostTitle.php
27064
0644
edit
dl
rm
FullwidthSlider.php
53515
0644
edit
dl
rm
Gallery.php
25465
0644
edit
dl
rm
Heading.php
7071
0644
edit
dl
rm
Icon.php
14627
0644
edit
dl
rm
Image.php
21416
0644
edit
dl
rm
Login.php
18075
0644
edit
dl
rm
Map.php
11410
0644
edit
dl
rm
MapItem.php
6418
0644
edit
dl
rm
Menu.php
52857
0644
edit
dl
rm
NumberCounter.php
9651
0644
edit
dl
rm
Portfolio.php
29196
0644
edit
dl
rm
PostContent.php
569
0644
edit
dl
rm
PostSlider.php
59996
0644
edit
dl
rm
PostsNavigation.php
15900
0644
edit
dl
rm
PostTitle.php
27455
0644
edit
dl
rm
PricingTables.php
37726
0644
edit
dl
rm
PricingTablesItem.php
27340
0644
edit
dl
rm
Search.php
14361
0644
edit
dl
rm
Sidebar.php
7683
0644
edit
dl
rm
Signup.php
53466
0644
edit
dl
rm
SignupItem.php
10492
0644
edit
dl
rm
Slider.php
54612
0644
edit
dl
rm
SliderItem.php
47680
0644
edit
dl
rm
SocialMediaFollow.php
11776
0644
edit
dl
rm
SocialMediaFollowItem.php
24081
0644
edit
dl
rm
Tabs.php
10378
0644
edit
dl
rm
TabsItem.php
6605
0644
edit
dl
rm
TeamMember.php
19086
0644
edit
dl
rm
Testimonial.php
28025
0644
edit
dl
rm
Text.php
22148
0644
edit
dl
rm
Toggle.php
26443
0644
edit
dl
rm
Video.php
16876
0644
edit
dl
rm
VideoSlider.php
14340
0644
edit
dl
rm
VideoSliderItem.php
19860
0644
edit
dl
rm
Edit:
/home/techb158/balacoffee.com/wp-content/themes/Divi-1/includes/builder/module/Comments.php
(24012B)
<?php class ET_Builder_Module_Comments extends ET_Builder_Module { function init() { $this->name = esc_html__( 'Comments', 'et_builder' ); $this->plural = esc_html__( 'Comments', 'et_builder' ); $this->slug = 'et_pb_comments'; $this->vb_support = 'on'; $this->main_css_element = '%%order_class%%'; $this->settings_modal_toggles = array( 'general' => array( 'toggles' => array( 'elements' => et_builder_i18n( 'Elements' ), ), ), 'advanced' => array( 'toggles' => array( 'image' => array( 'title' => et_builder_i18n( 'Image' ), 'priority' => 30, ), 'text' => array( 'title' => et_builder_i18n( 'Text' ), 'priority' => 49, ), ), ), ); $this->advanced_fields = array( 'box_shadow' => array( 'default' => array(), 'image' => array( 'label' => esc_html__( 'Image Box Shadow', 'et_builder' ), 'option_category' => 'layout', 'tab_slug' => 'advanced', 'toggle_slug' => 'image', 'css' => array( 'main' => "{$this->main_css_element} .commentlist img.avatar", ), ), ), 'borders' => array( 'default' => array( 'css' => array( 'main' => array( 'border_radii' => "{$this->main_css_element}", 'border_styles' => "{$this->main_css_element}", ), 'important' => 'all', ), ), 'image' => array( 'css' => array( 'main' => array( 'border_radii' => '%%order_class%%.et_pb_comments_module .commentlist li img.avatar', 'border_styles' => '%%order_class%%.et_pb_comments_module .commentlist li img.avatar', ), ), 'label_prefix' => et_builder_i18n( 'Image' ), 'tab_slug' => 'advanced', 'toggle_slug' => 'image', ), ), 'margin_padding' => array( 'css' => array( 'important' => 'all', ), ), 'fonts' => array( 'header' => array( 'label' => esc_html__( 'Comment Count', 'et_builder' ), 'css' => array( 'main' => "{$this->main_css_element} h1.page_title, {$this->main_css_element} h2.page_title, {$this->main_css_element} h3.page_title, {$this->main_css_element} h4.page_title, {$this->main_css_element} h5.page_title, {$this->main_css_element} h6.page_title", ), 'header_level' => array( 'default' => 'h1', ), ), 'title' => array( 'label' => esc_html__( 'Form Title', 'et_builder' ), 'css' => array( 'main' => "{$this->main_css_element} .comment-reply-title", ), 'line_height' => array( 'default' => '1em', ), 'font_size' => array( 'default' => '22px', ), 'letter_spacing' => array( 'default' => '0px', ), 'header_level' => array( 'default' => 'h3', ), ), 'meta' => array( 'label' => esc_html__( 'Meta', 'et_builder' ), 'css' => array( 'main' => "{$this->main_css_element} .comment_postinfo span", 'important' => 'all', 'text_align' => "{$this->main_css_element} .comment_postinfo", ), 'line_height' => array( 'default' => '1em', ), 'font_size' => array( 'default' => '14px', ), 'letter_spacing' => array( 'default' => '0px', ), ), 'body' => array( 'label' => esc_html__( 'Comment', 'et_builder' ), 'css' => array( 'main' => "{$this->main_css_element} .comment-content p", ), 'line_height' => array( 'default' => '1em', ), 'font_size' => array( 'default' => '14px', ), 'letter_spacing' => array( 'default' => '0px', ), ), ), 'button' => array( 'button' => array( 'label' => et_builder_i18n( 'Button' ), 'css' => array( 'main' => "{$this->main_css_element}.et_pb_comments_module .et_pb_button", 'limited_main' => "{$this->main_css_element}.et_pb_comments_module .et_pb_button", 'alignment' => "{$this->main_css_element} .form-submit", ), 'no_rel_attr' => true, 'use_alignment' => true, 'box_shadow' => array( 'css' => array( 'main' => "{$this->main_css_element} .et_pb_button", ), ), 'margin_padding' => array( 'css' => array( 'important' => 'all', ), ), ), ), 'text' => array( 'use_background_layout' => true, 'css' => array( 'main' => '%%order_class%% p, %%order_class%% .comment_postinfo *, %%order_class%% .page_title, %%order_class%% .comment-reply-title', 'text_shadow' => '%%order_class%% p, %%order_class%% .comment_postinfo, %%order_class%% .page_title, %%order_class%% .comment-reply-title', ), 'options' => array( 'background_layout' => array( 'default_on_front' => 'light', 'hover' => 'tabs', ), ), ), 'form_field' => array( 'form_field' => array( 'label' => esc_html__( 'Fields', 'et_builder' ), 'css' => array( 'main' => "{$this->main_css_element} #commentform textarea, {$this->main_css_element} #commentform input[type='text'], {$this->main_css_element} #commentform input[type='email'], {$this->main_css_element} #commentform input[type='url']", 'hover' => "{$this->main_css_element} #commentform textarea:hover, {$this->main_css_element} #commentform input[type='text']:hover, {$this->main_css_element} #commentform input[type='email']:hover, {$this->main_css_element} #commentform input[type='url']:hover", 'focus' => "{$this->main_css_element} #commentform textarea:focus, {$this->main_css_element} #commentform input[type='text']:focus, {$this->main_css_element} #commentform input[type='email']:focus, {$this->main_css_element} #commentform input[type='url']:focus", 'focus_hover' => "{$this->main_css_element} #commentform textarea:focus:hover, {$this->main_css_element} #commentform input[type='text']:focus:hover, {$this->main_css_element} #commentform input[type='email']:focus:hover, {$this->main_css_element} #commentform input[type='url']:focus:hover", 'placeholder' => "{$this->main_css_element} #commentform textarea::-webkit-input-placeholder, {$this->main_css_element} #commentform textarea::-moz-placeholder, {$this->main_css_element} #commentform textarea:-ms-input-placeholder, {$this->main_css_element} #commentform input::-webkit-input-placeholder, {$this->main_css_element} #commentform input::-moz-placeholder, {$this->main_css_element} #commentform input:-ms-input-placeholder", 'placeholder_focus' => "{$this->main_css_element} #commentform textarea:focus::-webkit-input-placeholder, {$this->main_css_element} #commentform textarea:focus::-moz-placeholder, {$this->main_css_element} #commentform textarea:focus:-ms-input-placeholder, {$this->main_css_element} #commentform input:focus::-webkit-input-placeholder, {$this->main_css_element} #commentform input:focus::-moz-placeholder, {$this->main_css_element} #commentform input:focus:-ms-input-placeholder", 'margin' => "{$this->main_css_element} #commentform .comment-form-comment, {$this->main_css_element} #commentform .comment-form-author, {$this->main_css_element} #commentform .comment-form-email, {$this->main_css_element} #commentform .comment-form-url", ), 'box_shadow' => array( 'name' => 'fields', 'css' => array( 'main' => "{$this->main_css_element} #commentform textarea, {$this->main_css_element} #commentform input[type='text'], {$this->main_css_element} #commentform input[type='email'], {$this->main_css_element} #commentform input[type='url']", ), ), 'border_styles' => array( 'form_field' => array( 'name' => 'fields', 'css' => array( 'main' => array( 'border_radii' => "{$this->main_css_element} #commentform textarea, {$this->main_css_element} #commentform input[type='text'], {$this->main_css_element} #commentform input[type='email'], {$this->main_css_element} #commentform input[type='url']", 'border_styles' => "{$this->main_css_element} #commentform textarea, {$this->main_css_element} #commentform input[type='text'], {$this->main_css_element} #commentform input[type='email'], {$this->main_css_element} #commentform input[type='url']", ), 'important' => 'all', ), 'label_prefix' => esc_html__( 'Fields', 'et_builder' ), ), 'form_field_focus' => array( 'name' => 'fields_focus', 'css' => array( 'main' => array( 'border_radii' => "{$this->main_css_element} #commentform textarea:focus, {$this->main_css_element} #commentform input[type='text']:focus, {$this->main_css_element} #commentform input[type='email']:focus, {$this->main_css_element} #commentform input[type='url']:focus", 'border_styles' => "{$this->main_css_element} #commentform textarea:focus, {$this->main_css_element} #commentform input[type='text']:focus, {$this->main_css_element} #commentform input[type='email']:focus, {$this->main_css_element} #commentform input[type='url']:focus", ), ), 'label_prefix' => esc_html__( 'Fields Focus', 'et_builder' ), ), ), 'font_field' => array( 'css' => array( 'main' => "{$this->main_css_element} #commentform textarea, {$this->main_css_element} #commentform input[type='text'], {$this->main_css_element} #commentform input[type='email'], {$this->main_css_element} #commentform input[type='url'], {$this->main_css_element} #commentform label", 'important' => 'all', ), 'line_height' => array( 'default' => '1em', ), 'font_size' => array( 'default' => '18px', ), 'letter_spacing' => array( 'default' => '0px', ), ), ), ), 'filters' => array( 'child_filters_target' => array( 'tab_slug' => 'advanced', 'toggle_slug' => 'image', ), ), 'image' => array( 'css' => array( 'main' => "{$this->main_css_element} .commentlist img.avatar", ), ), ); $this->custom_css_fields = array( 'main_header' => array( 'label' => esc_html__( 'Comments Count', 'et_builder' ), 'selector' => 'h1#comments', ), 'comment_body' => array( 'label' => esc_html__( 'Comment Body', 'et_builder' ), 'selector' => '.comment-body', ), 'comment_meta' => array( 'label' => esc_html__( 'Comment Meta', 'et_builder' ), 'selector' => '.comment_postinfo', ), 'comment_content' => array( 'label' => esc_html__( 'Comment Content', 'et_builder' ), 'selector' => '.comment_area .comment-content', ), 'comment_avatar' => array( 'label' => esc_html__( 'Comment Avatar', 'et_builder' ), 'selector' => '.comment_avatar', ), 'reply_button' => array( 'label' => esc_html__( 'Reply Button', 'et_builder' ), 'selector' => '.comment-reply-link.et_pb_button', ), 'new_title' => array( 'label' => esc_html__( 'New Comment Title', 'et_builder' ), 'selector' => 'h3#reply-title', ), 'message_field' => array( 'label' => esc_html__( 'Message Field', 'et_builder' ), 'selector' => '.comment-form-comment textarea#comment', ), 'name_field' => array( 'label' => esc_html__( 'Name Field', 'et_builder' ), 'selector' => '.comment-form-author input', ), 'email_field' => array( 'label' => esc_html__( 'Email Field', 'et_builder' ), 'selector' => '.comment-form-email input', ), 'website_field' => array( 'label' => esc_html__( 'Website Field', 'et_builder' ), 'selector' => '.comment-form-url input', ), 'submit_button' => array( 'label' => esc_html__( 'Submit Button', 'et_builder' ), 'selector' => '.form-submit .et_pb_button#et_pb_submit', ), ); $this->help_videos = array( array( 'id' => 'k6vskmOxM4U', 'name' => esc_html__( 'An introduction to the Comments module', 'et_builder' ), ), ); } function get_fields() { $fields = array( 'show_avatar' => array( 'label' => esc_html__( 'Show Author Avatar', 'et_builder' ), 'description' => esc_html__( 'Disabling the author avatar will remove the profile picture from the module.', 'et_builder' ), 'type' => 'yes_no_button', 'option_category' => 'configuration', 'options' => array( 'on' => et_builder_i18n( 'Yes' ), 'off' => et_builder_i18n( 'No' ), ), 'toggle_slug' => 'elements', 'default_on_front' => 'on', 'mobile_options' => true, 'hover' => 'tabs', ), 'show_reply' => array( 'label' => esc_html__( 'Show Reply Button', 'et_builder' ), 'description' => esc_html__( 'Disabling the reply button will prevent visitors from creating threaded comments.', 'et_builder' ), 'type' => 'yes_no_button', 'option_category' => 'configuration', 'options' => array( 'on' => et_builder_i18n( 'Yes' ), 'off' => et_builder_i18n( 'No' ), ), 'toggle_slug' => 'elements', 'default_on_front' => 'on', 'mobile_options' => true, 'hover' => 'tabs', ), 'show_count' => array( 'label' => esc_html__( 'Show Comment Count', 'et_builder' ), 'description' => esc_html__( 'Disabling the comment count will remove the number of comments from the top of the module.', 'et_builder' ), 'type' => 'yes_no_button', 'option_category' => 'configuration', 'options' => array( 'on' => et_builder_i18n( 'Yes' ), 'off' => et_builder_i18n( 'No' ), ), 'toggle_slug' => 'elements', 'default_on_front' => 'on', 'mobile_options' => true, 'hover' => 'tabs', ), 'show_meta' => array( 'label' => esc_html__( 'Show Meta', 'et_builder' ), 'type' => 'yes_no_button', 'option_category' => 'configuration', 'options' => array( 'on' => esc_html__( 'Yes', 'et_builder' ), 'off' => esc_html__( 'No', 'et_builder' ), ), 'default_on_front' => 'on', 'toggle_slug' => 'elements', 'description' => esc_html__( 'Turn meta on or off.', 'et_builder' ), 'mobile_options' => true, 'hover' => 'tabs', ), ); return $fields; } /** * Get comments markup for comments module * * @since 4.0.9 Add custom form title heading level. * * @param {string} $header_level * @param {string} $form_title_level * * @return string of comment section markup */ static function get_comments( $header_level, $form_title_level ) { global $et_pb_comments_print, $et_comments_header_level, $et_comments_form_title_level; // Globally flag that comment module is being printed $et_pb_comments_print = true; // set custom header level for comments form $et_comments_header_level = $header_level; $et_comments_form_title_level = $form_title_level; // remove filters to make sure comments module rendered correctly if the below filters were applied earlier. remove_filter( 'get_comments_number', '__return_zero' ); remove_filter( 'comments_open', '__return_false' ); remove_filter( 'comments_array', '__return_empty_array' ); // Custom action before calling comments_template. do_action( 'et_fb_before_comments_template' ); ob_start(); comments_template( '', true ); $comments_content = ob_get_contents(); ob_end_clean(); // Custom action after calling comments_template. do_action( 'et_fb_after_comments_template' ); // Globally flag that comment module has been printed $et_pb_comments_print = false; $et_comments_header_level = ''; return $comments_content; } /** * Action and filter hooks that are called before comment content rendering. These are * abstracted into method so module which extends comment module can modify these * * @since 3.29 */ function before_comments_content() { // Modify the comments request to make sure it's unique. // Otherwise WP generates SQL error and doesn't allow multiple comments sections on single page add_action( 'pre_get_comments', array( $this, 'et_pb_modify_comments_request' ), 1 ); // include custom comments_template to display the comment section with Divi style add_filter( 'comments_template', array( $this, 'et_pb_comments_template' ) ); // Modify submit button to be advanced button style ready add_filter( 'comment_form_submit_button', array( $this, 'et_pb_comments_submit_button' ) ); } /** * Comment content rendering. These are abstracted into method so module which extends comment * module can modify these * * @since 3.29 * @since 4.0.9 Add form title heading level. */ function get_comments_content() { $header_level = et_()->array_get( $this->props, 'header_level' ); $form_title_level = et_()->array_get( $this->props, 'title_level' ); $header_level_processed = et_pb_process_header_level( $header_level, 'h1' ); $form_title_level_processed = et_pb_process_header_level( $form_title_level, 'h3' ); return self::get_comments( $header_level_processed, $form_title_level_processed ); } /** * Action and filter hooks that are called after comment content rendering. These are * abstracted into method so module which extends comment module can modify these */ function after_comments_content() { // remove all the actions and filters to not break the default comments section from theme remove_filter( 'comments_template', array( $this, 'et_pb_comments_template' ) ); remove_action( 'pre_get_comments', array( $this, 'et_pb_modify_comments_request' ), 1 ); } function et_pb_comments_template() { return realpath( dirname( __FILE__ ) . '/..' ) . '/comments_template.php'; } function et_pb_comments_submit_button( $submit_button ) { return sprintf( '<button name="%1$s" type="submit" id="%2$s" class="%3$s">%4$s</button>', esc_attr( 'submit' ), esc_attr( 'et_pb_submit' ), esc_attr( 'submit' ), esc_html__( 'Submit Comment', 'et_builder' ) ); } function et_pb_modify_comments_request( $params ) { // modify the request parameters the way it doesn't change the result just to make request with unique parameters $params->query_vars['type__not_in'] = 'et_pb_comments_random_type_' . $this->et_pb_unique_comments_module_class; } /** * Renders the module output. * * @param array $attrs List of attributes. * @param string $content Content being processed. * @param string $render_slug Slug of module that is used for rendering output. * * @return string */ public function render( $attrs, $content, $render_slug ) { $multi_view = et_pb_multi_view_options( $this ); $button_custom = $this->props['custom_button']; $show_avatar = $this->props['show_avatar']; $show_reply = $this->props['show_reply']; $show_count = $this->props['show_count']; $show_meta = $this->props['show_meta']; $show_rating = et_()->array_get( $this->props, 'show_rating', '' ); $header_level = $this->props['header_level']; $video_background = $this->video_background(); $parallax_image_background = $this->get_parallax_image_background(); $custom_icon_values = et_pb_responsive_options()->get_property_values( $this->props, 'button_icon' ); $custom_icon = isset( $custom_icon_values['desktop'] ) ? $custom_icon_values['desktop'] : ''; $custom_icon_tablet = isset( $custom_icon_values['tablet'] ) ? $custom_icon_values['tablet'] : ''; $custom_icon_phone = isset( $custom_icon_values['phone'] ) ? $custom_icon_values['phone'] : ''; $this->et_pb_unique_comments_module_class = ET_Builder_Element::get_module_order_class( $render_slug ); // use this variable to make the comments request unique for each module instance // Action & filter hooks before comment content rendering $this->before_comments_content(); // Comment content rendering $comments_content = $this->get_comments_content(); // Action & filter hooks after comment content rendering $this->after_comments_content(); // Image - CSS Filters. if ( et_()->array_get( $this->advanced_fields, 'image.css', false ) ) { $this->add_classname( $this->generate_css_filters( $this->slug, 'child_', et_()->array_get( $this->advanced_fields['image']['css'], 'main', '%%order_class%%' ) ) ); } $comments_custom_icon = 'on' === $button_custom ? $custom_icon : ''; $comments_custom_icon_tablet = 'on' === $button_custom ? $custom_icon_tablet : ''; $comments_custom_icon_phone = 'on' === $button_custom ? $custom_icon_phone : ''; // Background layout data attributes. $data_background_layout = et_pb_background_layout_options()->get_background_layout_attrs( $this->props ); // Module classname $this->add_classname( array( 'et_pb_comments_module', $this->get_text_orientation_classname(), ) ); // Background layout class names. $background_layout_class_names = et_pb_background_layout_options()->get_background_layout_class( $this->props ); $this->add_classname( $background_layout_class_names ); if ( 'off' === $show_avatar ) { $this->add_classname( 'et_pb_no_avatar' ); } if ( 'off' === $show_reply ) { $this->add_classname( 'et_pb_no_reply_button' ); } if ( 'off' === $show_count ) { $this->add_classname( 'et_pb_no_comments_count' ); } if ( 'off' === $show_meta ) { $this->add_classname( 'et_pb_no_comments_meta' ); } if ( 'off' === $show_rating ) { $this->add_classname( 'et_pb_no_comments_rating' ); } // Removed automatically added classname $this->remove_classname( $render_slug ); $multi_view_data_attr = $multi_view->render_attrs( array( 'classes' => array( 'et_pb_no_avatar' => array( 'show_avatar' => 'off', ), 'et_pb_no_reply_button' => array( 'show_reply' => 'off', ), 'et_pb_no_comments_count' => array( 'show_count' => 'off', ), 'et_pb_no_comments_meta' => array( 'show_meta' => 'off', ), /* WooCommerce Reviews Module uses the following class. */ 'et_pb_no_comments_rating' => array( 'show_rating' => 'off', ), ), ) ); $output = sprintf( '<div%3$s class="%2$s"%4$s%7$s%8$s%9$s%10$s> %5$s %11$s %12$s %6$s %1$s </div>', $comments_content, $this->module_classname( $render_slug ), $this->module_id(), '' !== $comments_custom_icon ? sprintf( ' data-icon="%1$s"', esc_attr( et_pb_process_font_icon( $comments_custom_icon ) ) ) : '', $video_background, // #5 $parallax_image_background, et_core_esc_previously( $data_background_layout ), '' !== $comments_custom_icon_tablet ? sprintf( ' data-icon-tablet="%1$s"', esc_attr( et_pb_process_font_icon( $comments_custom_icon_tablet ) ) ) : '', '' !== $comments_custom_icon_phone ? sprintf( ' data-icon-phone="%1$s"', esc_attr( et_pb_process_font_icon( $comments_custom_icon_phone ) ) ) : '', $multi_view_data_attr, // #10 et_core_esc_previously( $this->background_pattern() ), // #11 et_core_esc_previously( $this->background_mask() ) // #12 ); return $output; } } if ( et_builder_should_load_all_module_data() ) { new ET_Builder_Module_Comments(); } if ( et_is_woocommerce_plugin_active() && defined( 'ET_BUILDER_DIR' ) ) { // Use separate files for better organization. require_once ET_BUILDER_DIR . 'module/woocommerce/Reviews.php'; }
Save
cmd:
run