version 4.13.0
This commit is contained in:
404.phpCREDITS.mdLICENSE.mdREADME.mdchangelog.txtcomments.php
core
_et_core_version.php_metadata.php
admin
css
fonts
builder.eotbuilder.svgbuilder.ttfbuilder.woff
fontawesome
fa-brands-400.eotfa-brands-400.svgfa-brands-400.ttffa-brands-400.wofffa-brands-400.woff2fa-regular-400.eotfa-regular-400.svgfa-regular-400.ttffa-regular-400.wofffa-regular-400.woff2fa-solid-900.eotfa-solid-900.svgfa-solid-900.ttffa-solid-900.wofffa-solid-900.woff2
modules
images
ajax-loader.gif
epanel
colorpicker_overlay.pngcolorpicker_select.gifcustom_background.pngcustom_hex.pngcustom_hsb_b.pngcustom_hsb_h.pngcustom_hsb_s.pngcustom_indic.gifcustom_rgb_b.pngcustom_rgb_g.pngcustom_rgb_r.pngcustom_submit.pngpostinfo-author.gifpostinfo-categories.gifpostinfo-date.gifselect.pngselect2.png
loader.gifsvg
js
checkbox.jscolorpicker.jscommon.jscompatibility-warning.jscore.jses6-promise.auto.min.jseye.jsframe-helpers.jsfunctions-init.jspage-resource-fallback.min.jspopper.min.jsportability.jsreact-dom.production.min.jsreact.production.min.jsrecaptcha.jssupport-center.jstippy.min.jsversion-rollback.jswp-color-picker-alpha.min.js
components
Cache.phpCompatibilityWarning.phpHTTPInterface.phpLogger.phpPageResource.phpPortability.phpREADME.mdSupportCenter.phpSupportCenterMUAutoloader.phpUpdates.phpVersionRollback.php
functions.phpinit.phpapi
ElegantThemes.phpOAuthHelper.phpREADME.mdService.php
email
ActiveCampaign.phpAweber.phpCampaignMonitor.phpConstantContact.phpConvertKit.phpEmma.phpFeedblitz.phpFields.phpFluentCRM.phpGetResponse.phpHubSpot.phpInfusionsoft.phpMadMimi.phpMailChimp.phpMailPoet.phpMailerLite.phpMailster.phpOntraport.phpProvider.phpProviders.phpSalesForce.phpSendinBlue.php_MailPoet2.php_MailPoet3.php_ProviderName.phpiContact.phpinit.php
init.phpsocial
spam
cache
data
init.phplib
mu-plugins
post
json-data
php_functions.phpupdates_init.phpwp_functions.phpcss
dynamic-assets
back_to_top.cssboxed_layout.csscentered_header.csscolor_scheme_green.csscolor_scheme_orange.csscolor_scheme_pink.csscolor_scheme_red.csscomments.cssfooter.cssfullscreen_header.cssgutters1_footer.cssgutters2_footer.cssgutters3_footer.cssgutters4_footer.cssheader.csspagebuilder_posts.cssproject.cssrtl.csssecondary_nav.cssside_nav.csssidebar.cssslide_in_menu.csssocial_icons.csssplit_header.csstransparent_nav.cssvertical_nav.csswidget_about.csswidget_calendar.csswidget_search.csswidget_tag_cloud.csswoocommerce.csswp-page_navi.css
editor-blocks.csseditor-style.csstheme-customizer-controls.csstheme-customizer-styles.csstinymce-skin
epanel
core_functions.php
css
custom_functions.phpgoogle-fonts
images
active-mainlink-bg.pngad-icon.pngajax-loader.gifblank.gifbox-title-mark.pngcheckbox-2.gifcheckbox.gifcolorization-icon.pngcolorpicker_overlay.pngcolorpicker_select.gifcustom_background.pngcustom_hex.pngcustom_hsb_b.pngcustom_hsb_h.pngcustom_hsb_s.pngcustom_indic.gifcustom_rgb_b.pngcustom_rgb_g.pngcustom_rgb_r.pngcustom_submit.pngdefaults-hover.pngdefaults.pngdescription-bottom.pngdescription-close.pngdescription-main.pngdescription-top.pngempty.pngepanel-bg.pngepanel-bottom-bg.pngepanel-content-bg.pngepanel-content-bottombg.pngepanel-content-topbg.pnggallery-overlay.pnggeneral-icon.pnghelp-image.pngintegration-icon.pnglayout-icon.pnglogo.giflogo.pngmainlink-bg.pngmainmenu-li-bottom.pngnavigation-icon.pngno.gifpanel-top-bg.pngpostinfo-author.gifpostinfo-categories.gifpostinfo-comments.gifpostinfo-date.gifsave.pngsecondary-active-bg.pngsecondary-bg.pngsecondary-li-mark.pngselect.pngselect2.pngseo-icon.pngslider.pngsupport-icon.pngtop-input-bg.pngyes.gif
js
checkbox.jscolorpicker.jscustom_uploader.jseye.jsfunctions-init.jslayout.jswp-color-picker-alpha.min.js
shortcodes
et-pagebuilder
footer.phpfunctions.phpheader.phpimages
includes
block-editor-integration.php
index.phpbuilder
_et_builder_version.phpab-testing.php
api
autoload.phpclass-et-builder-dynamic-assets-feature.phpclass-et-builder-element.phpclass-et-builder-global-feature-base.phpclass-et-builder-google-fonts-feature.phpclass-et-builder-module-features.phpclass-et-builder-module-shortcode-manager.phpclass-et-builder-module-use-detection.phpclass-et-builder-plugin-compat-base.phpclass-et-builder-plugin-compat-loader.phpclass-et-builder-post-feature-base.phpclass-et-builder-settings.phpclass-et-builder-theme-compat-base.phpclass-et-builder-theme-compat-handler.phpclass-et-builder-value.phpclass-et-global-settings.phpcomments_template.phpcompat
conditions.phpcore.phpdeprecations.phpfeature
AjaxCache.phpBlockEditorIntegration.phpBlockTemplates.phpClassicEditor.phpCriticalCSS.phpDoNotCachePage.phpErrorReport.phpI18n.phpJQueryBody.phpLibrary.phpclass-dynamic-assets.phpdynamic-assets.phpdynamic-content.php
framework.phpajax-data
content-retriever
display-conditions
dynamic-assets
assets
css
accordion.cssaccordion_cpt.cssanimations.cssanimations_cpt.cssaudio.cssaudio_cpt.cssaudio_player-rtl.cssaudio_player.cssaudio_player_cpt-rtl.cssaudio_player_cpt.cssblog-rtl.cssblog.cssblog_cpt-rtl.cssblog_cpt.cssblurb.cssblurb_cpt.cssbutton.cssbutton_cpt.cssbuttons.cssbuttons_cpt.csscircle_counter.csscircle_counter_cpt.csscode.csscode_cpt.csscomments.csscomments_cpt.csscomments_shared.csscomments_shared_cpt.csscontact_form-rtl.csscontact_form.csscontact_form_cpt-rtl.csscontact_form_cpt.csscountdown_timer.csscountdown_timer_cpt.csscounter.csscounter_cpt.csscta.csscta_cpt.cssdivider.cssdivider_cpt.cssfields.cssfields_cpt.cssfilterable_portfolio.cssfilterable_portfolio_cpt.cssforms.cssforms_cpt.cssforms_specialty.cssforms_specialty_cpt.cssfullwidth_code.cssfullwidth_code_cpt.cssfullwidth_header.cssfullwidth_header_cpt.cssfullwidth_image.cssfullwidth_image_cpt.cssfullwidth_map.cssfullwidth_map_cpt.cssfullwidth_menu.cssfullwidth_menu_cpt.cssfullwidth_portfolio.cssfullwidth_portfolio_cpt.cssfullwidth_post_slider.cssfullwidth_post_slider_cpt.cssfullwidth_post_title.cssfullwidth_post_title_cpt.cssfullwidth_slider.cssfullwidth_slider_cpt.cssgallery.cssgallery_cpt.cssgrid_items.cssgrid_items_cpt.cssgutters1-rtl.cssgutters1.cssgutters1_cpt-rtl.cssgutters1_cpt.cssgutters1_grid_items.cssgutters1_grid_items_cpt.cssgutters1_specialty-rtl.cssgutters1_specialty.cssgutters1_specialty_cpt-rtl.cssgutters1_specialty_cpt.cssgutters1_specialty_grid_items.cssgutters1_specialty_grid_items_cpt.cssgutters2-rtl.cssgutters2.cssgutters2_cpt-rtl.cssgutters2_cpt.cssgutters2_grid_items.cssgutters2_grid_items_cpt.cssgutters2_specialty-rtl.cssgutters2_specialty.cssgutters2_specialty_cpt-rtl.cssgutters2_specialty_cpt.cssgutters2_specialty_grid_items.cssgutters2_specialty_grid_items_cpt.cssgutters3-rtl.cssgutters3.cssgutters3_cpt-rtl.cssgutters3_cpt.cssgutters3_grid_items.cssgutters3_grid_items_cpt.cssgutters3_specialty-rtl.cssgutters3_specialty.cssgutters3_specialty_cpt-rtl.cssgutters3_specialty_cpt.cssgutters3_specialty_grid_items.cssgutters3_specialty_grid_items_cpt.cssgutters4-rtl.cssgutters4.cssgutters4_cpt-rtl.cssgutters4_cpt.cssgutters4_grid_items.cssgutters4_grid_items_cpt.cssgutters4_specialty-rtl.cssgutters4_specialty.cssgutters4_specialty_cpt-rtl.cssgutters4_specialty_cpt.cssgutters4_specialty_grid_items.cssgutters4_specialty_grid_items_cpt.cssheader_animations.cssheader_animations_cpt.cssheader_shared.cssheader_shared_cpt.cssicon.cssicon_cpt.cssicons_all.cssicons_base.cssicons_base_social.cssicons_fa_all.cssimage.cssimage_cpt.csslegacy_animations.csslegacy_animations_cpt.csslogin.csslogin_cpt.cssmagnific_popup.cssmagnific_popup_cpt.cssmap.cssmap_cpt.cssmenu.cssmenu_cpt.cssmenus.cssmenus_cpt.cssnumber_counter.cssnumber_counter_cpt.cssoverlay.cssoverlay_cpt.cssportfolio.cssportfolio_cpt.csspost_formats.csspost_formats_cpt.csspost_nav.csspost_nav_cpt.csspost_slider.csspost_slider_cpt.csspost_title.csspost_title_cpt.cssposts.cssposts_cpt.csspricing_tables.csspricing_tables_cpt.cssrow.cssrow_cpt.csssearch.csssearch_cpt.csssection.csssection_cpt.cssshared-conditional-style-rtl.cssshared-conditional-style_cpt-rtl.cssshop.cssshop_cpt.csssidebar.csssidebar_cpt.csssignup-rtl.csssignup.csssignup_cpt-rtl.csssignup_cpt.cssslider.cssslider_base.cssslider_base_cpt.cssslider_controls.cssslider_controls_cpt.cssslider_cpt.cssslider_modules.cssslider_modules_cpt.csssocial_media_follow.csssocial_media_follow_cpt.csssticky_elements.csssticky_elements_cpt.csstabs.csstabs_cpt.cssteam_member.cssteam_member_cpt.csstestimonial.csstestimonial_cpt.csstext.csstext_cpt.csstoggle.csstoggle_cpt.cssvideo.cssvideo_cpt.cssvideo_player.cssvideo_player_cpt.cssvideo_slider.cssvideo_slider_cpt.csswidgets_shared.csswidgets_shared_cpt.csswoo_add_to_cart.csswoo_add_to_cart_cpt.csswoo_additional_info.csswoo_additional_info_cpt.csswoo_breadcrumb.csswoo_breadcrumb_cpt.csswoo_cart_notice.csswoo_cart_notice_cpt.csswoo_cart_products.csswoo_cart_products_cpt.csswoo_cart_totals.csswoo_cart_totals_cpt.csswoo_checkout_billing.csswoo_checkout_billing_cpt.csswoo_checkout_details.csswoo_checkout_details_cpt.csswoo_checkout_info.csswoo_checkout_info_cpt.csswoo_checkout_payment.csswoo_checkout_payment_cpt.csswoo_checkout_shipping.csswoo_checkout_shipping_cpt.csswoo_description.csswoo_description_cpt.csswoo_images.csswoo_images_cpt.csswoo_meta.csswoo_meta_cpt.csswoo_price.csswoo_price_cpt.csswoo_rating.csswoo_rating_cpt.csswoo_related_products_upsells.csswoo_related_products_upsells_cpt.csswoo_reviews.csswoo_reviews_cpt.csswoo_stock.csswoo_stock_cpt.csswoo_tabs.csswoo_tabs_cpt.csswoo_title.csswoo_title_cpt.csswoocommerce.csswoocommerce_cpt.csswoocommerce_shared.csswoocommerce_shared_cpt.csswp_gallery.csswp_gallery_cpt.css
js
global-presets
gutenberg
icon-manager
post-content.phpsearch-posts.phpwindow.phpwoocommerce-modules.phpfrontend-builder
LICENSE.mdassets.phpbfb-template.php
functions.phpassets
backports
css
img
scripts
vendors
LICENSE.md
langs
plugins
advlist
anchor
autolink
autoresize
autosave
bbcode
charmap
code
codesample
colorpicker
contextmenu
directionality
emoticons
img
smiley-cool.gifsmiley-cry.gifsmiley-embarassed.gifsmiley-foot-in-mouth.gifsmiley-frown.gifsmiley-innocent.gifsmiley-kiss.gifsmiley-laughing.gifsmiley-money-mouth.gifsmiley-sealed.gifsmiley-smile.gifsmiley-surprised.gifsmiley-tongue-out.gifsmiley-undecided.gifsmiley-wink.gifsmiley-yell.gif
plugin.min.jsfullpage
fullscreen
help
hr
image
imagetools
importcss
insertdatetime
legacyoutput
link
lists
media
nonbreaking
noneditable
pagebreak
paste
preview
print
save
searchreplace
spellchecker
tabfocus
table
template
textcolor
textpattern
toc
visualblocks
visualchars
wordcount
wpview
skins
lightgray
themes
tinymce-skin
content.inline.min.csscontent.min.css
tinymce.min.jsfonts
readme.mdtinymce-small.eottinymce-small.svgtinymce-small.ttftinymce-small.wofftinymce.eottinymce.svgtinymce.ttftinymce.woff
img
skin.ie7.min.cssskin.min.cssbuild
boot.jsbundle.cssbundle.devtools.470e23cc.jsbundle.jsbundle.js.LICENSE.txtbundle.modals.38d79104.cssbundle.modals.38d79104.jsbundle.modals.38d79104.js.LICENSE.txtdelayed-update.worker.worker.jsframe-helpers.jsfrontend-builder-preview.jsfrontend-builder-scripts.js.LICENSE.txtgutenberg.cssgutenberg.jsgutenberg.js.LICENSE.txtpreboot.jspreboot.js.LICENSE.txttheme-builder.csstheme-builder.jstheme-builder.js.LICENSE.txt
helpers.phpi18n.phpi18n
display-conditions.phpgeneric.phplibrary.php
init.phprtl.phplibrary
portability.phpquick-actions.phptheme-builder.phptheme-builder
ThemeBuilderApiErrors.phpThemeBuilderRequest.phpWoocommerceProductVariablePlaceholder.phpWoocommerceProductVariablePlaceholderDataStoreCPT.phpWoocommerceProductVariationPlaceholder.phpadmin.phpapi.phpdynamic-content.phpfrontend-body-template.phpfrontend-footer-template.phpfrontend-header-template.phpfrontend.phptemplate-setting-validations.phptheme-builder.phpwoocommerce.phpwpml.php
view.phpimages
animated-overlay.gifclone.gifclone.pngcursor-select-goal.curcursor-select-goal.pngcursor-select-subject.curcursor-select-subject.pngcursor-select-winner.curcursor-select-winner.pngexisting.gifexisting.pngjquery.minicolors.pnglibrary-global.svglibrary-layout.svgmarker.pngmenu.svgno-color.pngpremade.gifpremade.pngright-click-options-carrot.pngscratch.gifscratch.pngstats-no-data.svgstats.svgui-bg_flat_0_aaaaaa_40x100.pngui-bg_flat_55_fbec88_40x100.pngui-bg_glass_75_d0e5f5_1x400.pngui-bg_glass_85_dfeffc_1x400.pngui-bg_glass_95_fef1ec_1x400.pngui-bg_gloss-wave_55_2e86b9_500x100.pngui-bg_inset-hard_100_f5f8f9_1x100.pngui-bg_inset-hard_100_fcfdfd_1x100.pngui-icons_2e83ff_256x240.pngui-icons_2e86b9_256x240.pngui-icons_6da8d5_256x240.pngui-icons_cd0a0a_256x240.pngui-icons_d8e7f3_256x240.pngui-icons_f9bd01_256x240.png
languages
ar.mobg_BG.mocs_CZ.moda_DK.mode_DE.moel.moen_US.moes_ES.moet_builder-ar-et-builder-gutenberg.jsonet_builder-bg_BG-et-builder-gutenberg.jsonet_builder-cs_CZ-et-builder-gutenberg.jsonet_builder-da_DK-et-builder-gutenberg.jsonet_builder-de_DE-et-builder-gutenberg.jsonet_builder-el-et-builder-gutenberg.jsonet_builder-en_US-et-builder-gutenberg.jsonet_builder-es_ES-et-builder-gutenberg.jsonet_builder-fi-et-builder-gutenberg.jsonet_builder-fr_FR-et-builder-gutenberg.jsonet_builder-he_IL-et-builder-gutenberg.jsonet_builder-hu_HU-et-builder-gutenberg.jsonet_builder-id_ID-et-builder-gutenberg.jsonet_builder-it_IT-et-builder-gutenberg.jsonet_builder-ja-et-builder-gutenberg.jsonet_builder-ko_KR-et-builder-gutenberg.jsonet_builder-ms_MY-et-builder-gutenberg.jsonet_builder-nb_NO-et-builder-gutenberg.jsonet_builder-nl_NL-et-builder-gutenberg.jsonet_builder-pl_PL-et-builder-gutenberg.jsonet_builder-pt_BR-et-builder-gutenberg.jsonet_builder-ro_RO-et-builder-gutenberg.jsonet_builder-ru_RU-et-builder-gutenberg.jsonet_builder-sk_SK-et-builder-gutenberg.jsonet_builder-sr_RS-et-builder-gutenberg.jsonet_builder-sv_SE-et-builder-gutenberg.jsonet_builder-th-et-builder-gutenberg.jsonet_builder-tl-et-builder-gutenberg.jsonet_builder-tr_TR-et-builder-gutenberg.jsonet_builder-uk-et-builder-gutenberg.jsonet_builder-vi-et-builder-gutenberg.jsonet_builder-zh_CN-et-builder-gutenberg.jsonfi.mofr_FR.mohe_IL.mohu_HU.moid_ID.moit_IT.moja.moko_KR.moms_MY.monb_NO.monl_NL.mopl_PL.mopt_BR.moro_RO.moru_RU.mosk_SK.mosr_RS.mosv_SE.moth.motl.motr_TR.mouk.movi.mozh_CN.mo
main-structure-elements.phpmodule
Accordion.phpAccordionItem.phpAudio.phpBarCounters.phpBarCountersItem.phpBlog.phpBlurb.phpButton.phpCircleCounter.phpCode.phpComments.phpContactForm.phpContactFormItem.phpCountdownTimer.phpCta.phpDivider.phpFilterablePortfolio.phpFullwidthCode.phpFullwidthHeader.phpFullwidthImage.phpFullwidthMap.phpFullwidthMenu.phpFullwidthPortfolio.phpFullwidthPostContent.phpFullwidthPostSlider.phpFullwidthPostTitle.phpFullwidthSlider.phpGallery.phpIcon.phpImage.phpLogin.phpMap.phpMapItem.phpMenu.phpNumberCounter.phpPortfolio.phpPostContent.phpPostSlider.phpPostTitle.phpPostsNavigation.phpPricingTables.phpPricingTablesItem.phpSearch.phpShop.phpSidebar.phpSignup.phpSignupItem.phpSlider.phpSliderItem.phpSocialMediaFollow.phpSocialMediaFollowItem.phpTabs.phpTabsItem.phpTeamMember.phpTestimonial.phpText.phpToggle.phpVideo.phpVideoSlider.phpVideoSliderItem.php
field
Base.phpBorder.phpBoxShadow.phpDisplayConditions.phpDivider.phpFactory.phpHeight.phpMarginPadding.phpMaxWidth.phpOverflow.phpPosition.phpScroll.phpSticky.phpTextShadow.phpTransform.php
attribute
composite
display-conditions
Author.phpBrowser.phpCartContents.phpCategories.phpCategoryPage.phpCookie.phpDateArchive.phpDateTime.phpDynamicPosts.phpLoggedInStatus.phpNumberOfViews.phpOperatingSystem.phpPageVisit.phpPostType.phpProductPurchase.phpSearchResults.phpTagPage.phpTags.phpUserRole.php
template
helpers
Alignment.phpBackground.phpBackgroundLayout.phpFont.phpHeight.phpHoverOptions.phpMaxHeight.phpMaxWidth.phpMedia.phpMinHeight.phpMultiValue.phpMultiViewOptions.phpOptionTemplate.phpOverflow.phpOverlay.phpResponsiveOptions.phpSizing.phpSlider.phpStickyOptions.phpStyleProcessor.phpTransitionOptions.phpWidth.phpWoocommerceModules.php
motion
settings
Migration.php
migration
Animation.phpBackgroundUI.phpBorderOptions.phpColumnOptions.phpContactFormItemOptionsSerialization.phpDiscontinueHtmlEncoding.phpDividerHeight.phpDropShadowToBoxShadow.phpEmailOptinContent.phpFilterOptions.phpFullwidthHeader.phpFullwidthHeader2.phpHoverOptions.phpIconManager.phpInnerShadowToBoxShadow.phpOptionsHarmony.phpOptionsHarmony2.phpRowCustomWidthToSizing.phpRowZeroGutter.phpShopModuleSlugs.phpShopOrderByDefault.phpTeamMemberIconHover.phpTextAlignment.phpUIImprovements.php
type
woocommerce
plugin-compat
advanced-custom-fields-pro.phpadvanced-custom-fields.phpamazon-s3-and-cloudfront-pro.phpamazon-s3-and-cloudfront.phpautoptimize.phpcaldera-forms.phpcartflows.phpcdn-enabler.phpcoursepress.phpdivi-filterable-blog-module.phpdivi-module-code-snippet.phpdivi-testimonial-slider.phpdivi_layout_injector.phpdivi_woo_layout_injector.phpdk-pdf.phpds-divi-rocket.phpeasy-digital-downloads.phpeventon.phpevents-manager.phpfinal-tiles-grid-gallery-lite.phpgravityforms.phpgravityformssignature.phpht-knowledge-base.phpimagify.phpinsert-pages.phpjucra-acf-google-maps-for-divi.phpkvcore-idx.phplanding-pages.phpm-chart.phpmappress-google-maps-for-wordpress.phpmegamenu.phpmodern-events-calendar-lite.phpnex-forms-express-wp-form-builder.phppaid-memberships-pro.phpphoto-gallery.phppilotpress.phppopup-maker.phprelevanssi-premium.phprelevanssi.php
scripts
seo-by-rank-math.phpsfwd-lms.phpsg-cachepress.phpsiteorigin-panels.phpsitepress-multilingual-cms.phptable-of-contents-plus.phpthe-events-calendar-community-events.phpthe-events-calendar.phptoolbar-publish-button.phpwoo-paypalplus.phpwoocommerce.phpwordpress-mu-domain-mapping.phpwordpress-seo.phpwp-job-manager.phpwp-responsive-table.phpwp-smush-pro.phpwp-smushit.phpwp-views.phpwp3d-models.phpwpml-sticky-links.phppost
scripts
bfb_admin_script.jsblock-layout-frontend-preview.jsbuilder.jscache_notice.jscpt-modules-wrapper.js
ext
chart.min.jsjquery-ui-1.10.4.custom.min.jsjquery-ui-1.11.4.custom.min.jsjquery-ui-timepicker-addon.jsjquery.minicolors.jsjquery.tablesorter.min.jsjquery.validate.jsjquery.visible.min.jslz-string.min.jsmedia-library.jswaypoints.min.jswidgets.jswp-color-picker-alpha-48.jswp-color-picker-alpha-48.min.jswp-color-picker-alpha.jswp-color-picker-alpha.min.js
failure_notice.jslibrary_category.jslibrary_scripts.jspage-settings-metabox.jsreset_memory_limit_increase_setting.jsroles_admin.jsstores
utils
styles
advanced_options.cssbb_bfb_common.css
template-preview.phpimages
preloader.gifsubscribe-loader.gifui-icons_444444_256x240.pngui-icons_555555_256x240.pngui-icons_777620_256x240.pngui-icons_777777_256x240.pngui-icons_cc0000_256x240.pngui-icons_ffffff_256x240.png
jquery-ui-1.12.1.custom.csslibrary_menu.csslibrary_pages.cssmagnific_popup.cssnotification_popup_styles.csspreview-layout-block.csspreview.cssroles_style.cssstyle.csswidgets.csstemplates
tests
codeception
wpunit
theme-compat
functions
module-customizer
navigation.phpno-results.phpsocial_icons.phptheme-builder.phpwidgets.phpwidgets
js
admin_post_settings.jscustom.unified.js.LICENSE.txtmenu_fix.jsscripts.min.jsscripts.min.js.LICENSE.txtsmoothscroll.jssmoothscroll.js.LICENSE.txttheme-customizer-controls.jstheme-customizer.js
lang
ar.mobg_BG.mocs_CZ.moda_DK.mode_DE.moel.moen_US.moes_ES.mofi.mofr_FR.mohe_IL.mohu_HU.moid_ID.moit_IT.moja.moko_KR.moms_MY.monb_NO.monl_NL.mopl_PL.mopt_BR.moro_RO.moru_RU.mosk_SK.mosr_RS.mosv_SE.moth.motl.motr_TR.mouk.movi.mozh_CN.mo
options_divi.phppage-template-blank.phppage.phppost_thumbnails_divi.phppsd
screenshot.jpgsidebar-footer.phpsidebar.phpsingle-et_pb_layout.phpsingle-project.phpsingle.phpstyle-cpt-rtl.min.cssstyle-cpt.min.cssstyle-rtl.min.cssstyle-static-cpt-rtl.min.cssstyle-static-cpt.min.cssstyle-static-rtl.min.cssstyle-static.min.cssstyle.cssstyle.min.csstheme-after-footer.phptheme-after-header.phptheme-after-wrappers.phptheme-before-wrappers.phptheme-footer.phptheme-header.phpwpml-config.xml
207
includes/builder/class-et-builder-module-use-detection.php
Normal file
207
includes/builder/class-et-builder-module-use-detection.php
Normal file
@ -0,0 +1,207 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Use Detection class.
|
||||
*
|
||||
* @package Divi
|
||||
* @subpackage Builder
|
||||
* @since 4.10.0
|
||||
*/
|
||||
|
||||
/**
|
||||
* Handles Module Use Detection.
|
||||
*
|
||||
* @since 4.10.0
|
||||
*/
|
||||
class ET_Builder_Module_Use_Detection {
|
||||
|
||||
/**
|
||||
* Module Slugs Used.
|
||||
*
|
||||
* @access protected
|
||||
* @var array
|
||||
*/
|
||||
protected $_modules_used = [];
|
||||
|
||||
/**
|
||||
* Module Attrs Used.
|
||||
*
|
||||
* @access protected
|
||||
* @var array
|
||||
*/
|
||||
protected $_module_attrs_used = [];
|
||||
|
||||
/**
|
||||
* Module Attr Values Used.
|
||||
*
|
||||
* @access protected
|
||||
* @var array
|
||||
*/
|
||||
protected $_module_attr_values_used = [];
|
||||
|
||||
/**
|
||||
* Valid Shortcode Slugs.
|
||||
*
|
||||
* @access protected
|
||||
* @var array
|
||||
*/
|
||||
protected $_valid_slugs = [];
|
||||
|
||||
/**
|
||||
* `ET_Builder_Module_Use_Detection` instance.
|
||||
*
|
||||
* @var ET_Builder_Module_Use_Detection
|
||||
*/
|
||||
private static $_instance;
|
||||
|
||||
/**
|
||||
* Construct instance.
|
||||
*/
|
||||
public function __construct() {
|
||||
add_filter( 'pre_do_shortcode_tag', [ $this, 'log_slug_used' ], 99, 3 );
|
||||
add_action( 'wp_footer', [ $this, 'footer' ], 1000 );
|
||||
|
||||
add_action( 'et_builder_ready', array( $this, '_setup_valid_slugs' ), 100 );
|
||||
}
|
||||
|
||||
/**
|
||||
* Get instance.
|
||||
*/
|
||||
public static function instance() {
|
||||
if ( ! self::$_instance ) {
|
||||
self::$_instance = new static();
|
||||
}
|
||||
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get valid slugs.
|
||||
*/
|
||||
public function _setup_valid_slugs() {
|
||||
$this->_valid_slugs = ET_Builder_Element::get_all_module_slugs();
|
||||
}
|
||||
|
||||
/**
|
||||
* Log the Shortcode Tag/Slug.
|
||||
*
|
||||
* @since 4.10.0
|
||||
* @access public
|
||||
* @param mixed $override Whether to override do_shortcode return value or not.
|
||||
* @param string $tag Shortcode tag.
|
||||
* @param array $attrs Shortcode attrs.
|
||||
* @return mixed
|
||||
*/
|
||||
public function log_slug_used( $override, $tag, $attrs ) {
|
||||
$interested_attrs_and_values = apply_filters(
|
||||
'et_builder_module_attrs_values_used',
|
||||
[
|
||||
'gutter_width',
|
||||
'animation_style',
|
||||
'sticky_position',
|
||||
'specialty',
|
||||
'use_custom_gutter',
|
||||
'font_icon',
|
||||
'button_icon',
|
||||
'hover_icon',
|
||||
'scroll_down_icon',
|
||||
'social_network',
|
||||
'show_in_lightbox',
|
||||
'fullwidth',
|
||||
'scroll_vertical_motion_enable',
|
||||
'scroll_horizontal_motion_enable',
|
||||
'scroll_fade_enable',
|
||||
'scroll_scaling_enable',
|
||||
'scroll_rotating_enable',
|
||||
'scroll_blur_enable',
|
||||
'show_content',
|
||||
]
|
||||
);
|
||||
|
||||
/**
|
||||
* The "gallery" shortcode is not part of the Divi modules but is used for enqueuing MagnificPopup
|
||||
* when Divi Gallery is enabled under Theme Options > Enable Divi Gallery, so we need to include
|
||||
* it in late detection for edge cases such as shortcodes hardcoded into child themes.
|
||||
*/
|
||||
$additional_valid_slugs = apply_filters(
|
||||
'et_builder_valid_module_slugs',
|
||||
[
|
||||
'gallery',
|
||||
]
|
||||
);
|
||||
|
||||
$valid_slugs = array_unique( array_merge( $this->_valid_slugs, $additional_valid_slugs ) );
|
||||
|
||||
// Log the shortcode tags used.
|
||||
if ( in_array( $tag, $valid_slugs, true ) ) {
|
||||
$this->_modules_used[] = $tag;
|
||||
$this->_modules_used = array_unique( $this->_modules_used );
|
||||
|
||||
if ( ! is_null( $attrs ) && ! is_array( $attrs ) ) {
|
||||
$attrs = (array) $attrs;
|
||||
}
|
||||
|
||||
$found_interested_attr_and_values = array_intersect( array_keys( $attrs ), $interested_attrs_and_values );
|
||||
foreach ( $found_interested_attr_and_values as $key => $attr_name ) {
|
||||
if ( empty( $this->_module_attr_values_used[ $attr_name ] ) ) {
|
||||
$this->_module_attr_values_used[ $attr_name ] = [];
|
||||
}
|
||||
|
||||
$this->_module_attr_values_used[ $attr_name ][] = $attrs[ $attr_name ];
|
||||
$this->_module_attr_values_used[ $attr_name ] = array_unique( $this->_module_attr_values_used[ $attr_name ] );
|
||||
}
|
||||
}
|
||||
|
||||
return $override;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add footer actions.
|
||||
*/
|
||||
public function footer() {
|
||||
/**
|
||||
* Fires after wp_footer hook and contains unique array of
|
||||
* slugs of the modules that were used on the page load.
|
||||
*
|
||||
* @param array $_used_modules Module slugs used on the page load.
|
||||
*
|
||||
* @since 4.10.0
|
||||
*/
|
||||
do_action( 'et_builder_modules_used', $this->_modules_used );
|
||||
}
|
||||
|
||||
/**
|
||||
* Get modules used.
|
||||
*
|
||||
* @return array List of module slugs used.
|
||||
* @since 4.10.0
|
||||
* @access public
|
||||
*/
|
||||
public function get_modules_used() {
|
||||
return $this->_modules_used;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get module attrs used.
|
||||
*
|
||||
* @return array List of interested module attrs used.
|
||||
* @since 4.10.0
|
||||
* @access public
|
||||
*/
|
||||
public function get_module_attrs_used() {
|
||||
return $this->_module_attrs_used;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get module attr values used.
|
||||
*
|
||||
* @return array List of interested module attrs and values used.
|
||||
* @since 4.10.0
|
||||
* @access public
|
||||
*/
|
||||
public function get_module_attr_values_used() {
|
||||
return $this->_module_attr_values_used;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ET_Builder_Module_Use_Detection::instance();
|
Reference in New Issue
Block a user