%PDF- %PDF-
Direktori : /var/www/businessmultisite/wp-content/plugins/timber-library/lib/Integrations/ |
Current File : /var/www/businessmultisite/wp-content/plugins/timber-library/lib/Integrations/CoAuthorsPlus.php |
<?php namespace Timber\Integrations; class CoAuthorsPlus { public static $prefer_gravatar = false; /** * @codeCoverageIgnore */ public function __construct() { add_filter('timber/post/authors', array($this, 'authors'), 10, 2); } /** * Filters {{ post.authors }} to return authors stored from Co-Authors Plus * @since 1.1.4 * @param array $author * @param Post $post * @return array of User objects */ public function authors( $author, $post ) { $authors = array(); $cauthors = get_coauthors($post->ID); foreach ( $cauthors as $author ) { $uid = $this->get_user_uid( $author ); if ( $uid ) { $authors[] = new \Timber\User($uid); } else { $authors[] = new CoAuthorsPlusUser($author); } } return $authors; } /** * return the user id for normal authors * the user login for guest authors if it exists and self::prefer_users == true * or null * @internal * @param object $cauthor * @return int|string|null */ protected function get_user_uid( $cauthor ) { // if is guest author if( is_object($cauthor) && isset($cauthor->type) && $cauthor->type == 'guest-author'){ // if have have a linked user account global $coauthors_plus; if( !$coauthors_plus->force_guest_authors && isset($cauthor->linked_account) && !empty($cauthor->linked_account ) ){ return $cauthor->linked_account; } else { return null; } } else { return $cauthor->ID; } } }