Показывать изображение профиля Google в комментариях Wordpress. если автор gmail.com иначе gravatar

Я хотел бы показать автору комментариев изображение профиля Google, если он ввел адрес электронной почты gmail.com, иначе я покажу граватар в комментариях.

С моими ограничениями в кодировании мне удалось поместить пример кода для дальнейшего построения:

function comment_image() {
$email = get_avatar(get_comment_author_email());

$domains = array('gmail.com', 'google.com');

$pattern = "/^[a-z0-9._%+-]+@[a-z0-9.-]*(" . implode('|', $domains) . ")$/i";

if (preg_match($pattern, $email)) {

    function email_to_userid() {
        // get user id of the email address - [email protected]
        //request google profile image url eg: https://www.googleapis.com/plus/v1/people/123456789?fields=image&key={API_KEY}
        // above will retun URL:  "url": "https://lh3.googleusercontent.com/-abcdef/bbbbbas/photo.jpg?sz=50"
        // return the image URL
    }
}
   } elseif; {
   echo get_avatar($comment, 60);
}

Я вызову указанную выше функцию в моем шаблоне комментариев, чтобы отобразить изображение:

<?php echo comments_image(); ?>

Заранее спасибо за это замечательное сообщество.


person theKing    schedule 11.03.2016    source источник
comment
Кажется, у вас фигурные скобки не в том месте. #рифма   -  person docksteaderluke    schedule 11.03.2016
comment
да, я согласен, что это неправильный код, я не программист. Нужна помощь в установке правильного кода и функции.   -  person theKing    schedule 12.03.2016


Ответы (1)


Если проблема чисто синтаксическая, это должно помочь:

function comments_image() {
  $email = get_avatar(get_comment_author_email());

  $domains = array('gmail.com', 'google.com');

  $pattern = "/^[a-z0-9._%+-]+@[a-z0-9.-]*(" . implode('|', $domains) . ")$/i";
  if (preg_match($pattern, $email)) {
    email_to_userid($email);
  } elseif {
    echo get_avatar($comment, 60);
  }
}

function email_to_userid($email) {
  // get user id of the email address - [email protected]
  // request google profile image url eg: https://www.googleapis.com/plus/v1/people/123456789?fields=image&key={API_KEY}
  // above will retun URL:  "url": "https://lh3.googleusercontent.com/-abcdef/bbbbbas/photo.jpg?sz=50"
  // return the image URL
 }
person docksteaderluke    schedule 13.03.2016
comment
спасибо за вышеизложенное. Не могли бы вы помочь с function email_to_userid($email). Если почтовый идентификатор Gmail, необходимо получить изображение профиля. - person theKing; 18.03.2016
comment
@theKing Я не могу делать за тебя домашнее задание. Покажи мне, что ты уже пробовал! - person docksteaderluke; 22.03.2016