PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.13
Admin Columns v7.0.13
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 / UserOption.php
codepress-admin-columns / classes / Storage Last commit date
Encoder 3 months ago EncoderFactory 3 months ago Repository 3 months ago Table 3 months ago Encoder.php 3 months ago EncoderFactory.php 3 months ago KeyValue.php 3 months ago Option.php 3 months ago OptionData.php 3 months ago OptionDataFactory.php 3 months ago OptionFactory.php 3 months ago SiteOption.php 3 months ago SiteOptionFactory.php 3 months ago Table.php 3 months ago Timestamp.php 3 months ago Transaction.php 3 months ago UserData.php 3 months ago UserMeta.php 3 months ago UserOption.php 3 months ago
UserOption.php
45 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Storage;
6
7 /**
8 * Similar to storing metadata, but this prefixes the key with the site ID when running a multisite installation.
9 */
10 class UserOption implements UserData
11 {
12
13 private string $key;
14
15 private int $user_id;
16
17 public function __construct(string $key, ?int $user_id = null)
18 {
19 if (null === $user_id) {
20 $user_id = get_current_user_id();
21 }
22
23 $this->key = $key;
24 $this->user_id = $user_id;
25 }
26
27 public function get()
28 {
29 return get_user_option($this->key, $this->user_id);
30 }
31
32 public function save($value): void
33 {
34 // Prevent duplicate rows. update_user_option() calls update_user_meta() internally,
35 // which can insert duplicates when concurrent requests race.
36 delete_user_option($this->user_id, $this->key);
37 update_user_option($this->user_id, $this->key, $value);
38 }
39
40 public function delete(): void
41 {
42 delete_user_option($this->user_id, $this->key);
43 }
44
45 }