Skip to content

Commit 0d8bd11

Browse files
committed
UserQueryBuilder
1 parent 5aacb46 commit 0d8bd11

File tree

2 files changed

+34
-0
lines changed

2 files changed

+34
-0
lines changed

src/Models/WpUser.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use Illuminate\Notifications\Notifiable;
1212
use Illuminate\Support\Str;
1313
use Moox\Press\Database\Factories\WpUserFactory;
14+
use Moox\Press\QueryBuilder\UserQueryBuilder;
1415

1516
/**
1617
* @property int $ID
@@ -98,6 +99,15 @@ protected static function boot()
9899
});
99100
}
100101

102+
protected function newBaseQueryBuilder()
103+
{
104+
$connection = $this->getConnection();
105+
$grammar = $connection->getQueryGrammar();
106+
$processor = $connection->getPostProcessor();
107+
108+
return new UserQueryBuilder($connection, $grammar, $processor);
109+
}
110+
101111
protected $casts = [
102112
'user_registered' => 'datetime',
103113
'spam' => 'boolean',
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?php
2+
3+
namespace Moox\Press\QueryBuilder;
4+
5+
use Illuminate\Database\Query\Builder;
6+
7+
class UserQueryBuilder extends Builder
8+
{
9+
protected $aliasMap = [
10+
'email' => 'user_email',
11+
'name' => 'user_login',
12+
'password' => 'user_pass',
13+
'id' => 'ID',
14+
];
15+
16+
public function where($column, $operator = null, $value = null, $boolean = 'and')
17+
{
18+
if (is_string($column) && array_key_exists($column, $this->aliasMap)) {
19+
$column = $this->aliasMap[$column];
20+
}
21+
22+
return parent::where($column, $operator, $value, $boolean);
23+
}
24+
}

0 commit comments

Comments
 (0)