在header.php中显示站点管理员配置文件字段

时间:2013-10-02 作者:730wavy

我正在进行一个多站点设置,我正在尝试显示站点所有者配置文件中的一些元数据。我尝试了以下代码,但它响应的是超级管理员的meta,而不是当前的站点管理员--

 <?php $user_id_from_email = get_user_id_from_string( get_blog_option(get_current_blog_id(), \'admin_email\'));

$current_site_admin = get_userdata($user_id_from_email);

$twitt = (get_user_meta($current_site_admin, \'twitter\', true)); ?>
<?php echo $twitt; ?>
因为网络上有很多站点,只有一个管理员,所以我尝试动态检索这些信息。有没有办法解决这个问题?

谢谢

1 个回复
最合适的回答,由SO网友:730wavy 整理而成

好吧,我想了个办法。如果其他人感兴趣,下面是代码。它首先获取博客管理员的用户id,然后使用该id从概要文件字段中提取meta。

对于一个字段--

<?php
$thisblog = $current_blog->blog_id;

$user_id_from_email = get_user_id_from_string( get_blog_option($thisblog, \'admin_email\'));

$twitt = (get_user_meta($user_id_from_email, \'twitter\', true)); ?>
<?php echo $twitt; ?>
和显示多个字段--

<?php

    $thisblog = $current_blog->blog_id;

    $user_id_from_email = get_user_id_from_string( get_blog_option($thisblog, \'admin_email\'));

    $twitt = (get_user_meta($user_id_from_email, \'twitter\', true));
    $fb = (get_user_meta($user_id_from_email, \'facebook\', true)); ?>
    <?php echo $fb; ?>
    <?php echo $twitt; ?>

结束