So exited about humming bird...but is it working?

Hey trying humming bird with this scenario:

1. Pro-site with Stripe gateway activated

pretty straight forward...problems.

1. Humming bird...don;t know why...is serving the js it created on http ...but my server uses https. Css it created is being server over https...just not the js...so wtf
2. I didn't see a way to opt out the jquery file or the stripe file in pro-site. HOwever it is grabbing the remote stripe file and making it part of its cache....problem is...stripe don't like dat.

So is this tested with https? How about nginx?

This plugin looks really impressive, love the UI...but having some major issues.

What are you guys seeing?

Mixed Content: The page at 'https://toplevelsitenetwork.com/' was loaded over HTTPS, but requested an insecure script 'http://toplevelsitenetwork.com/wp-content/uploads/wp-hummingbird-cache/d992761e3dd422f096c2ed20d937d9a4.js'. This request has been blocked; the content must be served over HTTPS

<link rel='stylesheet' id='wphb-1-css' target='_blank' href='https://toplevelsitenetwork.com/wp-content/uploads/wp-hummingbird-cache/642a82bbdf7f0c71e2f0e17d9495fdd8.css' type='text/css' media='all' />
<link rel='stylesheet' id='wphb-2-css' target='_blank' href='https://toplevelsitenetwork.com/wp-content/uploads/wp-hummingbird-cache/c628e0d40ef55d725b85215b41a7f8d5.css' type='text/css' media='all' />
<script type='text/javascript' src='http://toplevelsitenetwork.com/wp-content/uploads/wp-hummingbird-cache/d992761e3dd422f096c2ed20d937d9a4.js'></script>

  • Kasia Swiderska

    Hello Ben,

    I'm checking site that is related to this thread and cache JS files there are loading with https, not http,

    and one mixed content alert in console looks like that

    Mixed Content: The page at 'https://topleveldomain.com/pro-site/' was loaded over HTTPS, but requested an insecure image 'http://topleveldomain.com/wp-content/uploads/2016/11/coffeshopdemoimage.jpg'. This content should also be served over HTTPS.

    So it is one image and not JS files.

    I also checked on my https site and could not replicate issue with loading js from http.

    2. I didn't see a way to opt out the jquery file

    jQuery file should be on the list of all JS files. If you try typing in filter input "jQuery" are there no results?

    or the stripe file in pro-site. HOwever it is grabbing the remote stripe file and making it part of its cache....problem is...stripe don't like dat.

    Stripe JS should be listed under "Other" - yes, selecting Pro Sites will not show that file, but Stripe in filter input should show it

    Can you check again if you see that file? if not would you mind allowing support access so we can have a closer look at this?
    To enable support access you can follow this guide here:
    http://premium.wpmudev.org/manuals/wpmu-dev-dashboard-enabling-staff-login/

    kind regards,
    Kasia

  • Ben

    Kasia Swiderska

    Thanks for the quick response and loking into it.

    I can't wait weeks for a developer to respond and go back in forth with him showing him the bugs, so I already started tinkering with the code to debug.

    in the file:

    core/modules/minify/class-file.php I changed line 27 from:

    $url = set_url_scheme( $upload_dir['baseurl']);

    to

    $url = preg_replace('#^https?:#', '', $upload_dir['baseurl']);

    That fixed the javascript! But then messed up the hummingbird-cache files from being created. So not a complete solution

    There is a bug in the set_url_scheme not functioning as expected for javascript. Please pass that along to the developer so he can run tests on that specific line.

    Also further note:

    I am/was using a child theme and in that child theme i use wp_deregister_script jquery to load in the latest version.

    Humming bird seem to have trouble with that. So the developer needs to review how to handle the child themes properly. (that's bug #2)

    I am on the page: https://mynetworkname.com/wp-admin/admin.php?page=wphb-minification

    And I am not seeing any reference to the stripe file in the list of items i can work with. Is there another location you are seeing this on the network admin area perhaps?

    I REAALLLY like this plugin, so I hope he can get these serious issues resolved.

    Rearding the message with image...you are correct that issue is unrelated to the humming bird...BUT...is a bug with blog templates.

    That is an image being set by blog templates on the check out.

    #1 BUG: The image should be set properly with set_url_scheme or just the // with out the scheme in place.

    #2 BUG: I have the option set: As a showcase inside a page
    So I don't think the selections should be re-shown again to the user on the /pro-site page

    Is this helping?

    T

  • Ben

    Still trying to figure out why the stripe.js is not in my list of scripts to remove from humming bird, also following up on my fix:

    $url = preg_replace('#^https?:#', '', $upload_dir['baseurl']);

    That actually did work as a work around for both js and css paths to operate properly and could possibly be included in the next release?

    I don;t feel comfortable giving full access to the network, emailed credentials for you guys to review the humming bird settings

    Thanks!

  • Kasia Swiderska

    Hello Ben,

    I'm testing on default WordPress theme (2016) on my site - that is unmodified version. I'm checking right now on child theme and I can't replicate any problems with js loading with http. Its still loads everything from https.

    Can you show me exact code you used to de-register jQuery and add own version? I can't check that with only access to main site you send me.

    And I am not seeing any reference to the stripe file in the list of items i can work with. Is there another location you are seeing this on the network admin area perhaps?

    Okey, so here is something weird happening. I started to testing options for Humminbird in network (who can set minification) and stripe disappear from my list files also.
    After while of testing, saving and disabling it still wasn't there but show up when I purchased site with Pro Sites.
    I send message to devs with description of that issue and I'm waiting for feedback on how to resolve that issue.
    On my network settings I have that only Super Admin can minify files

    Rearding the message with image...you are correct that issue is unrelated to the humming bird...BUT...is a bug with blog templates.

    Can you create separate thread for that issue? Handling two separate issues in on thread might lead to confusion when other staff members will start to check that - and then we can create separate reports for bugs when they are related to two different plugins.

    kind regards,
    Kasia

  • Ben

    Kasia Swiderska

    Can you show me exact code you used to de-register jQuery and add own version?

    I removed that line of code and am going with the default wordpress jquery. But this reveals an issue that humming bird has not properly accounted for this scenario and could be messing up other scenarios like this. Here is the code that I have removed from the child theme (it wasn't necesarry for me anymore):

    function modify_jquery() {
            if (!is_admin()) {
                    wp_deregister_script('jquery');
                    wp_enqueue_script('jquery', '//code.jquery.com/jquery-1.11.1.min.js', false, null, true);
            }
    }
    add_action('wp_enqueue_scripts', 'modify_jquery');

    So you will see this is a VERY basic situation that many users might be doing. They may want the jquery to load from a common cdn from jquery or google...because the files might be already cached in a users browser speeding load time and load on their server and bandwidth.

    So we should mark this as a serious bug as the lack of the ability to handle this situation. (and people might also want to do this with bootstrap or other js files found in common themes in addition to jquery)

    After while of testing, saving and disabling it still wasn't there but show up when I purchased site with Pro Sites.

    Explain what mean on this. In my scenario humming bird was grabbing the stripe file without my consent or ability to give consent. When it grabs it, stripe will not complete the transaction because stripe requires the file to come from their server.

  • Kasia Swiderska

    Hello Ben,

    I spoke with developer about that jQuery issue and he is testing this case with new minification engine that will be soon released - if he finds out that it's not working with new engine of course it will be fixed.

    About Stripe.js - that is definitely a bug here. I already reported to Hummingbird developers and they will also address that issue.

    Thanks for reporting those, sending some hero points your way.

    kind regards,
    Kasia

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.