HasteDesign / Registrations-for-WooCommerce

Add a registration product type to your WooCommerce installation.
GNU General Public License v2.0
38 stars 16 forks source link

Events report not listing events for which an order has been placed #35

Open 1968Phillip opened 5 years ago

1968Phillip commented 5 years ago

I'm not a Wordpress developer, however did a fair bit of PHP around 10 years ago - a bit rusty, but I can track issues down (I think).

I added 12 "registration" products, with 4 date range variations each. After creating a couple of products, I cheated a bit and used the duplicate product function to help set up the rest. Not sure if this plays a part in the issue or not.

I placed a few test orders for a range of products and variations. My initial testing of the plugin worked fine, however with my full database of products I found that the Events report was not listing what I expected it to.

I did some tracking and found that the get_posts() function calls in the prepare_items() function in the file class-wc-report-list-registration-events.php were not returning the full lists that I expected. I found that if I modify the get_posts() arguments, I was able to overcome the problem. All I did was add 'posts_per_page' => -1, to both the $args1 and $args2 argument arrays.

My questions to those that are far more familiar with this plugin, Woocommerce and Wordpress are...

  1. Are my findings above valid?
  2. Are there any other places in the plugin where this could cause an issue?
  3. How can a correction (if necessary) be applied? I'm not familiar with GitHub, and to be honest think that any changes are best handled by a less-rusty programmer.

WordPress Environment `

WordPress Environment

Home URL: http://dev.successexcellence.com.au Site URL: http://dev.successexcellence.com.au WC Version: 3.5.2 Log Directory Writable: ✔ WP Version: 5.0 WP Multisite: – WP Memory Limit: 256 MB WP Debug Mode: – WP Cron: ✔ Language: en External object cache: –

Server Environment

Server Info: Apache/2.4.37 (cPanel) OpenSSL/1.0.2p mod_bwlimited/1.4 Phusion_Passenger/5.1.12 PHP Version: 7.0.32 - We recommend using PHP version 7.2 or above for greater performance and security. How to update your PHP version PHP Post Max Size: 8 MB PHP Time Limit: 300 PHP Max Input Vars: 1000 cURL Version: 7.60.0 OpenSSL/1.0.2k

SUHOSIN Installed: – MySQL Version: 10.2.18-MariaDB-log-cll-lve Max Upload Size: 2 MB Default Timezone is UTC: ✔ fsockopen/cURL: ✔ SoapClient: ✔ DOMDocument: ✔ GZip: ✔ Multibyte String: ✔ Remote Post: ✔ Remote Get: ✔

Database

WC Database Version: 3.5.2 WC Database Prefix: wp_ MaxMind GeoIP Database: ✔ Total Database Size: 4.84MB Database Data Size: 3.80MB Database Index Size: 1.04MB wp_woocommerce_sessions: Data: 0.02MB + Index: 0.02MB wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.05MB wp_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB wp_woocommerce_order_itemmeta: Data: 0.02MB + Index: 0.03MB wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB wp_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB wp_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB wp_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB wp_commentmeta: Data: 0.00MB + Index: 0.00MB wp_comments: Data: 0.00MB + Index: 0.01MB wp_links: Data: 0.00MB + Index: 0.00MB wp_options: Data: 0.55MB + Index: 0.04MB wp_postmeta: Data: 0.09MB + Index: 0.07MB wp_posts: Data: 0.02MB + Index: 0.01MB wp_termmeta: Data: 0.02MB + Index: 0.03MB wp_terms: Data: 0.00MB + Index: 0.01MB wp_term_relationships: Data: 0.00MB + Index: 0.01MB wp_term_taxonomy: Data: 0.00MB + Index: 0.00MB wp_usermeta: Data: 0.01MB + Index: 0.01MB wp_users: Data: 0.00MB + Index: 0.01MB wp_wc_download_log: Data: 0.02MB + Index: 0.03MB wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB wp_wfblockediplog: Data: 0.02MB + Index: 0.00MB wp_wfblocks7: Data: 0.02MB + Index: 0.05MB wp_wfconfig: Data: 0.42MB + Index: 0.00MB wp_wfcrawlers: Data: 0.02MB + Index: 0.00MB wp_wffilechanges: Data: 0.02MB + Index: 0.00MB wp_wffilemods: Data: 1.52MB + Index: 0.00MB wp_wfhits: Data: 0.11MB + Index: 0.05MB wp_wfhoover: Data: 0.02MB + Index: 0.02MB wp_wfissues: Data: 0.02MB + Index: 0.06MB wp_wfknownfilelist: Data: 0.33MB + Index: 0.00MB wp_wflivetraffichuman: Data: 0.02MB + Index: 0.02MB wp_wflocs: Data: 0.02MB + Index: 0.00MB wp_wflogins: Data: 0.02MB + Index: 0.03MB wp_wfnotifications: Data: 0.02MB + Index: 0.00MB wp_wfpendingissues: Data: 0.02MB + Index: 0.06MB wp_wfreversecache: Data: 0.02MB + Index: 0.00MB wp_wfsnipcache: Data: 0.02MB + Index: 0.05MB wp_wfstatus: Data: 0.13MB + Index: 0.09MB wp_wftrafficrates: Data: 0.02MB + Index: 0.00MB

Post Type Counts

attachment: 12 customize_changeset: 4 page: 5 post: 2 product: 12 product_variation: 24 revision: 6 shop_order: 1

Security

Secure connection (HTTPS): ❌ Your store is not using HTTPS. Learn more about HTTPS and SSL Certificates. Hide errors from visitors: ✔

Active Plugins (7)

Limit Login Attempts Reloaded: by wpchefgadget – 2.7.1 Registrations for WooCommerce: by Haste - design and technology Allyson Souza Anyssa Ferreira – 2.0.5

Checkout Field Editor for WooCommerce: by ThemeHiGH – 1.3.0 WooCommerce: by Automattic – 3.5.2 Wordfence Security: by Wordfence – 7.1.18 WP Church Center: Tithe.ly Online Giving: by Jordesign WP Church Team – 1.0.0

Tithe.ly Giving Button: by WP Church Team Jordan Gillman – 2.2

Settings

API Enabled: – Force SSL: – Currency: AUD ($) Currency Position: left Thousand Separator: , Decimal Separator: . Number of Decimals: 2 Taxonomies: Product Types: external (external) grouped (grouped) registrations (registrations) simple (simple) variable (variable)

Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog) exclude-from-search (exclude-from-search) featured (featured) outofstock (outofstock) rated-1 (rated-1) rated-2 (rated-2) rated-3 (rated-3) rated-4 (rated-4) rated-5 (rated-5)

WC Pages

Shop base: #4 - /shop/ Cart: #5 - /cart/ Checkout: #6 - /checkout/ My account: #7 - /my-account/ Terms and conditions: ❌ Page not set

Theme

Name: Catch Responsive - Learn To Play Version: 1.0.0 Author URL: http://example.com Child Theme: ✔ Parent Theme Name: Catch Responsive Parent Theme Version: 2.7 Parent Theme Author URL: https://catchthemes.com/ WooCommerce Support: ❌ Not declared

Templates

Overrides: – `

allysonsouza commented 5 years ago

Hi @1968Phillip,

Your appointments are completely valid, the reports feature is a little bit broken since the WooCommerce 3.x release, I guess, and it's something I was trying to find time to fix. I though it was fixed to be honest, but I'll take a look at your suggestion to pass posts_per_page => -1 to return all the possible results in the query. I think there's no other place it can be a problem.

You're already helping pointing the problem and founding bugs, but if you want to help with code, you can learn about pull requests: https://help.github.com/articles/about-pull-requests/

Thank you!