当前位置: 首页>>代码示例>>PHP>>正文


PHP add_user_to_blog函数代码示例

本文整理汇总了PHP中add_user_to_blog函数的典型用法代码示例。如果您正苦于以下问题:PHP add_user_to_blog函数的具体用法?PHP add_user_to_blog怎么用?PHP add_user_to_blog使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了add_user_to_blog函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: jquery_install_remaining_sites

function jquery_install_remaining_sites($user)
{
    $domains = jquery_domains();
    $default_options = jquery_default_site_options();
    $default_options['admin_email'] = $user->user_email;
    foreach ($domains as $domain => $details) {
        if (1 !== $details['blog_id']) {
            $blog_id = insert_blog(JQUERY_STAGING_PREFIX . $domain, '/', 1);
            if ($blog_id != $details['blog_id']) {
                wp_die("Something went very wrong when trying to install {$domain} as site {$blog_id}-{$details['blog_id']}. Find nacin.");
            }
            switch_to_blog($blog_id);
            install_blog($blog_id, $details['options']['blogname']);
            add_user_to_blog($blog_id, $user->ID, 'administrator');
        }
        $options = array_merge($default_options, $details['options']);
        foreach ($options as $option => $value) {
            update_option($option, $value);
        }
        // Work around a superficial bug in install_blog(), fixed in WP r21172.
        $home = untrailingslashit(get_option('home'));
        $siteurl = untrailingslashit(get_option('siteurl'));
        update_option('home', 'http://example.com');
        // Please just don't ask.
        update_option('siteurl', 'http://example.com');
        update_option('home', $home);
        update_option('siteurl', $siteurl);
        flush_rewrite_rules();
        restore_current_blog();
    }
}
开发者ID:ravasthi,项目名称:web-base-template,代码行数:31,代码来源:install.php

示例2: jquery_install_site

function jquery_install_site($site, $user)
{
    $sites = jquery_sites();
    $details = $sites[$site];
    if (strpos($site, '/')) {
        list($domain, $path) = explode('/', $site, 2);
        $path = '/' . trim($path, '/') . '/';
    } else {
        $domain = $site;
        $path = '/';
    }
    $default_options = jquery_default_site_options();
    $default_options['admin_email'] = $user->user_email;
    if (1 !== $details['blog_id']) {
        $blog_id = insert_blog(JQUERY_STAGING_PREFIX . $domain, $path, 1);
        if ($blog_id != $details['blog_id']) {
            wp_die("Something went very wrong when trying to install {$domain} as site {$blog_id}-{$details['blog_id']}. Find nacin.");
        }
        switch_to_blog($blog_id);
        install_blog($blog_id, $details['options']['blogname']);
        add_user_to_blog($blog_id, $user->ID, 'administrator');
    }
    $options = array_merge($default_options, $details['options']);
    foreach ($options as $option => $value) {
        update_option($option, $value);
    }
    delete_option('rewrite_rules');
    restore_current_blog();
}
开发者ID:hryniu555,项目名称:jquery-wp-content,代码行数:29,代码来源:install.php

示例3: maybe_import_post

 function maybe_import_post($guid, $post_arr)
 {
     $results = array();
     if ($this->post_exists($guid)) {
         $results[] = "<p>{$guid} already exists</p>";
     } else {
         $results[] = "<p>{$guid} does not alread exist</p>";
         $post_title = $post_arr['title'];
         $post_content = $post_arr['content'];
         $author_exists = $this->author_exists($post_arr['author']);
         if (!$author_exists) {
             $results[] = "<p>{$guid} author does not already exist</p>";
             $author_id = $this->import_author($post_arr['author']);
             if (!empty($author_id)) {
                 $results[] = "<p>{$guid} author added as author_id {$author_id}</p>";
             }
         } else {
             $results[] = "<p>{$guid} author already exists as id {$author_exists}</p>";
             $author_id = $author_exists;
             add_user_to_blog(get_current_blog_id(), $author_id, 'subscriber');
         }
         $post_excerpt = $post_arr['description'];
         $args = array('post_title' => $post_title, 'post_content' => $post_content, 'post_author' => $author_id, 'post_excerpt' => $post_excerpt);
         $new_post_id = wp_insert_post($args);
         if (!empty($new_post_id)) {
             $results[] = "<p>{$guid} was inserted as post ID {$new_post_id}</p>";
             add_post_meta($new_post_id, SJF_GF . "-guid", $guid, TRUE);
         } else {
             $results[] = "<p>{$guid} could not be inserted</p>";
         }
     }
     return $results;
 }
开发者ID:scofennell,项目名称:SJF-Get-Fed,代码行数:33,代码来源:import.php

示例4: test_get_active_blog_for_user_with_spam_site

 /**
  * @ticket 38355
  */
 public function test_get_active_blog_for_user_with_spam_site()
 {
     $current_site_id = get_current_blog_id();
     $site_id = self::factory()->blog->create(array('user_id' => self::$user_id, 'meta' => array('spam' => 1)));
     add_user_to_blog($site_id, self::$user_id, 'subscriber');
     update_user_meta(self::$user_id, 'primary_blog', $site_id);
     $result = get_active_blog_for_user(self::$user_id);
     wpmu_delete_blog($site_id, true);
     $this->assertEquals($current_site_id, $result->id);
 }
开发者ID:aaemnnosttv,项目名称:develop.git.wordpress.org,代码行数:13,代码来源:getActiveBlogForUser.php

示例5: on_activate_user

 function on_activate_user($user_id, $password, $meta)
 {
     $default_role = get_option('default_role');
     $blogid = empty($meta['register_blog_id']) ? 1 : intval($meta['register_blog_id']);
     add_user_to_blog(1, $user_id, $default_role);
     add_user_to_blog($blogid, $user_id, $default_role);
     if ($this->debug) {
         $this->write_to_log('Activate:' . print_r($meta, true));
     }
 }
开发者ID:httvncoder,项目名称:151722441,代码行数:10,代码来源:wpmu-assist.php

示例6: join_site

 static function join_site()
 {
     global $current_user, $blog_id;
     $jmm_options = get_option('helfjmm_options');
     if (!is_user_logged_in()) {
         return false;
     }
     if (!is_user_member_of_blog()) {
         add_user_to_blog($blog_id, $current_user->ID, $jmm_options['role']);
     }
 }
开发者ID:akshayxhtmljunkies,项目名称:brownglock,代码行数:11,代码来源:joinmymultisite.php

示例7: test_author_queried_object_fix

 /**
  * On author pages, the queried object should only be set
  * to a user that's not a member of the blog if they
  * have at least one published post. This matches core behavior.
  *
  * @see https://core.trac.wordpress.org/changeset/27290
  */
 function test_author_queried_object_fix()
 {
     global $wp_rewrite, $coauthors_plus;
     /**
      * Set up
      */
     $author1 = $this->factory->user->create(array('user_login' => 'msauthor1'));
     $author2 = $this->factory->user->create(array('user_login' => 'msauthor2'));
     $blog2 = $this->factory->blog->create(array('user_id' => $author1));
     switch_to_blog($blog2);
     $wp_rewrite->init();
     $blog2_post1 = $this->factory->post->create(array('post_status' => 'publish', 'post_content' => rand_str(), 'post_title' => rand_str(), 'post_author' => $author1));
     /**
      * Author 1 is an author on the blog
      */
     $this->go_to(get_author_posts_url($author1));
     $this->assertQueryTrue('is_author', 'is_archive');
     /**
      * Author 2 is not yet an author on the blog
      */
     $this->go_to(get_author_posts_url($author2));
     $this->assertQueryTrue('is_404');
     // Add the user to the blog
     add_user_to_blog($blog2, $author2, 'author');
     /**
      * Author 2 is now on the blog, but not yet published
      */
     $this->go_to(get_author_posts_url($author2));
     $this->assertQueryTrue('is_author', 'is_archive');
     // Add the user as an author on the original post
     $author2_obj = get_user_by('id', $author2);
     $coauthors_plus->add_coauthors($blog2_post1, array($author2_obj->user_login), true);
     /**
      * Author 2 is now on the blog, and published
      */
     $this->go_to(get_author_posts_url($author2));
     $this->assertQueryTrue('is_author', 'is_archive');
     // Remove the user from the blog
     remove_user_from_blog($author2, $blog2);
     /**
      * Author 2 was removed from the blog, but still a published author
      */
     $this->go_to(get_author_posts_url($author2));
     $this->assertQueryTrue('is_author', 'is_archive');
     // Delete the user from the network
     wpmu_delete_user($author2);
     /**
      * Author 2 is no more
      */
     $this->go_to(get_author_posts_url($author2));
     $this->assertQueryTrue('is_404');
     $this->assertEquals(false, get_user_by('id', $author2));
     restore_current_blog();
 }
开发者ID:voceconnect,项目名称:Co-Authors-Plus,代码行数:61,代码来源:test-author-queries.php

示例8: test_get_dashboard_url_for_administrator_of_different_site

 /**
  * @ticket 39065
  */
 public function test_get_dashboard_url_for_administrator_of_different_site()
 {
     if (!is_multisite()) {
         $this->markTestSkipped('Test only runs in multisite.');
     }
     $site_id = self::factory()->blog->create(array('user_id' => self::$user_id));
     remove_user_from_blog(self::$user_id, get_current_blog_id());
     $expected = get_admin_url($site_id);
     $result = get_dashboard_url(self::$user_id);
     remove_user_from_blog(self::$user_id, $site_id);
     add_user_to_blog(get_current_blog_id(), self::$user_id, 'administrator');
     wpmu_delete_blog($site_id, true);
     $this->assertEquals($expected, $result);
 }
开发者ID:CompositeUK,项目名称:clone.WordPress-Develop,代码行数:17,代码来源:getDashboardUrl.php

示例9: ns_wp_add_user

/**
 * Create / Add users
 */
function ns_wp_add_user($target_id, $useremail, $username, $userpass = '', $userrole = 'administrator', $logfile = false)
{
    global $ns_cloner;
    ns_log_write("ENTER ns_wp_add_user - target_id:{$target_id}, useremail:{$useremail}, username:{$username}, userrole:{$userrole}", $logfile);
    $useremail = stripslashes($useremail);
    $username = stripslashes($username);
    $userpass = stripslashes($userpass);
    $user_by_email = get_user_by('email', $useremail);
    $user_by_username = get_user_by('username', $username);
    // check for existing user by email
    if (!empty($user_by_email)) {
        $user_id = $user_by_email->ID;
        ns_log_write("Found user with email '{$useremail}' (id={$user_id})", $logfile);
    } elseif (!empty($user_by_username)) {
        $user_id = $user_by_username->ID;
        ns_log_write("Found user with username '{$username}' (id={$user_id})", $logfile);
    } else {
        if (empty($userpass) || $userpass == strtolower('null')) {
            $userpass = wp_generate_password();
        }
        $user_id = wpmu_create_user($username, $userpass, $useremail);
        if ($user_id != false) {
            ns_log_write("Created new user '{$username}' with email '{$useremail}'", $logfile);
            // send notification to new users if the option is set
            if (isset($ns_cloner->request['do_user_notify'])) {
                wpmu_welcome_notification($target_id, $user_id, $userpass, 'New Site with ID: ' . $target_id);
                ns_log_write("Sent welcome email to new user '{$username}' with email '{$useremail}'", $logfile);
            }
        } else {
            ns_log_write("Failed creating user '{$username}' with email '{$useremail}' - that username or email is probably already taken for a different user.", $logfile);
        }
    }
    // we now have a user id (or should) - give them privileges on this blog
    if (!empty($target_id) && !empty($user_id) && !empty($userrole)) {
        $result = add_user_to_blog($target_id, $user_id, $userrole);
        if ($result === true) {
            ns_log_write("Successfully added user with id {$user_id} to blog {$target_id}", $logfile);
        } else {
            $error_message = $result->get_error_message();
            ns_log_write("Failed adding user to blog. WP error: {$error_message}", $logfile);
        }
        return $result;
    } else {
        $error_message = "Target id, user id, or user role were empty";
        ns_log_write("Failed adding user to blog. {$error_message}", $logfile);
        return new WP_Error(false, $error_message);
    }
}
开发者ID:AlexanderDolgan,项目名称:ojahuri,代码行数:51,代码来源:ns-wp-utils.php

示例10: wpms_add_user_to_main_site

function wpms_add_user_to_main_site($user_id = null)
{
    global $wpdb;
    if (!is_multisite()) {
        return;
    }
    if (!$user_id) {
        $user_id = get_current_user_id();
    }
    if (defined('BLOG_ID_CURRENT_SITE')) {
        $main_site = BLOG_ID_CURRENT_SITE;
    } else {
        $main_site = 1;
    }
    add_user_to_blog($main_site, $user_id, 'subscriber');
}
开发者ID:JudeRosario,项目名称:wp-swissarmyknife,代码行数:16,代码来源:add-users-to-main-site.php

示例11: impose

 /**
  * Impose some state data onto a region
  * 
  * @param string $key Site slug
  * @param array $value Site data
  * @return true|WP_Error
  */
 public function impose($key, $value)
 {
     $site = $this->get_site($key);
     if (!$site) {
         $site = $this->create_site($key, $value);
         if (is_wp_error($site)) {
             return $site;
         }
     }
     switch_to_blog($site['blog_id']);
     foreach ($value as $field => $single_value) {
         switch ($field) {
             case 'title':
             case 'description':
                 $map = array('title' => 'blogname', 'description' => 'blogdescription');
                 update_option($map[$field], $single_value);
                 break;
             case 'active_theme':
                 if ($single_value !== get_option('stylesheet')) {
                     switch_theme($single_value);
                 }
                 break;
             case 'active_plugins':
                 foreach ($single_value as $plugin) {
                     if (!is_plugin_active($plugin)) {
                         activate_plugin($plugin);
                     }
                 }
                 break;
             case 'users':
                 foreach ($single_value as $user_login => $role) {
                     $user = get_user_by('login', $user_login);
                     if (!$user) {
                         continue;
                     }
                     add_user_to_blog($site['blog_id'], $user->ID, $role);
                 }
                 break;
         }
     }
     restore_current_blog();
     return true;
 }
开发者ID:2012summerain,项目名称:dictator,代码行数:50,代码来源:class-network-sites.php

示例12: widget_suscribe

 function widget_suscribe()
 {
     global $wpdb, $current_user;
     $options = get_option('widget_suscribe');
     $before_widget = "<li id='subscribe'>";
     $before_title = "<h2>";
     $title = empty($options['title']) ? 'Suscr&iacute;bete a este blog' : $options['title'];
     $after_title = "</h2>";
     $content = "";
     $after_widget = "</li>";
     //error_log("[widget subscribe] current blog: ". $wpdb->blogid);
     //error_log("[widget subscribe] current user: ". $current_user->ID);
     // User is already in blog database
     if (is_blog_user($wpdb->blogid)) {
         //error_log("[widget subscribe] is blog user");
         // User wants to unsubscribe
         if (isset($_POST['unsuscribe'])) {
             //error_log("[widget subscribe] POST[unsuscribe]");
             remove_user_from_blog($current_user->ID, $wpdb->blogid);
             $content .= '<p>Te has desuscrito de este blog</p>';
             $content .= widget_subscribe_form();
         } elseif ($current_user->has_cap('subscriber')) {
             //error_log("[widget subscribe] has_cap('subscriber')");
             $content .= widget_unsubscribe_form();
         } elseif ($current_user->has_cap('edit_posts')) {
             $content .= "<p>Este blog tiene activado el widget de suscripci&oacute;n</p>";
         }
     } else {
         //error_log("[widget subscribe] not in log");
         // User wants to subscribe
         if (isset($_POST['suscribe'])) {
             //error_log("[widget subscribe] POST[suscribe]");
             add_user_to_blog($wpdb->blogid, $current_user->ID, 'subscriber');
             $content .= '<p>Te has suscrito a este blog</p>';
             $content .= widget_unsubscribe_form();
         } else {
             //error_log("[widget subscribe] subscribe form");
             $content .= widget_subscribe_form();
         }
     }
     echo $before_widget . $before_title . $title . $after_title . $content . $after_widget;
 }
开发者ID:alx,项目名称:blogsfera,代码行数:42,代码来源:widget-suscribe.php

示例13: test_get_users_with_no_role_multisite_is_accurate

 /**
  * @ticket 22993
  * @group multisite
  */
 public function test_get_users_with_no_role_multisite_is_accurate()
 {
     if (!is_multisite()) {
         $this->markTestSkipped('Test requires multisite');
     }
     // Setup users
     $admin = self::factory()->user->create(array('role' => 'administrator'));
     $editor = self::factory()->user->create(array('role' => 'editor'));
     $nobody = self::factory()->user->create(array('role' => ''));
     // Setup blogs
     $blog_1 = (int) self::factory()->blog->create(array('user_id' => $editor));
     // Add users to blogs
     add_user_to_blog($blog_1, $editor, 'editor');
     // Test users on root site
     $users = wp_get_users_with_no_role();
     $this->assertSame(array(), $users);
     // Test users counts on blog 1
     switch_to_blog($blog_1);
     $users = wp_get_users_with_no_role();
     restore_current_blog();
     // Test users on root site
     $this->assertSame(array(), $users);
 }
开发者ID:boonebgorges,项目名称:develop.wordpress,代码行数:27,代码来源:wpGetUsersWithNoRole.php

示例14: test_sends_stats_data_on_heartbeat_on_multisite

 public function test_sends_stats_data_on_heartbeat_on_multisite()
 {
     global $wpdb;
     if (!is_multisite()) {
         $this->markTestSkipped('Run it in multi site mode');
     }
     $user_id = $this->factory->user->create();
     $mu_blog_user_id = $this->factory->user->create();
     // create a different blog
     $suppress = $wpdb->suppress_errors();
     $other_blog_id = wpmu_create_blog('foo.com', '', "My Blog", $user_id);
     $wpdb->suppress_errors($suppress);
     // create a user from within that blog (won't be synced)
     switch_to_blog($other_blog_id);
     add_user_to_blog($other_blog_id, $mu_blog_user_id, 'administrator');
     $heartbeat = Jetpack_Heartbeat::init();
     $heartbeat->cron_exec();
     $this->sender->do_sync();
     $action = $this->server_event_storage->get_most_recent_event('jetpack_sync_heartbeat_stats');
     restore_current_blog();
     $this->assertEquals(JETPACK__VERSION, $action->args[0]['version']);
     $this->assertFalse(isset($action->args[0]['users']));
 }
开发者ID:automattic,项目名称:jetpack,代码行数:23,代码来源:test_class.jetpack-sync-modules-stats.php

示例15: test_count_users_multisite_is_accurate

 /**
  * @ticket 22993
  * @group multisite
  *
  * @dataProvider data_count_users_strategies
  */
 public function test_count_users_multisite_is_accurate($strategy)
 {
     if (!is_multisite()) {
         $this->markTestSkipped('Test requires multisite');
     }
     // Setup users
     $admin = self::factory()->user->create(array('role' => 'administrator'));
     $editor = self::factory()->user->create(array('role' => 'editor'));
     $author = self::factory()->user->create(array('role' => 'author'));
     $contributor = self::factory()->user->create(array('role' => 'contributor'));
     $subscriber = self::factory()->user->create(array('role' => 'subscriber'));
     $none = self::factory()->user->create(array('role' => ''));
     $nobody = self::factory()->user->create(array('role' => ''));
     // Setup blogs
     $blog_1 = (int) self::factory()->blog->create(array('user_id' => $editor));
     $blog_2 = (int) self::factory()->blog->create(array('user_id' => $author));
     // Add users to blogs
     add_user_to_blog($blog_1, $subscriber, 'editor');
     add_user_to_blog($blog_2, $none, 'contributor');
     // Test users counts on root site
     $count = count_users($strategy);
     $this->assertEquals(8, $count['total_users']);
     $this->assertEquals(array('administrator' => 2, 'editor' => 1, 'author' => 1, 'contributor' => 1, 'subscriber' => 1, 'none' => 0), $count['avail_roles']);
     // Test users counts on blog 1
     switch_to_blog($blog_1);
     $count = count_users($strategy);
     restore_current_blog();
     $this->assertEquals(2, $count['total_users']);
     $this->assertEquals(array('administrator' => 1, 'editor' => 1, 'none' => 0), $count['avail_roles']);
     // Test users counts on blog 2
     switch_to_blog($blog_2);
     $count = count_users($strategy);
     restore_current_blog();
     $this->assertEquals(2, $count['total_users']);
     $this->assertEquals(array('administrator' => 1, 'contributor' => 1, 'none' => 0), $count['avail_roles']);
 }
开发者ID:boonebgorges,项目名称:develop.wordpress,代码行数:42,代码来源:countUsers.php


注:本文中的add_user_to_blog函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。