Advertisement
rAthus

[WordPress] sticky "Publish/Update" button on scroll in wp-admin edit pages

Mar 9th, 2022 (edited)
541
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.54 KB | None | 0 0
  1. <?php
  2.  
  3. // add this code in your child theme's functions.php file
  4.  
  5. /*******************************************************************\
  6. |* sticky "Publish/Update" button on scroll in wp-admin edit pages *|
  7. \*******************************************************************/
  8.  
  9. function sticky_admin_button_footer_function($data) {
  10.     ?>
  11.         <script>
  12.             if (typeof(jQuery)!='undefined') {
  13.                 jQuery(document).ready(function($) {
  14.                     if ($('#publishing-action').length) {
  15.                         var akn_patop = 0;
  16.                         $(window).on('scroll',function() {
  17.                             if (!$('#publishing-action').hasClass('akn-sticky'))
  18.                                 akn_patop = $('#publishing-action').offset().top-($('.woocommerce-layout__header-wrapper').height()||0)-($('#wpadminbar').height()||0)-30;
  19.                             if ($(window).scrollTop()>akn_patop) {
  20.                                 $('#publishing-action').addClass('akn-sticky').css({'position':'fixed','right':'30px','top':($('.woocommerce-layout__header-wrapper').height()||0)+$('#wpadminbar').height()+30,'z-index':'1000'}).find('#publish').css({'box-shadow':'0 0 20px rgb(85,93,102)'});
  21.                                 $('#delete-action').css({'margin-bottom':$('#publishing-action').height()+'px'});
  22.                             }
  23.                             else {
  24.                                 $('#publishing-action').removeClass('akn-sticky').css({'position':'','right':'','top':'','z-index':''}).find('#publish').css({'box-shadow':''});
  25.                                 $('#delete-action').css({'margin-bottom':''});
  26.                             }
  27.                         });
  28.                         $(window).trigger('scroll');
  29.                     }
  30.                 });
  31.             }
  32.         </script>
  33.     <?php
  34. }
  35. add_action('admin_footer', 'sticky_admin_button_footer_function');
  36.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement