Getbeans / Beans

Beans WordPress Theme Framework. The default branch is set to development, please switch to the master branch for production.
https://www.getbeans.io
Other
392 stars 61 forks source link

Fixed Beans Compiler path handling on some systems. #334

Open christophherr opened 6 years ago

christophherr commented 6 years ago

When the path of an asset starts with a /, e.g. /wp-includes/js/jquery/jquery.js, the get_internal_content() method of the Beans Compiler cannot resolve this to a valid path on Windows and some Ubuntu systems (there might be others).

This does not seem to be a regression in version 1.5. It doesn't work for me in version 1.4 on Windows.

This PR adds additional file_exists checks to get_internal_content(). The first one checks if the path starts with wp- and then adds a . to the beginning of the path and runs it through beans_sanitize_path(). The second one runs a still unresolved path through beans_path_to_url() and then beans_url_to_path() to catch edge cases not covered before, e.g. if the wp-content directory has been changed.

Please see #332 for the discussion on the approach.

Special thanks to @iCaspar 💯

closes #332