/
home
/
altere25
/
rockymountainlax.com
/
wp-includes
/
/home/altere25/rockymountainlax.com/wp-includes
mkdir
upload
Name
Size
Mode
Actions
assets/
-
0755
rm
block-bindings/
-
0755
rm
block-patterns/
-
0755
rm
block-supports/
-
0755
rm
blocks/
-
0755
rm
certificates/
-
0755
rm
css/
-
0755
rm
customize/
-
0755
rm
fonts/
-
0755
rm
html-api/
-
0755
rm
ID3/
-
0755
rm
images/
-
0755
rm
interactivity-api/
-
0755
rm
IXR/
-
0755
rm
js/
-
0755
rm
l10n/
-
0755
rm
php-compat/
-
0755
rm
PHPMailer/
-
0755
rm
pomo/
-
0755
rm
Requests/
-
0755
rm
rest-api/
-
0755
rm
SimplePie/
-
0755
rm
sitemaps/
-
0755
rm
sodium_compat/
-
0755
rm
style-engine/
-
0755
rm
Text/
-
0755
rm
theme-compat/
-
0755
rm
widgets/
-
0755
rm
.htaccess
178
0644
edit
dl
rm
admin-bar.php
37100
0644
edit
dl
rm
atomlib.php
12078
0644
edit
dl
rm
author-template.php
18951
0644
edit
dl
rm
block-bindings.php
5594
0644
edit
dl
rm
block-editor.php
28340
0644
edit
dl
rm
block-i18n.json
316
0644
edit
dl
rm
block-patterns.php
13119
0644
edit
dl
rm
block-template-utils.php
60145
0644
edit
dl
rm
block-template.php
14142
0644
edit
dl
rm
blocks.php
104889
0644
edit
dl
rm
bookmark-template.php
12948
0644
edit
dl
rm
bookmark.php
15427
0644
edit
dl
rm
cache-compat.php
5969
0644
edit
dl
rm
cache.php
13474
0644
edit
dl
rm
canonical.php
34506
0644
edit
dl
rm
capabilities.php
42718
0644
edit
dl
rm
category-template.php
57003
0644
edit
dl
rm
category.php
12709
0644
edit
dl
rm
class-avif-info.php
29615
0644
edit
dl
rm
class-feed.php
539
0644
edit
dl
rm
class-http.php
367
0644
edit
dl
rm
class-IXR.php
2543
0644
edit
dl
rm
class-json.php
43684
0644
edit
dl
rm
class-oembed.php
401
0644
edit
dl
rm
class-phpass.php
6771
0644
edit
dl
rm
class-phpmailer.php
664
0644
edit
dl
rm
class-pop3.php
21174
0644
edit
dl
rm
class-requests.php
2237
0644
edit
dl
rm
class-simplepie.php
453
0644
edit
dl
rm
class-smtp.php
457
0644
edit
dl
rm
class-snoopy.php
37715
0644
edit
dl
rm
class-walker-category-dropdown.php
2469
0644
edit
dl
rm
class-walker-category.php
8477
0644
edit
dl
rm
class-walker-comment.php
14221
0644
edit
dl
rm
class-walker-nav-menu.php
11784
0644
edit
dl
rm
class-walker-page-dropdown.php
2710
0644
edit
dl
rm
class-walker-page.php
7612
0644
edit
dl
rm
class-wp-admin-bar.php
17874
0644
edit
dl
rm
class-wp-ajax-response.php
5266
0644
edit
dl
rm
class-wp-application-passwords.php
15617
0644
edit
dl
rm
class-wp-block-bindings-registry.php
8463
0644
edit
dl
rm
class-wp-block-bindings-source.php
2992
0644
edit
dl
rm
class-wp-block-editor-context.php
1350
0644
edit
dl
rm
class-wp-block-list.php
4757
0644
edit
dl
rm
class-wp-block-metadata-registry.php
10227
0644
edit
dl
rm
class-wp-block-parser-block.php
2555
0644
edit
dl
rm
class-wp-block-parser-frame.php
2017
0644
edit
dl
rm
class-wp-block-parser.php
11532
0644
edit
dl
rm
class-wp-block-pattern-categories-registry.php
5371
0644
edit
dl
rm
class-wp-block-patterns-registry.php
11185
0644
edit
dl
rm
class-wp-block-styles-registry.php
6262
0644
edit
dl
rm
class-wp-block-supports.php
5612
0644
edit
dl
rm
class-wp-block-template.php
2033
0644
edit
dl
rm
class-wp-block-templates-registry.php
7231
0644
edit
dl
rm
class-wp-block-type-registry.php
5013
0644
edit
dl
rm
class-wp-block-type.php
17265
0644
edit
dl
rm
class-wp-block.php
20438
0644
edit
dl
rm
class-wp-classic-to-block-menu-converter.php
4088
0644
edit
dl
rm
class-wp-comment-query.php
48395
0644
edit
dl
rm
class-wp-comment.php
9372
0644
edit
dl
rm
class-wp-customize-control.php
25730
0644
edit
dl
rm
class-wp-customize-manager.php
202539
0644
edit
dl
rm
class-wp-customize-nav-menus.php
57433
0644
edit
dl
rm
class-wp-customize-panel.php
10637
0644
edit
dl
rm
class-wp-customize-section.php
11209
0644
edit
dl
rm
class-wp-customize-setting.php
29889
0644
edit
dl
rm
class-wp-customize-widgets.php
72157
0644
edit
dl
rm
class-wp-date-query.php
35726
0644
edit
dl
rm
class-wp-dependencies.php
15139
0644
edit
dl
rm
class-wp-dependency.php
2627
0644
edit
dl
rm
class-wp-duotone.php
40783
0644
edit
dl
rm
class-wp-editor.php
72335
0644
edit
dl
rm
class-wp-embed.php
15994
0644
edit
dl
rm
class-wp-error.php
7502
0644
edit
dl
rm
class-wp-exception.php
253
0644
edit
dl
rm
class-wp-fatal-error-handler.php
8150
0644
edit
dl
rm
class-wp-feed-cache-transient.php
3176
0644
edit
dl
rm
class-wp-feed-cache.php
969
0644
edit
dl
rm
class-wp-hook.php
16000
0644
edit
dl
rm
class-wp-http-cookie.php
7389
0644
edit
dl
rm
class-wp-http-curl.php
12541
0644
edit
dl
rm
class-wp-http-encoding.php
6689
0644
edit
dl
rm
class-wp-http-ixr-client.php
3506
0644
edit
dl
rm
class-wp-http-proxy.php
5980
0644
edit
dl
rm
class-wp-http-requests-hooks.php
2022
0644
edit
dl
rm
class-wp-http-requests-response.php
4400
0644
edit
dl
rm
class-wp-http-response.php
2977
0644
edit
dl
rm
class-wp-http-streams.php
16859
0644
edit
dl
rm
class-wp-http.php
41506
0644
edit
dl
rm
class-wp-image-editor-gd.php
19886
0644
edit
dl
rm
class-wp-image-editor-imagick.php
39106
0644
edit
dl
rm
class-wp-image-editor.php
16938
0644
edit
dl
rm
class-wp-list-util.php
7443
0644
edit
dl
rm
class-wp-locale-switcher.php
6630
0644
edit
dl
rm
class-wp-locale.php
16111
0644
edit
dl
rm
class-wp-matchesmapregex.php
1828
0644
edit
dl
rm
class-wp-meta-query.php
30531
0644
edit
dl
rm
class-wp-metadata-lazyloader.php
6833
0644
edit
dl
rm
class-wp-navigation-fallback.php
9211
0644
edit
dl
rm
class-wp-network-query.php
19857
0644
edit
dl
rm
class-wp-network.php
12296
0644
edit
dl
rm
class-wp-object-cache.php
17524
0644
edit
dl
rm
class-wp-oembed-controller.php
6905
0644
edit
dl
rm
class-wp-oembed.php
31475
0644
edit
dl
rm
class-wp-paused-extensions-storage.php
5111
0644
edit
dl
rm
class-wp-plugin-dependencies.php
25319
0644
edit
dl
rm
class-wp-post-type.php
30340
0644
edit
dl
rm
class-wp-post.php
6484
0644
edit
dl
rm
class-wp-query.php
154081
0644
edit
dl
rm
class-wp-recovery-mode-cookie-service.php
6877
0644
edit
dl
rm
class-wp-recovery-mode-email-service.php
11183
0644
edit
dl
rm
class-wp-recovery-mode-key-service.php
4608
0644
edit
dl
rm
class-wp-recovery-mode-link-service.php
3463
0644
edit
dl
rm
class-wp-recovery-mode.php
11435
0644
edit
dl
rm
class-wp-rewrite.php
63688
0644
edit
dl
rm
class-wp-role.php
2523
0644
edit
dl
rm
class-wp-roles.php
8586
0644
edit
dl
rm
class-wp-script-modules.php
19366
0644
edit
dl
rm
class-wp-scripts.php
28344
0644
edit
dl
rm
class-wp-session-tokens.php
7451
0644
edit
dl
rm
class-wp-simplepie-file.php
3408
0644
edit
dl
rm
class-wp-simplepie-sanitize-kses.php
1837
0644
edit
dl
rm
class-wp-site-query.php
31625
0644
edit
dl
rm
class-wp-site.php
7454
0644
edit
dl
rm
class-wp-styles.php
11010
0644
edit
dl
rm
class-wp-tax-query.php
19555
0644
edit
dl
rm
class-wp-taxonomy.php
18567
0644
edit
dl
rm
class-wp-term-query.php
40869
0644
edit
dl
rm
class-wp-term.php
5298
0644
edit
dl
rm
class-wp-text-diff-renderer-inline.php
979
0644
edit
dl
rm
class-wp-text-diff-renderer-table.php
18807
0644
edit
dl
rm
class-wp-textdomain-registry.php
10481
0644
edit
dl
rm
class-wp-theme-json-data.php
1809
0644
edit
dl
rm
class-wp-theme-json-resolver.php
35805
0644
edit
dl
rm
class-wp-theme-json-schema.php
7367
0644
edit
dl
rm
class-wp-theme-json.php
160780
0644
edit
dl
rm
class-wp-theme.php
65413
0644
edit
dl
rm
class-wp-token-map.php
28618
0644
edit
dl
rm
class-wp-user-meta-session-tokens.php
2990
0644
edit
dl
rm
class-wp-user-query.php
43654
0644
edit
dl
rm
class-wp-user-request.php
2222
0644
edit
dl
rm
class-wp-user.php
22827
0644
edit
dl
rm
class-wp-walker.php
13322
0644
edit
dl
rm
class-wp-widget-factory.php
3347
0644
edit
dl
rm
class-wp-widget.php
18424
0644
edit
dl
rm
class-wp-xmlrpc-server.php
214948
0644
edit
dl
rm
class-wp.php
26119
0644
edit
dl
rm
class-wpdb.php
118389
0644
edit
dl
rm
class.wp-dependencies.php
373
0644
edit
dl
rm
class.wp-scripts.php
343
0644
edit
dl
rm
class.wp-styles.php
338
0644
edit
dl
rm
comment-template.php
102773
0644
edit
dl
rm
comment.php
130275
0644
edit
dl
rm
compat.php
16974
0644
edit
dl
rm
cron.php
41594
0644
edit
dl
rm
date.php
400
0644
edit
dl
rm
default-constants.php
11365
0644
edit
dl
rm
default-filters.php
35685
0644
edit
dl
rm
default-widgets.php
2222
0644
edit
dl
rm
deprecated.php
190130
0644
edit
dl
rm
embed-template.php
338
0644
edit
dl
rm
embed.php
37908
0644
edit
dl
rm
error-protection.php
4121
0644
edit
dl
rm
feed-atom-comments.php
5504
0644
edit
dl
rm
feed-atom.php
3048
0644
edit
dl
rm
feed-rdf.php
2668
0644
edit
dl
rm
feed-rss.php
1189
0644
edit
dl
rm
feed-rss2-comments.php
4136
0644
edit
dl
rm
feed-rss2.php
3799
0644
edit
dl
rm
feed.php
23411
0644
edit
dl
rm
fonts.php
9751
0644
edit
dl
rm
formatting.php
335229
0644
edit
dl
rm
functions.php
283163
0644
edit
dl
rm
functions.wp-scripts.php
14558
0644
edit
dl
rm
functions.wp-styles.php
8583
0644
edit
dl
rm
general-template.php
169492
0644
edit
dl
rm
global-styles-and-settings.php
21205
0644
edit
dl
rm
http.php
27084
0644
edit
dl
rm
https-detection.php
5661
0644
edit
dl
rm
https-migration.php
4741
0644
edit
dl
rm
kses.php
74575
0644
edit
dl
rm
l10n.php
68415
0644
edit
dl
rm
link-template.php
157710
0644
edit
dl
rm
load.php
55658
0644
edit
dl
rm
locale.php
162
0644
edit
dl
rm
media-template.php
63043
0644
edit
dl
rm
media.php
218485
0644
edit
dl
rm
meta.php
64409
0644
edit
dl
rm
ms-blogs.php
25772
0644
edit
dl
rm
ms-default-constants.php
4921
0644
edit
dl
rm
ms-default-filters.php
6636
0644
edit
dl
rm
ms-deprecated.php
21759
0644
edit
dl
rm
ms-files.php
2711
0644
edit
dl
rm
ms-functions.php
91249
0644
edit
dl
rm
ms-load.php
19883
0644
edit
dl
rm
ms-network.php
3782
0644
edit
dl
rm
ms-settings.php
4124
0644
edit
dl
rm
ms-site.php
40490
0644
edit
dl
rm
nav-menu-template.php
25917
0644
edit
dl
rm
nav-menu.php
44347
0644
edit
dl
rm
option.php
101759
0644
edit
dl
rm
pluggable-deprecated.php
6263
0644
edit
dl
rm
pluggable.php
115970
0644
edit
dl
rm
plugin.php
35465
0644
edit
dl
rm
post-formats.php
7102
0644
edit
dl
rm
post-template.php
66880
0644
edit
dl
rm
post-thumbnail-template.php
10826
0644
edit
dl
rm
post.php
289894
0644
edit
dl
rm
query.php
37035
0644
edit
dl
rm
registration-functions.php
200
0644
edit
dl
rm
registration.php
200
0644
edit
dl
rm
rest-api.php
99593
0644
edit
dl
rm
revision.php
30890
0644
edit
dl
rm
rewrite.php
19541
0644
edit
dl
rm
robots-template.php
5185
0644
edit
dl
rm
rss-functions.php
255
0644
edit
dl
rm
rss.php
23113
0644
edit
dl
rm
script-loader.php
130735
0644
edit
dl
rm
script-modules.php
7712
0644
edit
dl
rm
session.php
258
0644
edit
dl
rm
shortcodes.php
24051
0644
edit
dl
rm
sitemaps.php
3238
0644
edit
dl
rm
spl-autoload-compat.php
441
0644
edit
dl
rm
style-engine.php
7563
0644
edit
dl
rm
taxonomy.php
175438
0644
edit
dl
rm
template-canvas.php
544
0644
edit
dl
rm
template-loader.php
3350
0644
edit
dl
rm
template.php
24154
0644
edit
dl
rm
theme-i18n.json
1292
0644
edit
dl
rm
theme-previews.php
2832
0644
edit
dl
rm
theme-templates.php
6223
0644
edit
dl
rm
theme.json
8704
0644
edit
dl
rm
theme.php
133985
0644
edit
dl
rm
update.php
36788
0644
edit
dl
rm
user.php
175058
0644
edit
dl
rm
vars.php
6489
0644
edit
dl
rm
version.php
931
0644
edit
dl
rm
widgets.php
70682
0644
edit
dl
rm
wp-db.php
445
0644
edit
dl
rm
wp-diff.php
726
0644
edit
dl
rm
Edit:
/home/altere25/rockymountainlax.com/wp-includes/author-template.php
(18951B)
<?php /** * Author Template functions for use in themes. * * These functions must be used within the WordPress Loop. * * @link https://codex.wordpress.org/Author_Templates * * @package WordPress * @subpackage Template */ /** * Retrieves the author of the current post. * * @since 1.5.0 * @since 6.3.0 Returns an empty string if the author's display name is unknown. * * @global WP_User $authordata The current author's data. * * @param string $deprecated Deprecated. * @return string The author's display name, empty string if unknown. */ function get_the_author( $deprecated = '' ) { global $authordata; if ( ! empty( $deprecated ) ) { _deprecated_argument( __FUNCTION__, '2.1.0' ); } /** * Filters the display name of the current post's author. * * @since 2.9.0 * * @param string $display_name The author's display name. */ return apply_filters( 'the_author', is_object( $authordata ) ? $authordata->display_name : '' ); } /** * Displays the name of the author of the current post. * * The behavior of this function is based off of old functionality predating * get_the_author(). This function is not deprecated, but is designed to echo * the value from get_the_author() and as an result of any old theme that might * still use the old behavior will also pass the value from get_the_author(). * * The normal, expected behavior of this function is to echo the author and not * return it. However, backward compatibility has to be maintained. * * @since 0.71 * * @see get_the_author() * @link https://developer.wordpress.org/reference/functions/the_author/ * * @param string $deprecated Deprecated. * @param bool $deprecated_echo Deprecated. Use get_the_author(). Echo the string or return it. * @return string The author's display name, from get_the_author(). */ function the_author( $deprecated = '', $deprecated_echo = true ) { if ( ! empty( $deprecated ) ) { _deprecated_argument( __FUNCTION__, '2.1.0' ); } if ( true !== $deprecated_echo ) { _deprecated_argument( __FUNCTION__, '1.5.0', sprintf( /* translators: %s: get_the_author() */ __( 'Use %s instead if you do not want the value echoed.' ), '<code>get_the_author()</code>' ) ); } if ( $deprecated_echo ) { echo get_the_author(); } return get_the_author(); } /** * Retrieves the author who last edited the current post. * * @since 2.8.0 * * @return string|void The author's display name, empty string if unknown. */ function get_the_modified_author() { $last_id = get_post_meta( get_post()->ID, '_edit_last', true ); if ( $last_id ) { $last_user = get_userdata( $last_id ); /** * Filters the display name of the author who last edited the current post. * * @since 2.8.0 * * @param string $display_name The author's display name, empty string if unknown. */ return apply_filters( 'the_modified_author', $last_user ? $last_user->display_name : '' ); } } /** * Displays the name of the author who last edited the current post, * if the author's ID is available. * * @since 2.8.0 * * @see get_the_author() */ function the_modified_author() { echo get_the_modified_author(); } /** * Retrieves the requested data of the author of the current post. * * Valid values for the `$field` parameter include: * * - admin_color * - aim * - comment_shortcuts * - description * - display_name * - first_name * - ID * - jabber * - last_name * - nickname * - plugins_last_view * - plugins_per_page * - rich_editing * - syntax_highlighting * - user_activation_key * - user_description * - user_email * - user_firstname * - user_lastname * - user_level * - user_login * - user_nicename * - user_pass * - user_registered * - user_status * - user_url * - yim * * @since 2.8.0 * * @global WP_User $authordata The current author's data. * * @param string $field Optional. The user field to retrieve. Default empty. * @param int|false $user_id Optional. User ID. Defaults to the current post author. * @return string The author's field from the current author's DB object, otherwise an empty string. */ function get_the_author_meta( $field = '', $user_id = false ) { $original_user_id = $user_id; if ( ! $user_id ) { global $authordata; $user_id = isset( $authordata->ID ) ? $authordata->ID : 0; } else { $authordata = get_userdata( $user_id ); } if ( in_array( $field, array( 'login', 'pass', 'nicename', 'email', 'url', 'registered', 'activation_key', 'status' ), true ) ) { $field = 'user_' . $field; } $value = isset( $authordata->$field ) ? $authordata->$field : ''; /** * Filters the value of the requested user metadata. * * The filter name is dynamic and depends on the $field parameter of the function. * * @since 2.8.0 * @since 4.3.0 The `$original_user_id` parameter was added. * * @param string $value The value of the metadata. * @param int $user_id The user ID for the value. * @param int|false $original_user_id The original user ID, as passed to the function. */ return apply_filters( "get_the_author_{$field}", $value, $user_id, $original_user_id ); } /** * Outputs the field from the user's DB object. Defaults to current post's author. * * @since 2.8.0 * * @param string $field Selects the field of the users record. See get_the_author_meta() * for the list of possible fields. * @param int|false $user_id Optional. User ID. Defaults to the current post author. * * @see get_the_author_meta() */ function the_author_meta( $field = '', $user_id = false ) { $author_meta = get_the_author_meta( $field, $user_id ); /** * Filters the value of the requested user metadata. * * The filter name is dynamic and depends on the $field parameter of the function. * * @since 2.8.0 * * @param string $author_meta The value of the metadata. * @param int|false $user_id The user ID. */ echo apply_filters( "the_author_{$field}", $author_meta, $user_id ); } /** * Retrieves either author's link or author's name. * * If the author has a home page set, return an HTML link, otherwise just return * the author's name. * * @since 3.0.0 * * @global WP_User $authordata The current author's data. * * @return string An HTML link if the author's URL exists in user meta, * otherwise the result of get_the_author(). */ function get_the_author_link() { if ( get_the_author_meta( 'url' ) ) { global $authordata; $author_url = get_the_author_meta( 'url' ); $author_display_name = get_the_author(); $link = sprintf( '<a href="%1$s" title="%2$s" rel="author external">%3$s</a>', esc_url( $author_url ), /* translators: %s: Author's display name. */ esc_attr( sprintf( __( 'Visit %s’s website' ), $author_display_name ) ), $author_display_name ); /** * Filters the author URL link HTML. * * @since 6.0.0 * * @param string $link The default rendered author HTML link. * @param string $author_url Author's URL. * @param WP_User $authordata Author user data. */ return apply_filters( 'the_author_link', $link, $author_url, $authordata ); } else { return get_the_author(); } } /** * Displays either author's link or author's name. * * If the author has a home page set, echo an HTML link, otherwise just echo the * author's name. * * @link https://developer.wordpress.org/reference/functions/the_author_link/ * * @since 2.1.0 */ function the_author_link() { echo get_the_author_link(); } /** * Retrieves the number of posts by the author of the current post. * * @since 1.5.0 * * @return int The number of posts by the author. */ function get_the_author_posts() { $post = get_post(); if ( ! $post ) { return 0; } return count_user_posts( $post->post_author, $post->post_type ); } /** * Displays the number of posts by the author of the current post. * * @link https://developer.wordpress.org/reference/functions/the_author_posts/ * @since 0.71 */ function the_author_posts() { echo get_the_author_posts(); } /** * Retrieves an HTML link to the author page of the current post's author. * * Returns an HTML-formatted link using get_author_posts_url(). * * @since 4.4.0 * * @global WP_User $authordata The current author's data. * * @return string An HTML link to the author page, or an empty string if $authordata is not set. */ function get_the_author_posts_link() { global $authordata; if ( ! is_object( $authordata ) ) { return ''; } $link = sprintf( '<a href="%1$s" title="%2$s" rel="author">%3$s</a>', esc_url( get_author_posts_url( $authordata->ID, $authordata->user_nicename ) ), /* translators: %s: Author's display name. */ esc_attr( sprintf( __( 'Posts by %s' ), get_the_author() ) ), get_the_author() ); /** * Filters the link to the author page of the author of the current post. * * @since 2.9.0 * * @param string $link HTML link. */ return apply_filters( 'the_author_posts_link', $link ); } /** * Displays an HTML link to the author page of the current post's author. * * @since 1.2.0 * @since 4.4.0 Converted into a wrapper for get_the_author_posts_link() * * @param string $deprecated Unused. */ function the_author_posts_link( $deprecated = '' ) { if ( ! empty( $deprecated ) ) { _deprecated_argument( __FUNCTION__, '2.1.0' ); } echo get_the_author_posts_link(); } /** * Retrieves the URL to the author page for the user with the ID provided. * * @since 2.1.0 * * @global WP_Rewrite $wp_rewrite WordPress rewrite component. * * @param int $author_id Author ID. * @param string $author_nicename Optional. The author's nicename (slug). Default empty. * @return string The URL to the author's page. */ function get_author_posts_url( $author_id, $author_nicename = '' ) { global $wp_rewrite; $author_id = (int) $author_id; $link = $wp_rewrite->get_author_permastruct(); if ( empty( $link ) ) { $file = home_url( '/' ); $link = $file . '?author=' . $author_id; } else { if ( '' === $author_nicename ) { $user = get_userdata( $author_id ); if ( ! empty( $user->user_nicename ) ) { $author_nicename = $user->user_nicename; } } $link = str_replace( '%author%', $author_nicename, $link ); $link = home_url( user_trailingslashit( $link ) ); } /** * Filters the URL to the author's page. * * @since 2.1.0 * * @param string $link The URL to the author's page. * @param int $author_id The author's ID. * @param string $author_nicename The author's nice name. */ $link = apply_filters( 'author_link', $link, $author_id, $author_nicename ); return $link; } /** * Lists all the authors of the site, with several options available. * * @link https://developer.wordpress.org/reference/functions/wp_list_authors/ * * @since 1.2.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param string|array $args { * Optional. Array or string of default arguments. * * @type string $orderby How to sort the authors. Accepts 'nicename', 'email', 'url', 'registered', * 'user_nicename', 'user_email', 'user_url', 'user_registered', 'name', * 'display_name', 'post_count', 'ID', 'meta_value', 'user_login'. Default 'name'. * @type string $order Sorting direction for $orderby. Accepts 'ASC', 'DESC'. Default 'ASC'. * @type int $number Maximum authors to return or display. Default empty (all authors). * @type bool $optioncount Show the count in parenthesis next to the author's name. Default false. * @type bool $exclude_admin Whether to exclude the 'admin' account, if it exists. Default true. * @type bool $show_fullname Whether to show the author's full name. Default false. * @type bool $hide_empty Whether to hide any authors with no posts. Default true. * @type string $feed If not empty, show a link to the author's feed and use this text as the alt * parameter of the link. Default empty. * @type string $feed_image If not empty, show a link to the author's feed and use this image URL as * clickable anchor. Default empty. * @type string $feed_type The feed type to link to. Possible values include 'rss2', 'atom'. * Default is the value of get_default_feed(). * @type bool $echo Whether to output the result or instead return it. Default true. * @type string $style If 'list', each author is wrapped in an `<li>` element, otherwise the authors * will be separated by commas. * @type bool $html Whether to list the items in HTML form or plaintext. Default true. * @type int[]|string $exclude Array or comma/space-separated list of author IDs to exclude. Default empty. * @type int[]|string $include Array or comma/space-separated list of author IDs to include. Default empty. * } * @return void|string Void if 'echo' argument is true, list of authors if 'echo' is false. */ function wp_list_authors( $args = '' ) { global $wpdb; $defaults = array( 'orderby' => 'name', 'order' => 'ASC', 'number' => '', 'optioncount' => false, 'exclude_admin' => true, 'show_fullname' => false, 'hide_empty' => true, 'feed' => '', 'feed_image' => '', 'feed_type' => '', 'echo' => true, 'style' => 'list', 'html' => true, 'exclude' => '', 'include' => '', ); $parsed_args = wp_parse_args( $args, $defaults ); $return = ''; $query_args = wp_array_slice_assoc( $parsed_args, array( 'orderby', 'order', 'number', 'exclude', 'include' ) ); $query_args['fields'] = 'ids'; /** * Filters the query arguments for the list of all authors of the site. * * @since 6.1.0 * * @param array $query_args The query arguments for get_users(). * @param array $parsed_args The arguments passed to wp_list_authors() combined with the defaults. */ $query_args = apply_filters( 'wp_list_authors_args', $query_args, $parsed_args ); $authors = get_users( $query_args ); $post_counts = array(); /** * Filters whether to short-circuit performing the query for author post counts. * * @since 6.1.0 * * @param int[]|false $post_counts Array of post counts, keyed by author ID. * @param array $parsed_args The arguments passed to wp_list_authors() combined with the defaults. */ $post_counts = apply_filters( 'pre_wp_list_authors_post_counts_query', false, $parsed_args ); if ( ! is_array( $post_counts ) ) { $post_counts = array(); $post_counts_query = $wpdb->get_results( "SELECT DISTINCT post_author, COUNT(ID) AS count FROM $wpdb->posts WHERE " . get_private_posts_cap_sql( 'post' ) . ' GROUP BY post_author' ); foreach ( (array) $post_counts_query as $row ) { $post_counts[ $row->post_author ] = $row->count; } } foreach ( $authors as $author_id ) { $posts = isset( $post_counts[ $author_id ] ) ? $post_counts[ $author_id ] : 0; if ( ! $posts && $parsed_args['hide_empty'] ) { continue; } $author = get_userdata( $author_id ); if ( $parsed_args['exclude_admin'] && 'admin' === $author->display_name ) { continue; } if ( $parsed_args['show_fullname'] && $author->first_name && $author->last_name ) { $name = sprintf( /* translators: 1: User's first name, 2: Last name. */ _x( '%1$s %2$s', 'Display name based on first name and last name' ), $author->first_name, $author->last_name ); } else { $name = $author->display_name; } if ( ! $parsed_args['html'] ) { $return .= $name . ', '; continue; // No need to go further to process HTML. } if ( 'list' === $parsed_args['style'] ) { $return .= '<li>'; } $link = sprintf( '<a href="%1$s" title="%2$s">%3$s</a>', esc_url( get_author_posts_url( $author->ID, $author->user_nicename ) ), /* translators: %s: Author's display name. */ esc_attr( sprintf( __( 'Posts by %s' ), $author->display_name ) ), $name ); if ( ! empty( $parsed_args['feed_image'] ) || ! empty( $parsed_args['feed'] ) ) { $link .= ' '; if ( empty( $parsed_args['feed_image'] ) ) { $link .= '('; } $link .= '<a href="' . get_author_feed_link( $author->ID, $parsed_args['feed_type'] ) . '"'; $alt = ''; if ( ! empty( $parsed_args['feed'] ) ) { $alt = ' alt="' . esc_attr( $parsed_args['feed'] ) . '"'; $name = $parsed_args['feed']; } $link .= '>'; if ( ! empty( $parsed_args['feed_image'] ) ) { $link .= '<img src="' . esc_url( $parsed_args['feed_image'] ) . '" style="border: none;"' . $alt . ' />'; } else { $link .= $name; } $link .= '</a>'; if ( empty( $parsed_args['feed_image'] ) ) { $link .= ')'; } } if ( $parsed_args['optioncount'] ) { $link .= ' (' . $posts . ')'; } $return .= $link; $return .= ( 'list' === $parsed_args['style'] ) ? '</li>' : ', '; } $return = rtrim( $return, ', ' ); if ( $parsed_args['echo'] ) { echo $return; } else { return $return; } } /** * Determines whether this site has more than one author. * * Checks to see if more than one author has published posts. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 3.2.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @return bool Whether or not we have more than one author */ function is_multi_author() { global $wpdb; $is_multi_author = get_transient( 'is_multi_author' ); if ( false === $is_multi_author ) { $rows = (array) $wpdb->get_col( "SELECT DISTINCT post_author FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' LIMIT 2" ); $is_multi_author = 1 < count( $rows ) ? 1 : 0; set_transient( 'is_multi_author', $is_multi_author ); } /** * Filters whether the site has more than one author with published posts. * * @since 3.2.0 * * @param bool $is_multi_author Whether $is_multi_author should evaluate as true. */ return apply_filters( 'is_multi_author', (bool) $is_multi_author ); } /** * Helper function to clear the cache for number of authors. * * @since 3.2.0 * @access private */ function __clear_multi_author_cache() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore delete_transient( 'is_multi_author' ); }
Save
cmd:
run