Intereting Posts
Нельзя разместить два пользовательских типа сообщений в поисковом запросе WordPress? Какова хорошая стратегия для планирования роста WordPress DB? «Добавить медиа» показывает только «Полный размер» в настройках отображения вложений Заказ пользователей определенной роли по фамилии Удаление определенных терминов, появляющихся на лицевой стороне, в виде ссылок Как группировать неиерархические теги? JQuery загружает php-php-файл без шаблона Гарантируются ли несколько значений из get_post_meta? wordpress wp_list_categories Как сохранить перевод плагина в «Локализация CodeStyling»? Измените товар в корзине при изменении страны выставления счетов Как я могу использовать CURLOPT_USERPWD в wp_remote_post? Как авто gen. значения пользовательских сообщений в других настраиваемых типах сообщений в URL-адресе? WP-TweetButton не отображает кнопку твита, если для этого установлено значение «Вручную». загрузка бэкэнд-файлов в бэкэнд вместо сохранения при нажатии на обновление или сохранение изменений

проверьте, является ли пользователь владельцем текущей страницы

Я боюсь этой маленькой проблемы. У меня есть страница профиля пользователя, и я хочу изменить часть контента на основе того, является ли это моим собственным профилем для кого-то. Это мой код для добавления короткого кода, который в конечном итоге вызовет другие короткие коды.

function is_mine_func() { if (is_author() ) { echo 'it is my site'; // echo do_shortcode('[wpfepp_submission_form form="2"]' ); } else { echo 'its not your site'; //echo do_shortcode('[userpro template=postsbyuser postsbyuser_mode=grid]' ); } } add_shortcode( 'minminmin', 'is_mine_func' ); 

У меня такое чувство, что is_author – неправильный способ сделать это, так как я всегда получаю сообщение «не ваш сайт» независимо от того, являюсь ли я автором страницы или нет.

Должен ли is_author () не оценивать, являюсь ли я автором этой «страницы» или нет?

Для Codex is_author() проверяет, находится ли вы на странице « is_author() например, страница, в которой перечислены все сообщения / страницы / etc, которые данный автор создал). Если вы используете какой-либо другой тип страницы, is_author() вернет false .

То, что вы ищете, звучит по следующим направлениям:

 if ( in_the_loop() ) { get_currentuserinfo(); print ( get_the_author() === $GLOBALS['current_user']->display_name ) ? 'It is my site.' : 'It is not my site.'; } 

Этот код должен использоваться в Loop.

Рекомендации

  • is_author()
  • get_the_author()
  • get_currentuserinfo()
  • in_the_loop()

Я бы попытался использовать идентификаторы автора, а не имя пользователя:

 if ( get_current_user_id() == get_the_author_meta( 'ID' ) ) { echo "It is my site."; else { echo "It's not my site"; }; 

Рекомендации

  • get_current_user_id
  • get_the_author_meta