Пример #1
0
 /**
  * @return array
  */
 protected function _getAuthorData()
 {
     $result = array();
     $whitelist = IfwPsn_Wp_Proxy_Filter::apply('psn_notification_placeholders_author_data_whitelist', array('ID', 'user_login', 'user_email', 'user_url', 'user_registered', 'display_name', 'user_firstname', 'user_lastname', 'nickname', 'user_description'));
     if (empty($this->_post->post_author)) {
         // for generating placeholder list on backend help pages (just for the placeholders)
         $userId = IfwPsn_Wp_Proxy_User::getCurrentUserId();
     } else {
         $userId = (int) $this->_post->post_author;
     }
     $userdata = IfwPsn_Wp_Proxy_User::getData($userId);
     if ($userdata instanceof WP_User) {
         foreach ($whitelist as $prop) {
             if (!$userdata->has_prop($prop)) {
                 continue;
             }
             if (strpos($prop, 'user_') === 0) {
                 $placeholder = str_replace('user_', 'author_', $prop);
             } else {
                 $placeholder = 'author_' . $prop;
             }
             $result[$placeholder] = $userdata->get($prop);
         }
     }
     return $result;
 }