Forum Replies Created

Viewing 9 replies - 1 through 9 (of 9 total)
  • Also have a look in wp_74_options for upload_path and upload_url_path.
    You can find these if you go to Sites->Edit then Settings.

    Note that since WP6.2, sites/xx is automatically added on to the end of both values, so make sure these aren’t included in either option.

    Nice work!

    So glad it’s not just me having this problem!

    My solution has been the same – to go to My Sites->Network Admin->Sites, click on the site and then click Settings, and either set upload-path and upload-url-path to blank, or remove the sites/xxx from the end.

    The odd thing in my case, is I have some sites that are about 7 years old that still have the blogs.dir/xx/files structure and they work fine, but some news ones got the blogs.dir/xxx/files/sites/xxx structure. I’m guessing there must be an option_name in wp_xxx_options that tells WordPress to use the old blogs.dir structure but I can’t for the life of me figure it out!

    I found this comment on stutter, but I still can’t find where “the ms_files_rewriting option is explicitly set on the new network”.

    By the way, the section in the code that adds the sites/xxx onto the end of the path is here.

    @johnjamesjacoby is there an updated version of WP Multi Network in the works?

    As Triple J is currently working full time on Core, Documentation and Meta, are @flixos90 , @rmccue , or @spacedmonkey aware of the issue? (Sorry to spam you guys!)

    • This reply was modified 1 year, 4 months ago by thejasonator. Reason: Added other developers
    thejasonator

    (@thejasonator)

    With the latest update, it doesn’t break the site anymore but now it’s impossible to use with another plugin for stripe gateway. We have to use other stripe gateway plugins too because yours doesn’t have everything we need.
    I think it will be easier just not to use this one.
    Thanks

    I agree and this is exactly what we have done.

    thejasonator

    (@thejasonator)

    Also, it’s a great idea to have a unique prefix for functions that’s specific to the company and plugin. That helps prevent conflicts like this from happening. Starting a function or class with wc_ has a pretty good chance of eventually conflicting with something like this one did.

    That’s a bit like America discovering a new island and calling it England, then blaming England (which had the name first), and calling England the fake news media, saying England is very, very bad – sad face, and saying all the maps which already exist are fake.

    You kind of have a point, though, but if you are going to create a unique namespace for your plugin, it should be wcspg_ obvs!

    Can the development team take a look at renaming this new function to ensure there isn’t a conflict between the two?

    In the interests of even-handedness, the Stripe for WooCommerce plugin should at the same time change its prefix to s4wc_ or pps4wc_

    thejasonator

    (@thejasonator)

    In the meantime, if you need to process Stripe payments NOW, we switched to Stripe for WooCommerce by Payment Plugins at https://www.ads-software.com/plugins/woo-stripe-payment/

    We were kind of forced to do that this Tuesday when an automatic update at 2am from the WooCommerce Stripe Gateway plugin stomped on the namespace of the Stripe for WooCommerce plugin that we had been testing. This simple error on behalf of the authors of WooCommerce Stripe Payment Gateway crashed our entire website. You would have thought that the authors of the official WooCommerce Stripe plugin would have reverted the change, but it’s 48 hours in and they have done nothing.

    This forced us to manually remove the WooCommerce Stripe Payment Gateway plugin directory and put Stripe for WooCommerce into live mode.

    It has been working flawlessly, plus it allows manual payments in the admin order screen – see if it works for you.

    You will need to create a new webhook in your Stripe dashboard, but that took us about 2 minutes to completely configure the new plugin – actually, it connects to Stripe really easily from the WordPress admin.

    Good luck!

    thejasonator

    (@thejasonator)

    This error may indicate that you also have the far better Stripe for WooCommerce plugin by Payment Plugins, also available from the WordPress plugins directory at https://www.ads-software.com/plugins/woo-stripe-payment/

    We were trying out the Stripe for WooCommerce plugin, and found that it works very well, plus it allows you to take manual payments from the admin order screen, which the “official” WooCommerce Stripe Gateway plugin doesn’t do. The two plugins were quite happily co-esxisting until WooCommerce Stripe Gateway decided to either add the new function wc_stripe() or rename a function to wc_stripe().

    This happened on Tuesday at around 2am when an automatic update was performed, and this illustrates the problem with automatic updates – if a developer has no regard for the global namespace, function name clashes like this will happen and crash websites everywhere.

    It could have been avoided if the WooCommerce Stripe Gateway author named the function royho_wc_stripe() or wcsg_stripe()

    The shocking thing is that it is now 48 hours since this disaster and the authors haven’t fixed the error or reverted the change.

    For this reason, we will be sticking with the Stripe for WooCommerce plugin instead.

    thejasonator

    (@thejasonator)

    This error may indicate that you also have the far better Stripe for WooCommerce plugin by Payment Plugins, also available from the WordPress plugins directory at https://www.ads-software.com/plugins/woo-stripe-payment/

    We were trying out the Stripe for WooCommerce plugin, and found that it works very well, plus it allows you to take manual payments from the admin order screen, which the “official” WooCommerce Stripe Gateway plugin doesn’t do. The two plugins were quite happily co-esxisting until WooCommerce Stripe Gateway decided to either add the new function wc_stripe() or rename a function to wc_stripe().

    This happened on Tuesday at around 2am when an automatic update was performed, and this illustrates the problem with automatic updates – if a developer has no regard for the global namespace, function name clashes like this will happen and crash websites everywhere.

    It could have been avoided if the WooCommerce Stripe Gateway author named the function royho_wc_stripe() or wcsg_stripe()

    The shocking thing is that it is now 48 hours since this disaster and the authors haven’t fixed the error or reverted the change.

    For this reason, we will be sticking with the Stripe for WooCommerce plugin instead.

    • This reply was modified 4 years ago by thejasonator. Reason: corrected typo
    thejasonator

    (@thejasonator)

    I got a message this morning from one of my staff that she couldn’t log into our website.
    I immediately investigated and found 705 of these:
    [17-Nov-2020 02:12:53 UTC] PHP Fatal error: Cannot redeclare wc_stripe() (previously declared in /usr/local/lsws/vhost1/htdocs/wp-content/plugins/woo-stripe-payment/includes/class-stripe.php:340) in /usr/local/lsws/vhost1/htdocs/wp-content/plugins/woocommerce-gateway-stripe/woocommerce-gateway-stripe.php on line 57

    So, clearly the WooCommerce Stripe Payment Gateway author has arrogantly stomped all over the namespace of the Stripe for WooCommerce plugin. Now that WordPress performs automatic updates, plugin authors should be especially careful to respect the namespace around them, especially when the plugin is an official WooCommerce one!

    4.5.5 – 2020-11-17
    Fix – Guard against fatal errors that may occur on inbox data store load.

    It should also include

    Break – Break websites by declaring or renaming function wc_stripe()

    We were just testing the Stripe for WooCommerce plugin, as it enables Cardholder Not Present payments through the admin order screen, but since this incident we have completed the testing and have uninstalled the WooCommerce Stripe Payment Gateway plugin and will not be using it again.

    Instead, we recommend Stripe for WooCommerce, which you can get free from the WordPress plugins directory.

Viewing 9 replies - 1 through 9 (of 9 total)