Forum Replies Created

Viewing 15 replies - 16 through 30 (of 33 total)
  • Thread Starter pldoolittle

    (@pldoolittle)

    The latest update broke my store functionality again. It is a simple fix to your code, please include it in future releases.

    In these files:

    • Order.class.php
    • StatusManager.class.php
    • TrackingManager.class.php

    Find this:

    if ( ( is_plugin_active_custom( "woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php")
    	||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers.php")
    	||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers-pro.php") ) ) {

    And replace it with this:

    if ( is_plugin_active_custom( "woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php")
    	||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers.php")
    	||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers-pro.php")
    	||  is_plugin_active_custom( "wt-woocommerce-sequential-order-numbers/wt-advanced-order-number.php")) {
    • This reply was modified 2 years, 9 months ago by pldoolittle.
    Thread Starter pldoolittle

    (@pldoolittle)

    Olivier,

    I am absolutely using your plugin. And I am using the only authorized shipworks plugin.

    I detailed the problem and did the troubleshooting for you. Please fix.

    Thread Starter pldoolittle

    (@pldoolittle)

    Ok, with the help of the plugin vendor, I have it mostly working. The following line

    || is_plugin_active_custom( "wt-woocommerce-sequential-order-numbers/wt-advanced-order-number.php"))

    Needs to be inserted after:

    if ( is_plugin_active_custom( "woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php")

    In these files:
    /shipworks-e-commerce-bridge/model/Order.class.php
    /shipworks-e-commerce-bridge/model/StatusManager.class.php
    /shipworks-e-commerce-bridge/model/TrackingManager.class.php

    At this point, it works EXCEPT:
    – If you use an alpha prefix (appears to be a typing issue)
    – Changing an order from “On Hold” to “Processing” is not picked up in Shipworks.

    BUT…
    Updating orders to Completed in Shipworks now fires the Woo Completed action.

    pldoolittle

    (@pldoolittle)

    @andrew55 – I came here looking for the same instructions and found your post. Finding none, I forged ahead.

    Once I installed/activated Woocommerce Shipment Tracking (By WooCommerce), the tracking data began to flow from the notes into Woocommerce tracking fields without any additional setup on my part.

    The only “tracking” issue that remains now is that the connector does not trip the Completed event, and completion emails are not sent. This means that Order completion emails must be sent from Shipworks and do not match the other order emails sent to customers.

    Thread Starter pldoolittle

    (@pldoolittle)

    Looking into Shipworks further, simply placing the _order_number into a custom field would solve the update problem and allow searching by the alternate order number.

    It’s not ideal, as it would require that all templates using order number be modified to detect the presence of an alternate order number, but it would make the values available and place further coding in the hands of the users (i.e. me).

    Thread Starter pldoolittle

    (@pldoolittle)

    This was the request:

    <Post>
    <Url>https://domainname.com/store/wp-admin/admin.php?page=shipworks-wordpress</Url><Parameter><Name>order</Name><Value>1011132</Value></Parameter>
    <Parameter><Name>tracking</Name><Value>XXXXXXXXXXXXXXX</Value></Parameter>
    <Parameter><Name>carrier</Name><Value>USPS</Value></Parameter>
    <Parameter><Name>shippingcost</Name><Value>3.3100</Value></Parameter>
    <Parameter><Name>shippingdate</Name><Value>2021-11-04T04:00:00</Value></Parameter>
    <Parameter><Name>action</Name><Value>updateshipment</Value></Parameter>
    <Parameter><Name>username</Name><Value>XXXXXXXXXXX</Value></Parameter>
    <Parameter><Name>password</Name><Value>XXXXXXXXXXXXXXX</Value></Parameter>
    </Post>

    And the response:

    <?xml version="1.0" standalone="yes" ?><ShipWorks moduleVersion="3.1.22.3273" schemaVersion="1.0.0">
      <Error>
        <Code>ERR004</Code>
        <Description>The order is not in the Database</Description>
      </Error>
    </ShipWorks>
    Thread Starter pldoolittle

    (@pldoolittle)

    Well, we have a small snag. The order failed to upload with the error:

    An Error occurred uploading shipment information for order -9223372036854775808
    Note: that is NOT the tracking number.

    So I dropped the W prefix from the order number and got this error:

    An Error occurred uploading shipment information for order 1011132
    Note: that is the correct sequential order number.

    Thread Starter pldoolittle

    (@pldoolittle)

    Armed with that info, I dug into your plug in and found this:

    shipworks-e-commerce-bridge\model\Order.class.php

    if ( ( is_plugin_active_custom( "woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php")
    				||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers.php")
    					||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers-pro.php") ) ) {
    ...
    				if(getInformation( $this->row, '_order_number' ) != NULL) {
    					$this->id_order = getInformation( $this->row, '_order_number' );

    BUT…. The module I have(webToffee – Sequential Order Numbers for WooCommerce), does not live in:

    woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php

    It lives at wt-woocommerce-sequential-order-numbers/wt-advanced-order-number.php

    So I made the following modification and it works! Well, it appears to, hopefully nothing else was broken with this hack.

    	if ( ( is_plugin_active_custom( "woocommerce-sequential-order-numbers/woocommerce-sequential-order-numbers.php")
    				||  is_plugin_active_custom( "woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers.php")
    					||  is_plugin_active_custom( "wt-woocommerce-sequential-order-numbers/wt-advanced-order-number.php")
    						||  is_plugin_active_custom("woocommerce-sequential-order-numbers-pro/woocommerce-sequential-order-numbers-pro.php") ) ) {
    Thread Starter pldoolittle

    (@pldoolittle)

    For reference, this plugin stores the order id in the table ns_postmeta with a meta_key set to a value of ‘_order_number’ and meta_value set to the order ID.

    When this plug in is installed, everything inside woocommerce refers to the order by the meta value.

    From the code, this may help:

    // Show sequential order number
    add_filter('woocommerce_order_number', array($this, 'display_sequence_number'), 10, 2);
    public function display_sequence_number($order_number, $order) {
            $order_id = (WC()->version < '2.7.0') ? $order->id : $order->get_id();
            $sequential_order_number = get_post_meta($order_id, '_order_number', TRUE);
            $sequential_order_number = apply_filters('wt_alter_sequence_number',$sequential_order_number,$order_id);
            return ($sequential_order_number) ? $sequential_order_number : $order_number;
        }

    If I understand this correctly, woocommerce_order_number is being overridden. Which suggests that the ShipWorks Connector for Woocommerce is getting it’s data directly from the DB? or via another WC function that is not being overridden.

    Is there a fix/workaround?

    pldoolittle

    (@pldoolittle)

    Same here. All the mail on the site, except Contact Form 7, is working fine.

    It would make far more sense for the plugin to put it in the existing tracking number field where it belongs.

    Oliver,

    I do not have any plugin containing the word “shipment” and the only plugin containing “tracking” is for Google Analytics.

    I installed ShipWorks Connector for Woocommerce. The purpose was to get updates from Shipworks into Woocommerce.

    Are you saying that Shipment Tracking by WooCommerce is required?

    Philip

    • This reply was modified 3 years, 2 months ago by pldoolittle.

    I am experiencing a similar problem. Occasional orders are missing from Google analytics data. Checking the missing orders they were simple products, and the variable products are working fine.

    Google states this is a known issue with this plug in, and that we can expect up to 20% of our orders not to be properly recorded in Analytics.

    Any suggestions?

    Olivier,

    Your description does not agree with what I see in my store, which is (as of this writing) as follows:

    The tracking number does appear on the emailed receipt to the customer, but it is not a clickable link.

    The tracking number does appear on customer’s Order Updates screen, , but it is not a clickable link.

    The tracking number does appear in the Woocommerce admin order screen, but only in the notes.

    Philip

    I have to echo the often expressed sentiment that there needs to be a way to purge the CDN cache. Whether that is manual, or on a timer, is a different discussion.

    At this very moment my customers are seeing large images that were uploaded, used, and the optimized. To rename all of them will take many hours, and undoubtedly cause errors/breakages in the site.

    Requiring users to rename all a file and replace the link everywhere on site because of an image update (or optimization) simply isn’t a workable solution.

    Edit: I see this has been an ongoing problem for 7+ years now, with no solution or workaround. That is simply unacceptable in a professional CDN product.

    https://github.com/Automattic/jetpack/issues/917

    • This reply was modified 3 years, 3 months ago by pldoolittle.
Viewing 15 replies - 16 through 30 (of 33 total)