PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.1.4
Admin Columns v7.1.4
7.1.4 7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Storage / UserMeta.php
codepress-admin-columns / classes / Storage Last commit date
Encoder 1 day ago EncoderFactory 1 day ago Repository 1 day ago Table 1 day ago Encoder.php 1 day ago EncoderFactory.php 1 day ago KeyValue.php 1 day ago Option.php 1 day ago OptionData.php 1 day ago OptionDataFactory.php 1 day ago OptionFactory.php 1 day ago SiteOption.php 1 day ago SiteOptionFactory.php 1 day ago Table.php 1 day ago Timestamp.php 1 day ago Transaction.php 1 day ago UserData.php 1 day ago UserMeta.php 1 day ago UserOption.php 1 day ago
UserMeta.php
45 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Storage;
6
7 class UserMeta implements UserData
8 {
9 protected int $user_id;
10
11 protected string $key;
12
13 private bool $single;
14
15 public function __construct(string $key, ?int $user_id = null, bool $single = true)
16 {
17 if (null === $user_id) {
18 $user_id = get_current_user_id();
19 }
20
21 $this->user_id = $user_id;
22 $this->key = $key;
23 $this->single = $single;
24 }
25
26 public function get()
27 {
28 return get_user_meta($this->user_id, $this->key, $this->single);
29 }
30
31 public function save($value): void
32 {
33 // Prevent duplicate rows. update_user_meta() calls add_user_meta() without `$unique`,
34 // which can insert duplicates when concurrent requests race.
35 delete_user_meta($this->user_id, $this->key);
36 update_user_meta($this->user_id, $this->key, $value);
37 }
38
39 public function delete(): void
40 {
41 delete_user_meta($this->user_id, $this->key);
42 }
43
44 }
45