Edit File by line
/home/zeestwma/ajeebong.../wp-conte.../plugins/image-op.../classes/async-op.../queries
File: operation-query.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace ImageOptimization\Classes\Async_Operation\Queries;
[2] Fix | Delete
[3] Fix | Delete
use ImageOptimization\Classes\Async_Operation\Async_Operation_Hook;
[4] Fix | Delete
use ImageOptimization\Classes\Async_Operation\Async_Operation_Queue;
[5] Fix | Delete
use ImageOptimization\Classes\Async_Operation\Interfaces\Operation_Query_Interface;
[6] Fix | Delete
use TypeError;
[7] Fix | Delete
[8] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[9] Fix | Delete
exit; // Exit if accessed directly.
[10] Fix | Delete
}
[11] Fix | Delete
[12] Fix | Delete
class Operation_Query implements Operation_Query_Interface {
[13] Fix | Delete
private array $query;
[14] Fix | Delete
[15] Fix | Delete
public function set_hook( string $hook ): self {
[16] Fix | Delete
if ( ! in_array( $hook, Async_Operation_Hook::get_values(), true ) ) {
[17] Fix | Delete
throw new TypeError( esc_html( "Hook $hook is not a part of Async_Operation_Hook values" ) );
[18] Fix | Delete
}
[19] Fix | Delete
[20] Fix | Delete
$this->query['hook'] = $hook;
[21] Fix | Delete
[22] Fix | Delete
return $this;
[23] Fix | Delete
}
[24] Fix | Delete
[25] Fix | Delete
public function set_queue( string $queue ): self {
[26] Fix | Delete
if ( ! in_array( $queue, Async_Operation_Queue::get_values(), true ) ) {
[27] Fix | Delete
throw new TypeError( esc_html( "Queue $queue is not a part of Async_Operation_Queue values" ) );
[28] Fix | Delete
}
[29] Fix | Delete
[30] Fix | Delete
$this->query['group'] = $queue;
[31] Fix | Delete
[32] Fix | Delete
return $this;
[33] Fix | Delete
}
[34] Fix | Delete
[35] Fix | Delete
/**
[36] Fix | Delete
* @param string|array $status
[37] Fix | Delete
* @return $this
[38] Fix | Delete
*/
[39] Fix | Delete
public function set_status( $status ): self {
[40] Fix | Delete
$this->query['status'] = $status;
[41] Fix | Delete
[42] Fix | Delete
return $this;
[43] Fix | Delete
}
[44] Fix | Delete
[45] Fix | Delete
public function set_image_id( int $image_id ): self {
[46] Fix | Delete
$this->query['args']['attachment_id'] = $image_id;
[47] Fix | Delete
[48] Fix | Delete
return $this;
[49] Fix | Delete
}
[50] Fix | Delete
[51] Fix | Delete
public function set_limit( int $limit ): self {
[52] Fix | Delete
$this->query['per_page'] = $limit;
[53] Fix | Delete
[54] Fix | Delete
return $this;
[55] Fix | Delete
}
[56] Fix | Delete
[57] Fix | Delete
public function get_return_type(): string {
[58] Fix | Delete
return $this->query['_return_type'];
[59] Fix | Delete
}
[60] Fix | Delete
[61] Fix | Delete
public function return_ids(): self {
[62] Fix | Delete
$this->query['_return_type'] = 'ids';
[63] Fix | Delete
[64] Fix | Delete
return $this;
[65] Fix | Delete
}
[66] Fix | Delete
[67] Fix | Delete
public function get_query(): array {
[68] Fix | Delete
$clone = $this->query;
[69] Fix | Delete
[70] Fix | Delete
if ( empty( $clone['args'] ) ) {
[71] Fix | Delete
unset( $clone['args'] );
[72] Fix | Delete
}
[73] Fix | Delete
[74] Fix | Delete
return $clone;
[75] Fix | Delete
}
[76] Fix | Delete
[77] Fix | Delete
public function __construct() {
[78] Fix | Delete
$this->query = [
[79] Fix | Delete
'args' => [],
[80] Fix | Delete
'per_page' => 10,
[81] Fix | Delete
'orderby' => 'date',
[82] Fix | Delete
'order' => 'DESC',
[83] Fix | Delete
'_return_type' => 'object',
[84] Fix | Delete
];
[85] Fix | Delete
}
[86] Fix | Delete
}
[87] Fix | Delete
[88] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function