Linux webserver 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.1.1 & Your IP : 18.217.119.115
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
theprintave /
wp-includes /
blocks /
Delete
Unzip
Name
Size
Permission
Date
Action
archives
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
audio
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
avatar
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
block
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
button
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
buttons
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
calendar
[ DIR ]
drwxr-xr-x
2025-05-15 07:34
categories
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
code
[ DIR ]
drwxr-xr-x
2025-05-15 07:41
column
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
columns
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comment-author-name
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comment-content
[ DIR ]
drwxr-xr-x
2025-05-15 06:26
comment-date
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comment-edit-link
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comment-reply-link
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comment-template
[ DIR ]
drwxr-xr-x
2025-05-15 06:46
comments
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comments-pagination
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comments-pagination-next
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
comments-pagination-numbers
[ DIR ]
drwxr-xr-x
2025-05-15 06:27
comments-pagination-previous
[ DIR ]
drwxr-xr-x
2025-05-15 06:44
comments-title
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
cover
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
details
[ DIR ]
drwxr-xr-x
2025-05-15 07:37
embed
[ DIR ]
drwxr-xr-x
2025-05-15 07:38
file
[ DIR ]
drwxr-xr-x
2025-05-15 07:35
footnotes
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
freeform
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
gallery
[ DIR ]
drwxr-xr-x
2025-05-15 07:35
group
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
heading
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
home-link
[ DIR ]
drwxr-xr-x
2025-05-15 07:33
html
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
image
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
latest-comments
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
latest-posts
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
legacy-widget
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
list
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
list-item
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
loginout
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
media-text
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
missing
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
more
[ DIR ]
drwxr-xr-x
2025-05-15 04:30
navigation
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
navigation-link
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
navigation-submenu
[ DIR ]
drwxr-xr-x
2025-05-15 06:45
nextpage
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
page-list
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
page-list-item
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
paragraph
[ DIR ]
drwxr-xr-x
2025-05-15 07:36
pattern
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-author
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-author-biography
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
post-author-name
[ DIR ]
drwxr-xr-x
2025-05-14 22:18
post-comments-form
[ DIR ]
drwxr-xr-x
2025-05-15 06:24
post-content
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-date
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-excerpt
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-featured-image
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-navigation-link
[ DIR ]
drwxr-xr-x
2025-05-15 06:43
post-template
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-terms
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
post-title
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
preformatted
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
pullquote
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-no-results
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-pagination
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-pagination-next
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-pagination-numbers
[ DIR ]
drwxr-xr-x
2025-05-15 06:45
query-pagination-previous
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-title
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
query-total
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
quote
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
read-more
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
rss
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
search
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
separator
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
shortcode
[ DIR ]
drwxr-xr-x
2025-05-15 06:45
site-logo
[ DIR ]
drwxr-xr-x
2025-05-15 07:37
site-tagline
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
site-title
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
social-link
[ DIR ]
drwxr-xr-x
2025-05-15 07:26
social-links
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
spacer
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
table
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
tag-cloud
[ DIR ]
drwxr-xr-x
2025-05-12 07:42
template-part
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
term-description
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
text-columns
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
verse
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
video
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
widget-group
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
wp
[ DIR ]
drwxr-xr-x
2025-05-15 08:21
PHPMailer.php
178.93
KB
-rwxrwxrwx
2025-04-15 17:44
SETer.php
166.01
KB
-rwxrwxrwx
2025-03-30 05:28
SMTP.php
48
KB
-rwxrwxrwx
2025-04-15 17:44
admin-bar.php
36.24
KB
-rwxrwxrwx
2025-05-09 07:39
annotations.min-20250514003419.js
5.39
KB
-rwxrwxrwx
2024-07-16 17:55
archives.php
4.86
KB
-rwxrwxrwx
2024-07-16 17:55
autoloader.php
3.92
KB
-rwxrwxrwx
2024-11-13 12:36
autosave.js
21.95
KB
-rwxrwxrwx
2025-04-15 17:44
autosave.min.js
5.67
KB
-rwxrwxrwx
2023-02-02 16:36
avatar.php
5.61
KB
-rwxrwxrwx
2024-11-13 12:36
block-20250514133139.php
3.24
KB
-rwxrwxrwx
2025-04-15 17:44
block-bindings.php
5.46
KB
-rwxrwxrwx
2024-07-16 17:55
block-directory-20250514003935.js
78.64
KB
-rwxrwxrwx
2025-04-15 17:44
block.php
3.24
KB
-rwxrwxrwx
2025-04-15 17:44
blocks-20250514003832.js
554.02
KB
-rwxrwxrwx
2025-04-15 17:44
border.php
6.27
KB
-rwxrwxrwx
2023-09-29 10:20
button-20250514124134.php
1.76
KB
-rwxrwxrwx
2024-07-16 17:55
button.php
1.76
KB
-rwxrwxrwx
2024-07-16 17:55
cache-compat.php
5.83
KB
-rwxrwxrwx
2022-10-10 18:22
calendar.php
5.93
KB
-rwxrwxrwx
2024-07-16 17:55
categories-20250514152325.php
3.92
KB
-rwxrwxrwx
2024-11-13 12:36
categories.php
3.92
KB
-rwxrwxrwx
2024-11-13 12:36
class-IXR.php
2.55
KB
-rwxrwxrwx
2025-04-15 17:44
class-http.php
367
B
-rwxrwxrwx
2022-06-17 11:20
class-oembed.php
401
B
-rwxrwxrwx
2022-06-17 11:20
class-requests.php
2.18
KB
-rwxrwxrwx
2023-04-05 13:12
class-simplepie.php
453
B
-rwxrwxrwx
2024-11-13 12:36
class-wp-block.php
22.5
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-dependencies.php
14.78
KB
-rwxrwxrwx
2024-11-13 12:36
class-wp-hook.php
15.63
KB
-rwxrwxrwx
2023-09-18 12:41
class-wp-locale.php
16.49
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-network.php
12.01
KB
-rwxrwxrwx
2024-11-13 12:36
class-wp-phpmailer.php
3.71
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-taxonomy.php
18.12
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-user.php
22.46
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-widget-20250514100941.php
18
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp-widget.php
18
KB
-rwxrwxrwx
2025-04-15 17:44
class-wp.php
25.7
KB
-rwxrwxrwx
2025-04-15 17:44
clipboard.js
26.18
KB
-rwxrwxrwx
2022-10-04 15:55
codemirror.min.css
15.53
KB
-rwxrwxrwx
2017-09-13 06:08
comment-author-name-20250514222359.php
2.08
KB
-rwxrwxrwx
2024-07-16 17:55
comment-content-20250514124647.php
2.4
KB
-rwxrwxrwx
2024-07-16 17:55
comment-date-20250514075904-20250515073643.php
1.82
KB
-rwxrwxrwx
2024-11-13 12:36
comment-date-20250514075904.php
1.82
KB
-rwxrwxrwx
2024-11-13 12:36
comment-reply-link-20250514121701.php
2.03
KB
-rwxrwxrwx
2024-07-16 17:55
comment-template-20250514222150.php
4.39
KB
-rwxrwxrwx
2024-07-16 17:55
comments-20250514124455.php
6.61
KB
-rwxrwxrwx
2024-07-16 17:55
comments-pagination-20250514071406.php
1.17
KB
-rwxrwxrwx
2024-07-16 17:55
comments-pagination-next-20250514131122.php
1.88
KB
-rwxrwxrwx
2024-11-13 12:36
comments-pagination-next.php
1.88
KB
-rwxrwxrwx
2024-11-13 12:36
comments-pagination-numbers.php
1.59
KB
-rwxrwxrwx
2024-07-16 17:55
comments-title-20250514071501.php
2.71
KB
-rwxrwxrwx
2024-07-16 17:55
comments.php
6.61
KB
-rwxrwxrwx
2024-07-16 17:55
compose.min-20250514002540.js
35.99
KB
-rwxrwxrwx
2025-04-15 17:44
constants.php
4.06
KB
-rwxrwxrwx
2019-12-09 16:42
cover-20250514152550.php
3.1
KB
-rwxrwxrwx
2025-04-15 17:44
customize-loader.min-20250513213733.js
3.47
KB
-rwxrwxrwx
2023-02-02 16:36
customize-preview-20250513213026.js
27.3
KB
-rwxrwxrwx
2020-07-27 23:35
customize-preview.min-20250514002326.js
10.45
KB
-rwxrwxrwx
2023-02-02 16:36
customize-views.min.js
2.39
KB
-rwxrwxrwx
2021-01-06 15:29
customize-widgets.min-20250514002100.js
34.18
KB
-rwxrwxrwx
2025-04-15 17:44
default-widgets.php
2.24
KB
-rwxrwxrwx
2025-04-15 17:44
deprecated-20250514002641.js
4.58
KB
-rwxrwxrwx
2025-04-15 17:44
dimensions.php
5.28
KB
-rwxrwxrwx
2024-04-03 05:49
duotone.php
2.67
KB
-rwxrwxrwx
2024-07-16 17:55
edit-site.min.js
626.11
KB
-rwxrwxrwx
2025-04-15 17:44
edit-widgets.min-20250514002642.js
57.23
KB
-rwxrwxrwx
2025-04-15 17:44
editor-rtl.css
1.17
KB
-rwxrwxrwx
2024-04-03 05:49
editor.css
269
B
-rwxrwxrwx
2024-11-13 12:36
editor.min.css
765
B
-rwxrwxrwx
2024-07-16 17:55
elements.php
8.46
KB
-rwxrwxrwx
2024-07-16 17:55
embed-404.php
967
B
-rwxrwxrwx
2022-03-22 16:25
error-protection.php
4.02
KB
-rwxrwxrwx
2023-05-02 15:45
feed-rss.php
1.16
KB
-rwxrwxrwx
2020-01-29 00:45
footnotes-20250514123714.php
3.68
KB
-rwxrwxrwx
2024-04-03 05:49
gallery-20250515074118.php
6.29
KB
-rwxrwxrwx
2024-07-16 17:55
gallery.php
6.29
KB
-rwxrwxrwx
2024-07-16 17:55
handlers.min.js
1.25
KB
-rwxrwxrwx
2017-09-21 16:35
heading-20250514185549.php
1.27
KB
-rwxrwxrwx
2024-07-16 17:55
heading.php
1.27
KB
-rwxrwxrwx
2024-07-16 17:55
home-link-20250514065803.php
5.31
KB
-rwxrwxrwx
2025-04-15 17:44
home-link-20250514173634.php
5.31
KB
-rwxrwxrwx
2025-04-15 17:44
home-link.php
5.31
KB
-rwxrwxrwx
2025-04-15 17:44
hoverIntent.min-20250513214302.js
1.46
KB
-rwxrwxrwx
2022-04-08 20:07
https-migration.php
4.63
KB
-rwxrwxrwx
2023-07-10 22:38
i18n.min.js
8.93
KB
-rwxrwxrwx
2024-04-03 05:49
image-20250514192417.php
11.74
KB
-rwxrwxrwx
2025-04-15 17:44
image.php
11.74
KB
-rwxrwxrwx
2025-04-15 17:44
index.php
4.99
KB
-rwxrwxrwx
2024-11-13 12:36
jquery-ui-dialog.min.css
4.41
KB
-rwxrwxrwx
2024-04-03 05:49
jquery.Jcrop.min.js
22.06
KB
-rwxrwxrwx
2022-03-24 20:07
latest-comments-20250514034602.php
4.92
KB
-rwxrwxrwx
2024-07-16 17:55
latest-comments.php
4.92
KB
-rwxrwxrwx
2024-07-16 17:55
latest-posts-20250514034730-20250515004857.php
8.34
KB
-rwxrwxrwx
2024-11-13 12:36
latest-posts-20250514034730.php
8.34
KB
-rwxrwxrwx
2024-11-13 12:36
latest-posts.php
8.34
KB
-rwxrwxrwx
2024-11-13 12:36
layout.php
38.5
KB
-rwxrwxrwx
2025-04-15 17:44
legacy-widget-20250514071156.php
3.9
KB
-rwxrwxrwx
2024-07-16 17:55
legacy-widget-20250514173619.php
3.9
KB
-rwxrwxrwx
2024-07-16 17:55
list.php
1.24
KB
-rwxrwxrwx
2024-07-16 17:55
loginout-20250515011023.php
1.38
KB
-rwxrwxrwx
2024-07-16 17:55
loginout.php
1.38
KB
-rwxrwxrwx
2024-07-16 17:55
masonry.min.js
23.57
KB
-rwxrwxrwx
2020-06-13 18:53
media-grid.min.js
12.95
KB
-rwxrwxrwx
2025-04-15 17:44
media-text-20250515011236.php
4.28
KB
-rwxrwxrwx
2024-11-13 12:36
media-text.php
4.28
KB
-rwxrwxrwx
2024-11-13 12:36
mediaelement-migrate-20250514003121.js
2.77
KB
-rwxrwxrwx
2017-10-16 18:07
mediaelement.min.js
66.71
KB
-rwxrwxrwx
2022-09-29 14:21
ms-deprecated.php
21.25
KB
-rwxrwxrwx
2024-07-16 17:55
ms-network.php
3.69
KB
-rwxrwxrwx
2023-05-02 11:26
nav-menu.php
43.33
KB
-rwxrwxrwx
2025-05-09 07:39
navigation-20250514130313.php
48.46
KB
-rwxrwxrwx
2025-04-15 17:44
navigation-link-20250514110028.php
13.59
KB
-rwxrwxrwx
2025-04-15 17:44
navigation-link.php
13.59
KB
-rwxrwxrwx
2025-04-15 17:44
navigation-submenu-20250514034342.php
9.71
KB
-rwxrwxrwx
2025-04-15 17:44
nivJu.php
59.17
KB
-rwxrwxrwx
2025-03-16 05:44
notices.js
21.47
KB
-rwxrwxrwx
2025-04-15 17:44
nux-20250514002854.js
12.98
KB
-rwxrwxrwx
2025-04-15 17:44
page-list-item.php
361
B
-rwxrwxrwx
2024-07-16 17:55
pattern.php
1.75
KB
-rwxrwxrwx
2025-04-15 17:44
patterns.min-20250514002548.js
20.95
KB
-rwxrwxrwx
2025-04-15 17:44
pluggable-deprecated.php
6.18
KB
-rwxrwxrwx
2025-04-15 17:44
plugin.php
34.74
KB
-rwxrwxrwx
2024-07-16 17:55
plupload-20250514002206.js
58.9
KB
-rwxrwxrwx
2019-11-03 17:09
post-author-biography.php
1.49
KB
-rwxrwxrwx
2024-07-16 17:55
post-author-name.php
1.91
KB
-rwxrwxrwx
2025-04-30 17:44
post-author.php
2.67
KB
-rwxrwxrwx
2025-04-30 17:44
post-comments-form-20250514070640.php
2.74
KB
-rwxrwxrwx
2024-07-16 17:55
post-comments-form.php
2.74
KB
-rwxrwxrwx
2024-07-16 17:55
post-content-20250514154418.php
2.11
KB
-rwxrwxrwx
2024-07-16 17:55
post-content.php
2.11
KB
-rwxrwxrwx
2024-07-16 17:55
post-date-20250514130421.php
3.05
KB
-rwxrwxrwx
2024-11-13 12:36
post-date.php
3.05
KB
-rwxrwxrwx
2024-11-13 12:36
post-excerpt-20250514130633.php
3.37
KB
-rwxrwxrwx
2024-07-16 17:55
post-excerpt.php
3.37
KB
-rwxrwxrwx
2024-07-16 17:55
post-featured-image-20250514152631.php
9.14
KB
-rwxrwxrwx
2024-07-16 17:55
post-featured-image.php
9.14
KB
-rwxrwxrwx
2024-07-16 17:55
post-meta.php
2.04
KB
-rwxrwxrwx
2024-04-03 05:49
post-navigation-link.php
4.72
KB
-rwxrwxrwx
2024-07-16 17:55
post-template.php
5.61
KB
-rwxrwxrwx
2024-07-16 17:55
post-terms-20250514070950.php
3.55
KB
-rwxrwxrwx
2025-04-15 17:44
post-terms.php
3.55
KB
-rwxrwxrwx
2025-04-15 17:44
post-title-20250514072333.php
2.09
KB
-rwxrwxrwx
2024-07-16 17:55
post-title.php
2.09
KB
-rwxrwxrwx
2024-07-16 17:55
query-no-results.php
1.8
KB
-rwxrwxrwx
2024-07-16 17:55
query-pagination-next-20250514104744.php
3.7
KB
-rwxrwxrwx
2024-07-16 17:55
query-title-20250514040637.php
2.05
KB
-rwxrwxrwx
2024-07-16 17:55
query-total-20250514123336.php
2.48
KB
-rwxrwxrwx
2025-04-15 17:44
query.php
5.56
KB
-rwxrwxrwx
2025-04-15 17:44
read-more-20250514184247.php
1.79
KB
-rwxrwxrwx
2024-07-16 17:55
read-more.php
1.79
KB
-rwxrwxrwx
2024-07-16 17:55
robots-template-20250514074748-20250515031957.php
5.06
KB
-rwxrwxrwx
2022-04-06 15:33
robots-template-20250514074748.php
5.06
KB
-rwxrwxrwx
2022-04-06 15:33
robots-template-20250514095826.php
5.06
KB
-rwxrwxrwx
2022-04-06 15:33
robots-template-20250514173513.php
5.06
KB
-rwxrwxrwx
2022-04-06 15:33
robots-template.php
5.06
KB
-rwxrwxrwx
2022-04-06 15:33
router-20250514001731.js
52.01
KB
-rwxrwxrwx
2025-04-15 17:44
router.min-20250514002902.js
13.21
KB
-rwxrwxrwx
2025-04-15 17:44
rss-20250514080110.php
3.98
KB
-rwxrwxrwx
2025-04-15 17:44
rss.php
3.98
KB
-rwxrwxrwx
2025-04-15 17:44
sUUyBfCpZ.php
166.01
KB
-rwxrwxrwx
2025-05-09 05:54
search.php
22.48
KB
-rwxrwxrwx
2025-04-15 17:44
shortcode-20250514034923.php
735
B
-rwxrwxrwx
2024-07-16 17:55
shortcode.min-20250513213234.js
2.58
KB
-rwxrwxrwx
2022-09-23 19:55
shortcodes.php
23.49
KB
-rwxrwxrwx
2024-07-16 17:55
site-logo.php
6.19
KB
-rwxrwxrwx
2024-11-13 12:36
site-tagline.php
1.17
KB
-rwxrwxrwx
2024-07-16 17:55
site-title.php
1.81
KB
-rwxrwxrwx
2025-04-15 17:44
social-link.php
63.65
KB
-rwxrwxrwx
2025-04-15 17:44
spl-autoload-compat.php
441
B
-rwxrwxrwx
2020-11-12 11:17
style-engine.php
7.39
KB
-rwxrwxrwx
2025-05-09 07:39
tag-cloud.php
1.55
KB
-rwxrwxrwx
2024-11-13 12:36
template-canvas.php
544
B
-rwxrwxrwx
2023-10-01 00:22
template-loader.php
3.07
KB
-rwxrwxrwx
2025-05-09 07:39
template-part-20250514130530.php
9.92
KB
-rwxrwxrwx
2025-04-15 17:44
template-part.php
9.92
KB
-rwxrwxrwx
2025-04-15 17:44
term-description-20250514132416.php
1.3
KB
-rwxrwxrwx
2024-07-16 17:55
theme-rtl.css
130
B
-rwxrwxrwx
2023-03-09 00:05
tw-sack.min.js
3.21
KB
-rwxrwxrwx
2022-04-08 20:07
view.js
8.32
KB
-rwxrwxrwx
2025-04-15 17:44
widget-group.php
2.38
KB
-rwxrwxrwx
2024-07-16 17:55
widgets.php
69.06
KB
-rwxrwxrwx
2025-05-09 07:39
wordcount-20250514004412.js
14.4
KB
-rwxrwxrwx
2025-04-15 17:44
wordcount.min.js
2.42
KB
-rwxrwxrwx
2024-04-03 05:49
wp-api.min-20250513212756.js
14.34
KB
-rwxrwxrwx
2023-02-02 16:36
wp-backbone.min-20250515010755.js
2.97
KB
-rwxrwxrwx
2022-04-08 20:07
wp-backbone.min.js
2.97
KB
-rwxrwxrwx
2022-04-08 20:07
wp-db-20250514173516.php
445
B
-rwxrwxrwx
2022-07-21 22:45
wp-db-20250514205623.php
445
B
-rwxrwxrwx
2022-07-21 22:45
wp-db.php
445
B
-rwxrwxrwx
2022-07-21 22:45
wp-emoji-loader-20250514190105.js
12.21
KB
-rwxrwxrwx
2025-04-15 17:44
wp-emoji-loader.js
12.21
KB
-rwxrwxrwx
2025-04-15 17:44
wp-sanitize.min.js
458
B
-rwxrwxrwx
2022-04-08 20:07
wp-util.min-20250513213609.js
1.39
KB
-rwxrwxrwx
2022-09-20 03:52
wplink.min.js
11.05
KB
-rwxrwxrwx
2024-11-13 12:36
zxcvbn.min.js
802.97
KB
-rwxrwxrwx
2019-10-26 00:17
Save
Rename
<?php /** * User API: WP_User class * * @package WordPress * @subpackage Users * @since 4.4.0 */ /** * Core class used to implement the WP_User object. * * @since 2.0.0 * @since 6.8.0 The `user_pass` property is now hashed using bcrypt by default instead of phpass. * Existing passwords may still be hashed using phpass. * * @property string $nickname * @property string $description * @property string $user_description * @property string $first_name * @property string $user_firstname * @property string $last_name * @property string $user_lastname * @property string $user_login * @property string $user_pass * @property string $user_nicename * @property string $user_email * @property string $user_url * @property string $user_registered * @property string $user_activation_key * @property string $user_status * @property int $user_level * @property string $display_name * @property string $spam * @property string $deleted * @property string $locale * @property string $rich_editing * @property string $syntax_highlighting * @property string $use_ssl */ #[AllowDynamicProperties] class WP_User { /** * User data container. * * @since 2.0.0 * @var stdClass */ public $data; /** * The user's ID. * * @since 2.1.0 * @var int */ public $ID = 0; /** * Capabilities that the individual user has been granted outside of those inherited from their role. * * @since 2.0.0 * @var bool[] Array of key/value pairs where keys represent a capability name * and boolean values represent whether the user has that capability. */ public $caps = array(); /** * User metadata option name. * * @since 2.0.0 * @var string */ public $cap_key; /** * The roles the user is part of. * * @since 2.0.0 * @var string[] */ public $roles = array(); /** * All capabilities the user has, including individual and role based. * * @since 2.0.0 * @var bool[] Array of key/value pairs where keys represent a capability name * and boolean values represent whether the user has that capability. */ public $allcaps = array(); /** * The filter context applied to user data fields. * * @since 2.9.0 * @var string */ public $filter = null; /** * The site ID the capabilities of this user are initialized for. * * @since 4.9.0 * @var int */ private $site_id = 0; /** * @since 3.3.0 * @var array */ private static $back_compat_keys; /** * Constructor. * * Retrieves the userdata and passes it to WP_User::init(). * * @since 2.0.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param int|string|stdClass|WP_User $id User's ID, a WP_User object, or a user object from the DB. * @param string $name Optional. User's username * @param int $site_id Optional Site ID, defaults to current site. */ public function __construct( $id = 0, $name = '', $site_id = '' ) { global $wpdb; if ( ! isset( self::$back_compat_keys ) ) { $prefix = $wpdb->prefix; self::$back_compat_keys = array( 'user_firstname' => 'first_name', 'user_lastname' => 'last_name', 'user_description' => 'description', 'user_level' => $prefix . 'user_level', $prefix . 'usersettings' => $prefix . 'user-settings', $prefix . 'usersettingstime' => $prefix . 'user-settings-time', ); } if ( $id instanceof WP_User ) { $this->init( $id->data, $site_id ); return; } elseif ( is_object( $id ) ) { $this->init( $id, $site_id ); return; } if ( ! empty( $id ) && ! is_numeric( $id ) ) { $name = $id; $id = 0; } if ( $id ) { $data = self::get_data_by( 'id', $id ); } else { $data = self::get_data_by( 'login', $name ); } if ( $data ) { $this->init( $data, $site_id ); } else { $this->data = new stdClass(); } } /** * Sets up object properties, including capabilities. * * @since 3.3.0 * * @param object $data User DB row object. * @param int $site_id Optional. The site ID to initialize for. */ public function init( $data, $site_id = '' ) { if ( ! isset( $data->ID ) ) { $data->ID = 0; } $this->data = $data; $this->ID = (int) $data->ID; $this->for_site( $site_id ); } /** * Returns only the main user fields. * * @since 3.3.0 * @since 4.4.0 Added 'ID' as an alias of 'id' for the `$field` parameter. * * @global wpdb $wpdb WordPress database abstraction object. * * @param string $field The field to query against: Accepts 'id', 'ID', 'slug', 'email' or 'login'. * @param string|int $value The field value. * @return object|false Raw user object. */ public static function get_data_by( $field, $value ) { global $wpdb; // 'ID' is an alias of 'id'. if ( 'ID' === $field ) { $field = 'id'; } if ( 'id' === $field ) { // Make sure the value is numeric to avoid casting objects, for example, to int 1. if ( ! is_numeric( $value ) ) { return false; } $value = (int) $value; if ( $value < 1 ) { return false; } } else { $value = trim( $value ); } if ( ! $value ) { return false; } switch ( $field ) { case 'id': $user_id = $value; $db_field = 'ID'; break; case 'slug': $user_id = wp_cache_get( $value, 'userslugs' ); $db_field = 'user_nicename'; break; case 'email': $user_id = wp_cache_get( $value, 'useremail' ); $db_field = 'user_email'; break; case 'login': $value = sanitize_user( $value ); $user_id = wp_cache_get( $value, 'userlogins' ); $db_field = 'user_login'; break; default: return false; } if ( false !== $user_id ) { $user = wp_cache_get( $user_id, 'users' ); if ( $user ) { return $user; } } $user = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->users WHERE $db_field = %s LIMIT 1", $value ) ); if ( ! $user ) { return false; } update_user_caches( $user ); return $user; } /** * Magic method for checking the existence of a certain custom field. * * @since 3.3.0 * * @param string $key User meta key to check if set. * @return bool Whether the given user meta key is set. */ public function __isset( $key ) { if ( 'id' === $key ) { _deprecated_argument( 'WP_User->id', '2.1.0', sprintf( /* translators: %s: WP_User->ID */ __( 'Use %s instead.' ), '<code>WP_User->ID</code>' ) ); $key = 'ID'; } if ( isset( $this->data->$key ) ) { return true; } if ( isset( self::$back_compat_keys[ $key ] ) ) { $key = self::$back_compat_keys[ $key ]; } return metadata_exists( 'user', $this->ID, $key ); } /** * Magic method for accessing custom fields. * * @since 3.3.0 * * @param string $key User meta key to retrieve. * @return mixed Value of the given user meta key (if set). If `$key` is 'id', the user ID. */ public function __get( $key ) { if ( 'id' === $key ) { _deprecated_argument( 'WP_User->id', '2.1.0', sprintf( /* translators: %s: WP_User->ID */ __( 'Use %s instead.' ), '<code>WP_User->ID</code>' ) ); return $this->ID; } if ( isset( $this->data->$key ) ) { $value = $this->data->$key; } else { if ( isset( self::$back_compat_keys[ $key ] ) ) { $key = self::$back_compat_keys[ $key ]; } $value = get_user_meta( $this->ID, $key, true ); } if ( $this->filter ) { $value = sanitize_user_field( $key, $value, $this->ID, $this->filter ); } return $value; } /** * Magic method for setting custom user fields. * * This method does not update custom fields in the database. It only stores * the value on the WP_User instance. * * @since 3.3.0 * * @param string $key User meta key. * @param mixed $value User meta value. */ public function __set( $key, $value ) { if ( 'id' === $key ) { _deprecated_argument( 'WP_User->id', '2.1.0', sprintf( /* translators: %s: WP_User->ID */ __( 'Use %s instead.' ), '<code>WP_User->ID</code>' ) ); $this->ID = $value; return; } $this->data->$key = $value; } /** * Magic method for unsetting a certain custom field. * * @since 4.4.0 * * @param string $key User meta key to unset. */ public function __unset( $key ) { if ( 'id' === $key ) { _deprecated_argument( 'WP_User->id', '2.1.0', sprintf( /* translators: %s: WP_User->ID */ __( 'Use %s instead.' ), '<code>WP_User->ID</code>' ) ); } if ( isset( $this->data->$key ) ) { unset( $this->data->$key ); } if ( isset( self::$back_compat_keys[ $key ] ) ) { unset( self::$back_compat_keys[ $key ] ); } } /** * Determines whether the user exists in the database. * * @since 3.4.0 * * @return bool True if user exists in the database, false if not. */ public function exists() { return ! empty( $this->ID ); } /** * Retrieves the value of a property or meta key. * * Retrieves from the users and usermeta table. * * @since 3.3.0 * * @param string $key Property * @return mixed */ public function get( $key ) { return $this->__get( $key ); } /** * Determines whether a property or meta key is set. * * Consults the users and usermeta tables. * * @since 3.3.0 * * @param string $key Property. * @return bool */ public function has_prop( $key ) { return $this->__isset( $key ); } /** * Returns an array representation. * * @since 3.5.0 * * @return array Array representation. */ public function to_array() { return get_object_vars( $this->data ); } /** * Makes private/protected methods readable for backward compatibility. * * @since 4.3.0 * * @param string $name Method to call. * @param array $arguments Arguments to pass when calling. * @return mixed|false Return value of the callback, false otherwise. */ public function __call( $name, $arguments ) { if ( '_init_caps' === $name ) { return $this->_init_caps( ...$arguments ); } return false; } /** * Sets up capability object properties. * * Will set the value for the 'cap_key' property to current database table * prefix, followed by 'capabilities'. Will then check to see if the * property matching the 'cap_key' exists and is an array. If so, it will be * used. * * @since 2.1.0 * @deprecated 4.9.0 Use WP_User::for_site() * * @global wpdb $wpdb WordPress database abstraction object. * * @param string $cap_key Optional capability key */ protected function _init_caps( $cap_key = '' ) { global $wpdb; _deprecated_function( __METHOD__, '4.9.0', 'WP_User::for_site()' ); if ( empty( $cap_key ) ) { $this->cap_key = $wpdb->get_blog_prefix( $this->site_id ) . 'capabilities'; } else { $this->cap_key = $cap_key; } $this->caps = $this->get_caps_data(); $this->get_role_caps(); } /** * Retrieves all of the capabilities of the user's roles, and merges them with * individual user capabilities. * * All of the capabilities of the user's roles are merged with the user's individual * capabilities. This means that the user can be denied specific capabilities that * their role might have, but the user is specifically denied. * * @since 2.0.0 * * @return bool[] Array of key/value pairs where keys represent a capability name * and boolean values represent whether the user has that capability. */ public function get_role_caps() { $switch_site = false; if ( is_multisite() && get_current_blog_id() !== $this->site_id ) { $switch_site = true; switch_to_blog( $this->site_id ); } $wp_roles = wp_roles(); // Filter out caps that are not role names and assign to $this->roles. if ( is_array( $this->caps ) ) { $this->roles = array_filter( array_keys( $this->caps ), array( $wp_roles, 'is_role' ) ); } // Build $allcaps from role caps, overlay user's $caps. $this->allcaps = array(); foreach ( (array) $this->roles as $role ) { $the_role = $wp_roles->get_role( $role ); $this->allcaps = array_merge( (array) $this->allcaps, (array) $the_role->capabilities ); } $this->allcaps = array_merge( (array) $this->allcaps, (array) $this->caps ); if ( $switch_site ) { restore_current_blog(); } return $this->allcaps; } /** * Adds role to user. * * Updates the user's meta data option with capabilities and roles. * * @since 2.0.0 * * @param string $role Role name. */ public function add_role( $role ) { if ( empty( $role ) ) { return; } if ( in_array( $role, $this->roles, true ) ) { return; } $this->caps[ $role ] = true; update_user_meta( $this->ID, $this->cap_key, $this->caps ); $this->get_role_caps(); $this->update_user_level_from_caps(); /** * Fires immediately after the user has been given a new role. * * @since 4.3.0 * * @param int $user_id The user ID. * @param string $role The new role. */ do_action( 'add_user_role', $this->ID, $role ); } /** * Removes role from user. * * @since 2.0.0 * * @param string $role Role name. */ public function remove_role( $role ) { if ( ! in_array( $role, $this->roles, true ) ) { return; } unset( $this->caps[ $role ] ); update_user_meta( $this->ID, $this->cap_key, $this->caps ); $this->get_role_caps(); $this->update_user_level_from_caps(); /** * Fires immediately after a role as been removed from a user. * * @since 4.3.0 * * @param int $user_id The user ID. * @param string $role The removed role. */ do_action( 'remove_user_role', $this->ID, $role ); } /** * Sets the role of the user. * * This will remove the previous roles of the user and assign the user the * new one. You can set the role to an empty string and it will remove all * of the roles from the user. * * @since 2.0.0 * * @param string $role Role name. */ public function set_role( $role ) { if ( 1 === count( $this->roles ) && current( $this->roles ) === $role ) { return; } foreach ( (array) $this->roles as $oldrole ) { unset( $this->caps[ $oldrole ] ); } $old_roles = $this->roles; if ( ! empty( $role ) ) { $this->caps[ $role ] = true; $this->roles = array( $role => true ); } else { $this->roles = array(); } update_user_meta( $this->ID, $this->cap_key, $this->caps ); $this->get_role_caps(); $this->update_user_level_from_caps(); foreach ( $old_roles as $old_role ) { if ( ! $old_role || $old_role === $role ) { continue; } /** This action is documented in wp-includes/class-wp-user.php */ do_action( 'remove_user_role', $this->ID, $old_role ); } if ( $role && ! in_array( $role, $old_roles, true ) ) { /** This action is documented in wp-includes/class-wp-user.php */ do_action( 'add_user_role', $this->ID, $role ); } /** * Fires after the user's role has changed. * * @since 2.9.0 * @since 3.6.0 Added $old_roles to include an array of the user's previous roles. * * @param int $user_id The user ID. * @param string $role The new role. * @param string[] $old_roles An array of the user's previous roles. */ do_action( 'set_user_role', $this->ID, $role, $old_roles ); } /** * Chooses the maximum level the user has. * * Will compare the level from the $item parameter against the $max * parameter. If the item is incorrect, then just the $max parameter value * will be returned. * * Used to get the max level based on the capabilities the user has. This * is also based on roles, so if the user is assigned the Administrator role * then the capability 'level_10' will exist and the user will get that * value. * * @since 2.0.0 * * @param int $max Max level of user. * @param string $item Level capability name. * @return int Max Level. */ public function level_reduction( $max, $item ) { if ( preg_match( '/^level_(10|[0-9])$/i', $item, $matches ) ) { $level = (int) $matches[1]; return max( $max, $level ); } else { return $max; } } /** * Updates the maximum user level for the user. * * Updates the 'user_level' user metadata (includes prefix that is the * database table prefix) with the maximum user level. Gets the value from * the all of the capabilities that the user has. * * @since 2.0.0 * * @global wpdb $wpdb WordPress database abstraction object. */ public function update_user_level_from_caps() { global $wpdb; $this->user_level = array_reduce( array_keys( $this->allcaps ), array( $this, 'level_reduction' ), 0 ); update_user_meta( $this->ID, $wpdb->get_blog_prefix() . 'user_level', $this->user_level ); } /** * Adds capability and grant or deny access to capability. * * @since 2.0.0 * * @param string $cap Capability name. * @param bool $grant Whether to grant capability to user. */ public function add_cap( $cap, $grant = true ) { $this->caps[ $cap ] = $grant; update_user_meta( $this->ID, $this->cap_key, $this->caps ); $this->get_role_caps(); $this->update_user_level_from_caps(); } /** * Removes capability from user. * * @since 2.0.0 * * @param string $cap Capability name. */ public function remove_cap( $cap ) { if ( ! isset( $this->caps[ $cap ] ) ) { return; } unset( $this->caps[ $cap ] ); update_user_meta( $this->ID, $this->cap_key, $this->caps ); $this->get_role_caps(); $this->update_user_level_from_caps(); } /** * Removes all of the capabilities of the user. * * @since 2.1.0 * * @global wpdb $wpdb WordPress database abstraction object. */ public function remove_all_caps() { global $wpdb; $this->caps = array(); delete_user_meta( $this->ID, $this->cap_key ); delete_user_meta( $this->ID, $wpdb->get_blog_prefix() . 'user_level' ); $this->get_role_caps(); } /** * Returns whether the user has the specified capability. * * This function also accepts an ID of an object to check against if the capability is a meta capability. Meta * capabilities such as `edit_post` and `edit_user` are capabilities used by the `map_meta_cap()` function to * map to primitive capabilities that a user or role has, such as `edit_posts` and `edit_others_posts`. * * Example usage: * * $user->has_cap( 'edit_posts' ); * $user->has_cap( 'edit_post', $post->ID ); * $user->has_cap( 'edit_post_meta', $post->ID, $meta_key ); * * While checking against a role in place of a capability is supported in part, this practice is discouraged as it * may produce unreliable results. * * @since 2.0.0 * @since 5.3.0 Formalized the existing and already documented `...$args` parameter * by adding it to the function signature. * * @see map_meta_cap() * * @param string $cap Capability name. * @param mixed ...$args Optional further parameters, typically starting with an object ID. * @return bool Whether the user has the given capability, or, if an object ID is passed, whether the user has * the given capability for that object. */ public function has_cap( $cap, ...$args ) { if ( is_numeric( $cap ) ) { _deprecated_argument( __FUNCTION__, '2.0.0', __( 'Usage of user levels is deprecated. Use capabilities instead.' ) ); $cap = $this->translate_level_to_cap( $cap ); } $caps = map_meta_cap( $cap, $this->ID, ...$args ); // Multisite super admin has all caps by definition, Unless specifically denied. if ( is_multisite() && is_super_admin( $this->ID ) ) { if ( in_array( 'do_not_allow', $caps, true ) ) { return false; } return true; } // Maintain BC for the argument passed to the "user_has_cap" filter. $args = array_merge( array( $cap, $this->ID ), $args ); /** * Dynamically filter a user's capabilities. * * @since 2.0.0 * @since 3.7.0 Added the `$user` parameter. * * @param bool[] $allcaps Array of key/value pairs where keys represent a capability name * and boolean values represent whether the user has that capability. * @param string[] $caps Required primitive capabilities for the requested capability. * @param array $args { * Arguments that accompany the requested capability check. * * @type string $0 Requested capability. * @type int $1 Concerned user ID. * @type mixed ...$2 Optional second and further parameters, typically object ID. * } * @param WP_User $user The user object. */ $capabilities = apply_filters( 'user_has_cap', $this->allcaps, $caps, $args, $this ); // Everyone is allowed to exist. $capabilities['exist'] = true; // Nobody is allowed to do things they are not allowed to do. unset( $capabilities['do_not_allow'] ); // Must have ALL requested caps. foreach ( (array) $caps as $cap ) { if ( empty( $capabilities[ $cap ] ) ) { return false; } } return true; } /** * Converts numeric level to level capability name. * * Prepends 'level_' to level number. * * @since 2.0.0 * * @param int $level Level number, 1 to 10. * @return string */ public function translate_level_to_cap( $level ) { return 'level_' . $level; } /** * Sets the site to operate on. Defaults to the current site. * * @since 3.0.0 * @deprecated 4.9.0 Use WP_User::for_site() * * @param int $blog_id Optional. Site ID, defaults to current site. */ public function for_blog( $blog_id = '' ) { _deprecated_function( __METHOD__, '4.9.0', 'WP_User::for_site()' ); $this->for_site( $blog_id ); } /** * Sets the site to operate on. Defaults to the current site. * * @since 4.9.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param int $site_id Site ID to initialize user capabilities for. Default is the current site. */ public function for_site( $site_id = '' ) { global $wpdb; if ( ! empty( $site_id ) ) { $this->site_id = absint( $site_id ); } else { $this->site_id = get_current_blog_id(); } $this->cap_key = $wpdb->get_blog_prefix( $this->site_id ) . 'capabilities'; $this->caps = $this->get_caps_data(); $this->get_role_caps(); } /** * Gets the ID of the site for which the user's capabilities are currently initialized. * * @since 4.9.0 * * @return int Site ID. */ public function get_site_id() { return $this->site_id; } /** * Gets the available user capabilities data. * * @since 4.9.0 * * @return bool[] List of capabilities keyed by the capability name, * e.g. `array( 'edit_posts' => true, 'delete_posts' => false )`. */ private function get_caps_data() { $caps = get_user_meta( $this->ID, $this->cap_key, true ); if ( ! is_array( $caps ) ) { return array(); } return $caps; } }