class-fl-builder-iframe-preview.php 838 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * Handles rendering layouts in an iframe preview.
  4. *
  5. * @since 2.0.6
  6. */
  7. final class FLBuilderIframePreview {
  8. /**
  9. * Initialize on plugins loaded.
  10. *
  11. * @since 2.0.6
  12. * @return void
  13. */
  14. static public function init() {
  15. add_action( 'plugins_loaded', __CLASS__ . '::hook' );
  16. }
  17. /**
  18. * Setup hooks.
  19. *
  20. * @since 2.1
  21. * @return void
  22. */
  23. static public function hook() {
  24. if ( ! FLBuilderModel::is_builder_draft_preview() ) {
  25. return;
  26. }
  27. add_filter( 'show_admin_bar', '__return_false' );
  28. add_filter( 'fl_builder_node_status', __CLASS__ . '::filter_node_status' );
  29. }
  30. /**
  31. * Forces draft node status for layout previews.
  32. *
  33. * @since 2.0.6
  34. * @param string $status
  35. * @return string
  36. */
  37. static public function filter_node_status( $status ) {
  38. return 'draft';
  39. }
  40. }
  41. FLBuilderIframePreview::init();