Server IP : 172.67.157.199 / Your IP : 3.135.214.107 [ Web Server : Apache System : Linux b70eb322-3aee-0c53-7c82-0db91281f2c6.secureserver.net 6.1.90-1.el9.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 2 12:09:22 EDT 2024 x86_64 User : root ( 0) PHP Version : 8.0.30.2 Disable Function : NONE Domains : 0 Domains MySQL : ON | cURL : ON | WGET : ON | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/wp-content/plugins/wp-all-export/src/App/Service/VariationOptions/ |
Upload File : |
<?php namespace Wpae\App\Service\VariationOptions; use Wpae\Pro\Filtering\FilteringCPT; class VariationOptions implements VariationOptionsInterface { public function getQueryWhere($wpdb, $where, $join, $closeBracket = false) { return $this->defaultQuery($wpdb, $where, $join, $closeBracket); } public function preProcessPost(\WP_Post $entry) { return $entry; } /** * @param $wpdb * @param $where * @param $join * @param $closeBracket * @return string * * TODO: Remove $closeBracket flag */ protected function defaultQuery($wpdb, $where, $join, $closeBracket) { if($closeBracket) { $sql = " AND $wpdb->posts.post_type = 'product' AND $wpdb->posts.ID NOT IN (SELECT o.ID FROM $wpdb->posts o LEFT OUTER JOIN $wpdb->posts r ON o.post_parent = r.ID WHERE r.post_status = 'trash' AND o.post_type = 'product_variation')) OR ($wpdb->posts.post_type = 'product_variation' AND $wpdb->posts.post_status <> 'trash' AND $wpdb->posts.post_parent IN ( SELECT DISTINCT $wpdb->posts.ID FROM $wpdb->posts $join WHERE $where ) ".$this->getVariationsWhere($where, $join)." )"; } else { $sql = " AND $wpdb->posts.post_type = 'product' AND $wpdb->posts.ID NOT IN (SELECT o.ID FROM $wpdb->posts o LEFT OUTER JOIN $wpdb->posts r ON o.post_parent = r.ID WHERE r.post_status = 'trash' AND o.post_type = 'product_variation') OR ($wpdb->posts.post_type = 'product_variation' AND $wpdb->posts.post_status <> 'trash' AND $wpdb->posts.post_parent IN ( SELECT DISTINCT $wpdb->posts.ID FROM $wpdb->posts $join WHERE $where ) ".$this->getVariationsWhere($where, $join)." )"; } return $sql; } }