PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 3.0.3
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v3.0.3
4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / Integrations / DiviServiceProvider.php
surecart / app / src / Integrations Last commit date
AffiliateWP 3 years ago Beaver 1 year ago Bricks 1 year ago BuddyBoss 3 years ago Contracts 3 years ago Elementor 1 year ago LearnDash 3 years ago LearnDashGroup 3 years ago LifterLMS 3 years ago MemberPress 3 years ago ThriveAutomator 2 years ago TutorLMS 1 year ago User 3 years ago AbstractIntegration.php 3 years ago DiviServiceProvider.php 1 year ago IntegrationService.php 2 years ago
DiviServiceProvider.php
69 lines
1 <?php
2 namespace SureCart\Integrations;
3
4 use SureCart\Migration\ProductPageWrapperService;
5 use SureCartCore\ServiceProviders\ServiceProviderInterface;
6
7 /**
8 * Divi Service Provider
9 */
10 class DiviServiceProvider implements ServiceProviderInterface {
11 /**
12 * {@inheritDoc}
13 *
14 * @param \Pimple\Container $container Service Container.
15 */
16 public function register( $container ) {
17 }
18
19 /**
20 * {@inheritDoc}
21 *
22 * @param \Pimple\Container $container Service Container.
23 */
24 public function bootstrap( $container ) {
25 add_filter( 'surecart/shortcode/render', [ $this, 'handleDiviShortcode' ], 10, 4 );
26 add_filter( 'et_builder_render_layout', [ $this,'handleProductPageWrapper' ], 12 );
27 }
28
29 /**
30 * If divi is active, only load the assets on the current request.
31 *
32 * @param string $content Content of Shortcode.
33 * @param string $atts Attributes of Shortcode.
34 * @param string $atts Shortcode Tag.
35 * @param string $form Form Object if present.
36 *
37 * @return string $content Content of Shortcode || The Shortcode itself.
38 */
39 public function handleDiviShortcode( $content, $atts, $name, $form = false ) {
40
41 if ( 'sc_form' !== $name || empty( $atts['id'] ) || empty( $_GET['et_pb_preview'] ) ) {
42 return $content;
43 }
44
45 return '[sc_form id="' . $atts['id'] . '"]';
46 }
47
48 /**
49 * Handle product page wrapper
50 *
51 * @param string $content The content.
52 *
53 * @return string
54 */
55 public function handleProductPageWrapper( $content ) {
56 $original_post = get_post();
57 global $post;
58 $post = get_queried_object(); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
59 setup_postdata( $post );
60
61 $output = ( new ProductPageWrapperService( $content ) )->wrap();
62
63 $post = $original_post; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
64 setup_postdata( $original_post );
65
66 return $output;
67 }
68 }
69