Пользователи — Несколько Авторов С Разными «Ролями Автора».

  • Автор темы Sheaccibereri17
  • Обновлено
  • 21, Oct 2024
  • #1
;

Я использую плагин Co-Authors Plus для управления несколькими авторами в электронном журнале, но я пытаюсь пойти дальше и указать «авторов текста», «авторов фотографий» и «авторов видео», поэтому добавляю новое поле в профиле автора для указания роли (писатель, фотограф, видеооператор) и попытка отобразить дополнительную метаинформацию в файле single.php и на главной странице (через виджет).

Это новая функция в файле function.php:

<?php $i = new CoAuthorsIterator(); ?>      
<span class="post-meta"><?php while($i->iterate()){ ?>
<?php if(get_the_author_meta('role') == "writer"){ ?>
<span class="author-social text"><?php _e('Text:','alegria'); ?>
<?php } else { ?>
<span class="author-social photo"><?php _e('Photo:','alegria'); ?>
<?php } ;?></span>
<?php the_author_posts_link(); ?>
<?php if(get_the_author_meta('twitter')) : ?>
<a href="http://twitter.com/<?php echo the_author_meta('twitter'); ?>" class="author-twitter" title="Следуйте <?php echo $authorname; ?> в Твиттере">@<?php echo the_author_meta('twitter'); ?></a> 
<?php endif ;?>

А это вывод в файле single.php и в виджете, который предназначен для отображения роли перед именем автора и ссылкой на учетную запись Twitter или Facebook (например, Текст: Джон Доу @johndoe · Фото: Джон Уильямс @ фотоуильямс):

// Add Twitter, Facebook and Role profile field in user profiles.
function add_twitter_contactmethod( $contactmethods ) {
// Add Twitter
$contactmethods['twitter'] = 'Twitter';
// Add Facebook
$contactmethods['facebook'] = 'Facebook';
// Add Role
$contactmethods['role'] = 'Role (writer / photo / video)';
return $contactmethods;
}
add_filter('user_contactmethods','add_twitter_contactmethod',10,1);

Это работает нормально, но я пытался добавить третью возможность, которая включает роль «видео» (если роль «видео», то перед именем автора покажите «Видео:»).

Я имел дело с новыми экземплярами «if(get_the_author_meta('role')» и «elseif», но интуитивно, поскольку я не программист и очень мало знаю о PHP и условных предложениях.

Может ли кто-нибудь указать мне правильный путь для достижения того, что я ищу?

Спасибо.

#пользователи

Sheaccibereri17


Рег
16 Sep, 2009

Тем
73

Постов
187

Баллов
582
Похожие темы Дата
Похожие темы
Php – Почему Я Не Могу Добавить Собственное Изображение В Свою Навигацию?
Могу Ли Я Забыть О Цикле Сообщений Внутри Шаблона Страницы?
Отображение Заголовка/Описания/Подписи Пользовательских Изображений На Главной Странице
Фильтры — Как Сделать Количество Сообщений И Комментариев Недоступным Для Кликов С Помощью Хука Dashboard_Glance_Items
Пользовательские Типы Сообщений. Нужна Помощь С Простыми Проверками Оператора If Для Вывода Конкретных Данных Cpt В Зависимости От Того, Что Клиент Загружает/Заполняет.
Разработка Плагинов - Wp Gutenberg Blocks - Как Ограничить Первые/Корневые Блоки
Карта Google Не Отображается
Cdn — Предупреждения, Даже Если Для Wp_Debug Установлено Значение False
Получить Часть Шаблона – Как Использовать Get_Template_Part()?
Загрузки — Более Быстрый Способ Размещения Изображений В Сообщении Блога С Помощью Диалогового Окна «Добавить Медиафайлы».
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно