wp-compose-js.php
36 lines
| 1 | <?php |
| 2 | |
| 3 | function kubio_wp_compose_js_polyfill() { |
| 4 | ob_start(); |
| 5 | ?> |
| 6 | <script> |
| 7 | (function(compose){ |
| 8 | if(!compose.pipe){ |
| 9 | |
| 10 | const basePipe = |
| 11 | ( reverse ) => |
| 12 | ( ...funcs ) => |
| 13 | ( ...args ) => { |
| 14 | const functions = funcs.flat(); |
| 15 | if ( reverse ) { |
| 16 | functions.reverse(); |
| 17 | } |
| 18 | return functions.reduce( |
| 19 | ( prev, func ) => [ func( ...prev ) ], |
| 20 | args |
| 21 | )[ 0 ]; |
| 22 | }; |
| 23 | |
| 24 | compose.pipe = basePipe(); |
| 25 | } |
| 26 | })(wp.compose) |
| 27 | </script> |
| 28 | <?php |
| 29 | $content = wp_strip_all_tags( ob_get_clean() ); |
| 30 | |
| 31 | wp_add_inline_script( 'wp-compose', $content, 'after' ); |
| 32 | } |
| 33 | |
| 34 | add_filter( 'wp_enqueue_scripts', 'kubio_wp_compose_js_polyfill' ); |
| 35 | add_filter( 'admin_enqueue_scripts', 'kubio_wp_compose_js_polyfill' ); |
| 36 |