PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 2.0.1
Admin Columns v2.0.1
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 / column / post / author-name.php
codepress-admin-columns / classes / column / post Last commit date
ID.php 12 years ago actions.php 12 years ago attachment-count.php 12 years ago attachment.php 12 years ago author-name.php 12 years ago before-moretag.php 12 years ago comment-count.php 12 years ago comment-status.php 12 years ago excerpt.php 12 years ago featured-image.php 12 years ago formats.php 12 years ago modified.php 12 years ago order.php 12 years ago page-template.php 12 years ago parent.php 12 years ago ping-status.php 12 years ago roles.php 12 years ago slug.php 12 years ago status.php 12 years ago sticky.php 12 years ago taxonomy.php 12 years ago word-count.php 12 years ago
author-name.php
117 lines
1 <?php
2 /**
3 * CPAC_Column_Post_Author_Name
4 *
5 * @since 2.0.0
6 */
7 class CPAC_Column_Post_Author_Name extends CPAC_Column {
8
9 function __construct( $storage_model ) {
10
11 $this->properties['type'] = 'column-author_name';
12 $this->properties['label'] = __( 'Display Author As', 'cpac' );
13 $this->properties['is_cloneable'] = true;
14
15 // define additional options
16 $this->options['display_author_as'] = '';
17
18 parent::__construct( $storage_model );
19 }
20
21 /**
22 * Get author field by nametype
23 *
24 * Used by posts and sortable
25 *
26 * @since 2.0.0
27 *
28 * @return array Authortypes
29 */
30 private function get_nametypes() {
31
32 $nametypes = array(
33 'display_name' => __( 'Display Name', 'cpac' ),
34 'first_name' => __( 'First Name', 'cpac' ),
35 'last_name' => __( 'Last Name', 'cpac' ),
36 'nickname' => __( 'Nickname', 'cpac' ),
37 'user_login' => __( 'User Login', 'cpac' ),
38 'user_email' => __( 'User Email', 'cpac' ),
39 'ID' => __( 'User ID', 'cpac' ),
40 'first_last_name' => __( 'First and Last Name', 'cpac' ),
41 );
42
43 return $nametypes;
44 }
45
46 /**
47 * Get display name.
48 *
49 * Can also be used by addons.
50 *
51 * @since 2.0.0
52 */
53 public function get_display_name( $user_id ) {
54
55 $name = '';
56
57 if ( ! $userdata = get_userdata( $user_id ) )
58 return false;
59
60 $display_as = $this->options->display_author_as;
61
62 // first check variables in userdata
63 if ( ! empty( $userdata->{$display_as} ) ) {
64 $name = $userdata->{$display_as};
65 }
66
67 elseif ( 'first_last_name' == $display_as ) {
68 $first = !empty($userdata->first_name) ? $userdata->first_name : '';
69 $last = !empty($userdata->last_name) ? " {$userdata->last_name}" : '';
70 $name = $first.$last;
71 }
72
73 return $name;
74 }
75
76
77 /**
78 * @see CPAC_Column::get_value()
79 * @since 2.0.0
80 */
81 function get_value( $post_id ) {
82
83 $value = '';
84
85 $nametypes = $this->get_nametypes();
86 if ( isset( $nametypes[ $this->options->display_author_as ] ) ) {
87 if( $author = get_post_field( 'post_author', $post_id ) ) {
88 $value = $this->get_display_name( $author );
89 }
90 }
91
92 return $value;
93 }
94
95 /**
96 * Display Settings
97 *
98 * @see CPAC_Column::display_settings()
99 * @since 2.0.0
100 */
101 function display_settings() {
102
103 ?>
104
105 <tr class="column-author-name">
106 <?php $this->label_view( $this->properties->label, __( 'This is the format of the author name.', 'cpac' ), 'display_author_as' ); ?>
107 <td class="input">
108 <select name="<?php $this->attr_name( 'display_author_as' ); ?>" id="<?php $this->attr_id( 'display_author_as' ); ?>">
109 <?php foreach ( $this->get_nametypes() as $key => $label ) : ?>
110 <option value="<?php echo $key; ?>"<?php selected( $key, $this->options->display_author_as ) ?>><?php echo $label; ?></option>
111 <?php endforeach; ?>
112 </select>
113 </td>
114 </tr>
115 <?php
116 }
117 }