PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 3.0.5
Admin Columns v3.0.5
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 / Settings / Column / PostLink.php
codepress-admin-columns / classes / Settings / Column Last commit date
BeforeAfter 8 years ago ActionIcons.php 8 years ago AttachmentDisplay.php 8 years ago BeforeAfter.php 8 years ago CharacterLimit.php 8 years ago CommentCount.php 8 years ago CustomField.php 8 years ago CustomFieldType.php 8 years ago Date.php 8 years ago ExifData.php 8 years ago Image.php 8 years ago Images.php 8 years ago Label.php 8 years ago LinkLabel.php 8 years ago LinkToMenu.php 8 years ago Message.php 8 years ago Meta.php 8 years ago MissingImageSize.php 8 years ago NumberOfItems.php 8 years ago Password.php 8 years ago PathScope.php 8 years ago Post.php 8 years ago PostFormatIcon.php 8 years ago PostLink.php 8 years ago PostType.php 8 years ago Separator.php 8 years ago StatusIcon.php 8 years ago StringLimit.php 8 years ago Taxonomy.php 8 years ago Term.php 8 years ago Toggle.php 8 years ago Type.php 8 years ago User.php 8 years ago Width.php 8 years ago WordLimit.php 8 years ago WordsPerMinute.php 8 years ago
PostLink.php
110 lines
1 <?php
2
3 if ( ! defined( 'ABSPATH' ) ) {
4 exit;
5 }
6
7 class AC_Settings_Column_PostLink extends AC_Settings_Column
8 implements AC_Settings_FormatValueInterface {
9
10 /**
11 * @var string
12 */
13 protected $post_link_to;
14
15 protected function define_options() {
16 return array(
17 'post_link_to' => 'edit_post',
18 );
19 }
20
21 public function format( $value, $original_value ) {
22 $id = $original_value;
23
24 switch ( $this->get_post_link_to() ) {
25 case 'edit_post' :
26 $link = get_edit_post_link( $id );
27
28 break;
29 case 'view_post' :
30 $link = get_permalink( $id );
31
32 break;
33 case 'edit_author' :
34 $link = get_edit_user_link( ac_helper()->post->get_raw_field( 'post_author', $id ) );
35
36 break;
37 case 'view_author' :
38 $link = get_author_posts_url( ac_helper()->post->get_raw_field( 'post_author', $id ) );
39
40 break;
41 default :
42 $link = false;
43 }
44
45 if ( $link ) {
46 $value = ac_helper()->html->link( $link, $value );
47 }
48
49 return $value;
50 }
51
52 public function create_view() {
53 $select = $this->create_element( 'select' )->set_options( $this->get_display_options() );
54
55 $view = new AC_View( array(
56 'label' => __( 'Link To', 'codepress-admin-columns' ),
57 'setting' => $select,
58 ) );
59
60 return $view;
61 }
62
63 protected function get_display_options() {
64 // Default options
65 $options = array(
66 '' => __( 'None' ),
67 'edit_post' => __( 'Edit Post' ),
68 'view_post' => __( 'View Post' ),
69 'edit_author' => __( 'Edit Post Author', 'codepress-admin-columns' ),
70 'view_author' => __( 'View Public Post Author Page', 'codepress-admin-columns' ),
71 );
72
73 if ( $this->column instanceof AC_Column_RelationInterface ) {
74 $relation_options = array(
75 'edit_post' => _x( 'Edit %s', 'post' ),
76 'view_post' => _x( 'View %s', 'post' ),
77 'edit_author' => _x( 'Edit %s Author', 'post', 'codepress-admin-columns' ),
78 'view_author' => _x( 'View Public %s Author Page', 'post', 'codepress-admin-columns' ),
79 );
80
81 $label = $this->column->get_relation_object()->get_labels()->singular_name;
82
83 foreach ( $relation_options as $k => $option ) {
84 $options[ $k ] = sprintf( $option, $label );
85 }
86 }
87
88 return $options;
89 }
90
91 /**
92 * @return string
93 */
94 public function get_post_link_to() {
95 return $this->post_link_to;
96 }
97
98 /**
99 * @param string $post_link_to
100 *
101 * @return bool
102 */
103 public function set_post_link_to( $post_link_to ) {
104 $this->post_link_to = $post_link_to;
105
106 return true;
107 }
108
109 }
110