• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP nxt_cache_set函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: get_topic

function get_topic($id, $cache = true)
{
    global $bbdb;
    if (!is_numeric($id)) {
        list($slug, $sql) = bb_get_sql_from_slug('topic', $id);
        $id = nxt_cache_get($slug, 'bb_topic_slug');
    }
    // not else
    if (is_numeric($id)) {
        $id = (int) $id;
        $sql = "topic_id = {$id}";
    }
    if (0 === $id || !$sql) {
        return false;
    }
    // &= not =&
    $cache &= 'AND topic_status = 0' == ($where = apply_filters('get_topic_where', 'AND topic_status = 0'));
    if (($cache || !$where) && is_numeric($id) && false !== ($topic = nxt_cache_get($id, 'bb_topic'))) {
        return $topic;
    }
    // $where is NOT bbdb:prepared
    $topic = $bbdb->get_row("SELECT * FROM {$bbdb->topics} WHERE {$sql} {$where}");
    $topic = bb_append_meta($topic, 'topic');
    if ($cache) {
        nxt_cache_set($topic->topic_id, $topic, 'bb_topic');
        nxt_cache_add($topic->topic_slug, $topic->topic_id, 'bb_topic_slug');
    }
    return $topic;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:29,代码来源:functions.bb-topics.php


示例2: bb_get_post

function bb_get_post($post_id)
{
    global $bbdb;
    $post_id = (int) $post_id;
    if (false === ($post = nxt_cache_get($post_id, 'bb_post'))) {
        $post = $bbdb->get_row($bbdb->prepare("SELECT * FROM {$bbdb->posts} WHERE post_id = %d", $post_id));
        $post = bb_append_meta($post, 'post');
        nxt_cache_set($post_id, $post, 'bb_post');
    }
    return $post;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:11,代码来源:functions.bb-posts.php


示例3: bp_adminbar_blogs_menu

function bp_adminbar_blogs_menu()
{
    global $bp;
    if (!is_user_logged_in() || !bp_is_active('blogs')) {
        return false;
    }
    if (!is_multisite()) {
        return false;
    }
    if (!($blogs = nxt_cache_get('bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', 'bp'))) {
        $blogs = bp_blogs_get_blogs_for_user($bp->loggedin_user->id, true);
        nxt_cache_set('bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', $blogs, 'bp');
    }
    $counter = 0;
    if (is_array($blogs['blogs']) && (int) $blogs['count']) {
        echo '<li id="bp-adminbar-blogs-menu"><a href="' . trailingslashit($bp->loggedin_user->domain . bp_get_blogs_slug()) . '">';
        _e('My Sites', 'buddypress');
        echo '</a>';
        echo '<ul>';
        foreach ((array) $blogs['blogs'] as $blog) {
            $alt = 0 == $counter % 2 ? ' class="alt"' : '';
            $site_url = esc_attr($blog->siteurl);
            echo '<li' . $alt . '>';
            echo '<a href="' . $site_url . '">' . esc_html($blog->name) . '</a>';
            echo '<ul>';
            echo '<li class="alt"><a href="' . $site_url . 'nxt-admin/">' . __('Dashboard', 'buddypress') . '</a></li>';
            echo '<li><a href="' . $site_url . 'nxt-admin/post-new.php">' . __('New Post', 'buddypress') . '</a></li>';
            echo '<li class="alt"><a href="' . $site_url . 'nxt-admin/edit.php">' . __('Manage Posts', 'buddypress') . '</a></li>';
            echo '<li><a href="' . $site_url . 'nxt-admin/edit-comments.php">' . __('Manage Comments', 'buddypress') . '</a></li>';
            echo '</ul>';
            do_action('bp_adminbar_blog_items', $blog);
            echo '</li>';
            $counter++;
        }
        $alt = 0 == $counter % 2 ? ' class="alt"' : '';
        if (bp_blog_signup_enabled()) {
            echo '<li' . $alt . '>';
            echo '<a href="' . bp_get_root_domain() . '/' . bp_get_blogs_root_slug() . '/create/">' . __('Create a Site!', 'buddypress') . '</a>';
            echo '</li>';
        }
        echo '</ul>';
        echo '</li>';
    }
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:44,代码来源:bp-blogs-buddybar.php


示例4: groups_update_groupmeta

function groups_update_groupmeta($group_id, $meta_key, $meta_value)
{
    global $nxtdb, $bp;
    if (!is_numeric($group_id)) {
        return false;
    }
    $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key);
    if (is_string($meta_value)) {
        $meta_value = stripslashes($nxtdb->escape($meta_value));
    }
    $meta_value = maybe_serialize($meta_value);
    if (empty($meta_value)) {
        return groups_delete_groupmeta($group_id, $meta_key);
    }
    $cur = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM " . $bp->groups->table_name_groupmeta . " WHERE group_id = %d AND meta_key = %s", $group_id, $meta_key));
    if (!$cur) {
        $nxtdb->query($nxtdb->prepare("INSERT INTO " . $bp->groups->table_name_groupmeta . " ( group_id, meta_key, meta_value ) VALUES ( %d, %s, %s )", $group_id, $meta_key, $meta_value));
    } else {
        if ($cur->meta_value != $meta_value) {
            $nxtdb->query($nxtdb->prepare("UPDATE " . $bp->groups->table_name_groupmeta . " SET meta_value = %s WHERE group_id = %d AND meta_key = %s", $meta_value, $group_id, $meta_key));
        } else {
            return false;
        }
    }
    // Update the cached object and recache
    nxt_cache_set('bp_groups_groupmeta_' . $group_id . '_' . $meta_key, $meta_value, 'bp');
    return true;
}
开发者ID:nxtclass,项目名称:NXTClass-Plugin,代码行数:28,代码来源:bp-groups-functions.php


示例5: dpa_get_achievement_picture

/**
 * Returns Achievement's picture; takes into account size of image required
 *
 * @since 2.0
 * @global DPA_Achievement_Template $achievements_template Achievements template tag object
 * @global int $blog_id Site ID
 * @global object $bp BuddyPress global settings
 * @param string $size Optional; set to "thumb" to fetch thumbnail-sized picture, and "activitystream" for a thumbnail-sized picture with width/height style tags.
 * @return string HTML image tag
 */
function dpa_get_achievement_picture($size = '')
{
    global $achievements_template, $blog_id, $bp;
    $achievement_slug = dpa_get_achievement_slug();
    $achievement_id = dpa_get_achievement_id();
    if ('thumb' == $size || 'activitystream' == $size) {
        $is_thumbnail = true;
    } else {
        $is_thumbnail = dpa_get_achievement_picture_is_thumbnail();
    }
    if (($picture_id = dpa_get_achievement_picture_id()) < 1) {
        if (empty($bp->grav_default->user)) {
            $default_grav = 'wavatar';
        } elseif ('mystery' == $bp->grav_default->user) {
            $default_grav = apply_filters('bp_core_mysteryman_src', BP_PLUGIN_URL . '/bp-core/images/mystery-man.jpg');
        } else {
            $default_grav = $bp->grav_default->user;
        }
        if ('thumb' == $size) {
            $grav_size = apply_filters('dpa_get_achievement_picture_gravatar_width', BP_AVATAR_THUMB_WIDTH, 'thumb');
        } elseif ('activitystream' == $size) {
            $grav_size = apply_filters('dpa_get_achievement_picture_gravatar_width', 20, 'activitystream');
        } else {
            $grav_size = apply_filters('dpa_get_achievement_picture_gravatar_width', BP_AVATAR_FULL_WIDTH, 'full');
        }
        $email = apply_filters('bp_core_gravatar_email', $achievement_slug . '@' . $bp->root_domain, $achievement_id, 'achievements');
        if (is_ssl()) {
            $host = 'https://secure.gravatar.com/avatar/';
        } else {
            $host = 'http://www.gravatar.com/avatar/';
        }
        $avatar_url = apply_filters('bp_gravatar_url', $host) . md5($email) . '?d=' . $default_grav . '&amp;s=' . $grav_size;
    } else {
        if ($cached_urls = nxt_cache_get('dpa_achievement_picture_urls', 'dpa') && isset($cached_urls) && is_array($cached_urls) && isset($cached_urls[$picture_id]) && $cached_urls[$picture_id]) {
            $avatar_url = $cached_urls[$picture_id];
        } else {
            if ($is_nonroot_multisite = is_multisite() && BP_ROOT_BLOG != $blog_id) {
                switch_to_blog(BP_ROOT_BLOG);
            }
            // Necessary evil
            list($avatar_url, $avatar_width, $avatar_height, $is_intermediate) = image_downsize($picture_id, 'large');
            if ($is_nonroot_multisite) {
                restore_current_blog();
            }
            if (!is_array($cached_urls)) {
                $cached_urls = array($picture_id => $avatar_url);
            } else {
                $cached_urls[$picture_id] = $avatar_url;
            }
            $grav_size = 0;
            nxt_cache_set('dpa_achievement_picture_urls', $cached_urls, 'dpa');
        }
    }
    $style = '';
    if ('activitystream' == $size && ('mystery' == $bp->grav_default->user || $picture_id > 0)) {
        $style = 'width="20" height="20"';
    }
    if ($is_thumbnail) {
        $picture_type = "avatar-thumbnail";
    } else {
        $picture_type = "avatar-full";
    }
    $url = '<img src="' . esc_url($avatar_url) . '" alt="' . esc_attr(dpa_get_achievement_name()) . '" title="' . esc_attr(dpa_get_achievement_name()) . '" ' . $style . ' class="avatar' . esc_attr(' achievement-' . $achievement_slug . '-avatar ') . $picture_type . '" />';
    return apply_filters('dpa_get_achievement_picture', $url, $achievement_id, $picture_id, $grav_size, $style);
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:75,代码来源:achievements-templatetags.php


示例6: update_object_term_cache

 /**
  * Updates the cache for Term ID(s).
  *
  * Will only update the cache for terms not already cached.
  *
  * The $object_ids expects that the ids be separated by commas, if it is a
  * string.
  *
  * It should be noted that update_object_term_cache() is very time extensive. It
  * is advised that the function is not called very often or at least not for a
  * lot of terms that exist in a lot of taxonomies. The amount of time increases
  * for each term and it also increases for each taxonomy the term belongs to.
  *
  * @package NXTClass
  * @subpackage Taxonomy
  * @since 2.3.0
  * @uses $this->get_object_terms() Used to get terms from the database to update
  *
  * @param string|array $object_ids Single or list of term object ID(s)
  * @param string $object_type The taxonomy object type
  * @return null|bool Null value is given with empty $object_ids. False if 
  */
 function update_object_term_cache($object_ids, $object_type)
 {
     if (empty($object_ids)) {
         return;
     }
     if (!is_array($object_ids)) {
         $object_ids = explode(',', $object_ids);
     }
     $object_ids = array_map('intval', $object_ids);
     $taxonomies = $this->get_object_taxonomies($object_type);
     $ids = array();
     foreach ((array) $object_ids as $id) {
         foreach ($taxonomies as $taxonomy) {
             if (false === nxt_cache_get($id, "{$taxonomy}_relationships")) {
                 $ids[] = $id;
                 break;
             }
         }
     }
     if (empty($ids)) {
         return false;
     }
     $terms = $this->get_object_terms($ids, $taxonomies, 'fields=all_with_object_id');
     $object_terms = array();
     foreach ((array) $terms as $term) {
         $object_terms[$term->object_id][$term->taxonomy][$term->term_id] = $term;
     }
     foreach ($ids as $id) {
         foreach ($taxonomies as $taxonomy) {
             if (!isset($object_terms[$id][$taxonomy])) {
                 if (!isset($object_terms[$id])) {
                     $object_terms[$id] = array();
                 }
                 $object_terms[$id][$taxonomy] = array();
             }
         }
     }
     foreach ($object_terms as $id => $value) {
         foreach ($value as $taxonomy => $terms) {
             nxt_cache_set($id, $terms, "{$taxonomy}_relationships");
         }
     }
 }
开发者ID:nxtclass,项目名称:NXTClass,代码行数:65,代码来源:class.nxt-taxonomy.php


示例7: get_adjacent_post

/**
 * Retrieve adjacent post.
 *
 * Can either be next or previous post.
 *
 * @since 2.5.0
 *
 * @param bool $in_same_cat Optional. Whether post should be in a same category.
 * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
 * @param bool $previous Optional. Whether to retrieve previous post.
 * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
 */
function get_adjacent_post($in_same_cat = false, $excluded_categories = '', $previous = true)
{
    global $post, $nxtdb;
    if (empty($post)) {
        return null;
    }
    $current_post_date = $post->post_date;
    $join = '';
    $posts_in_ex_cats_sql = '';
    if ($in_same_cat || !empty($excluded_categories)) {
        $join = " INNER JOIN {$nxtdb->term_relationships} AS tr ON p.ID = tr.object_id INNER JOIN {$nxtdb->term_taxonomy} tt ON tr.term_taxonomy_id = tt.term_taxonomy_id";
        if ($in_same_cat) {
            $cat_array = nxt_get_object_terms($post->ID, 'category', array('fields' => 'ids'));
            $join .= " AND tt.taxonomy = 'category' AND tt.term_id IN (" . implode(',', $cat_array) . ")";
        }
        $posts_in_ex_cats_sql = "AND tt.taxonomy = 'category'";
        if (!empty($excluded_categories)) {
            if (!is_array($excluded_categories)) {
                // back-compat, $excluded_categories used to be IDs separated by " and "
                if (strpos($excluded_categories, ' and ') !== false) {
                    _deprecated_argument(__FUNCTION__, '3.3', sprintf(__('Use commas instead of %s to separate excluded categories.'), "'and'"));
                    $excluded_categories = explode(' and ', $excluded_categories);
                } else {
                    $excluded_categories = explode(',', $excluded_categories);
                }
            }
            $excluded_categories = array_map('intval', $excluded_categories);
            if (!empty($cat_array)) {
                $excluded_categories = array_diff($excluded_categories, $cat_array);
                $posts_in_ex_cats_sql = '';
            }
            if (!empty($excluded_categories)) {
                $posts_in_ex_cats_sql = " AND tt.taxonomy = 'category' AND tt.term_id NOT IN (" . implode($excluded_categories, ',') . ')';
            }
        }
    }
    $adjacent = $previous ? 'previous' : 'next';
    $op = $previous ? '<' : '>';
    $order = $previous ? 'DESC' : 'ASC';
    $join = apply_filters("get_{$adjacent}_post_join", $join, $in_same_cat, $excluded_categories);
    $where = apply_filters("get_{$adjacent}_post_where", $nxtdb->prepare("WHERE p.post_date {$op} %s AND p.post_type = %s AND p.post_status = 'publish' {$posts_in_ex_cats_sql}", $current_post_date, $post->post_type), $in_same_cat, $excluded_categories);
    $sort = apply_filters("get_{$adjacent}_post_sort", "ORDER BY p.post_date {$order} LIMIT 1");
    $query = "SELECT p.* FROM {$nxtdb->posts} AS p {$join} {$where} {$sort}";
    $query_key = 'adjacent_post_' . md5($query);
    $result = nxt_cache_get($query_key, 'counts');
    if (false !== $result) {
        return $result;
    }
    $result = $nxtdb->get_row("SELECT p.* FROM {$nxtdb->posts} AS p {$join} {$where} {$sort}");
    if (null === $result) {
        $result = '';
    }
    nxt_cache_set($query_key, $result, 'counts');
    return $result;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:67,代码来源:link-template.php


示例8: bb_set_transient

/**
 * Set/update the value of a transient
 *
 * You do not need to serialize values, if the value needs to be serialize, then
 * it will be serialized before it is set.
 *
 * @since 1.0
 * @package bbPress
 * @subpackage Transient
 *
 * @param string $transient Transient name. Expected to not be SQL-escaped
 * @param mixed $value Transient value.
 * @param int $expiration Time until expiration in seconds, default 0
 * @return bool False if value was not set and true if value was set.
 */
function bb_set_transient($transient, $value, $expiration = 0)
{
    global $_bb_using_ext_object_cache, $bbdb;
    if ($_bb_using_ext_object_cache) {
        return nxt_cache_set($transient, $value, 'transient', $expiration);
    } else {
        $transient_timeout = '_transient_timeout_' . $bbdb->escape($transient);
        $transient = '_transient_' . $bbdb->escape($transient);
        if (0 != $expiration) {
            bb_update_option($transient_timeout, time() + $expiration);
        }
        return bb_update_option($transient, $value);
    }
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:29,代码来源:functions.bb-meta.php


示例9: get_calendar

/**
 * Display calendar with days that have posts as links.
 *
 * The calendar is cached, which will be retrieved, if it exists. If there are
 * no posts for the month, then it will not be displayed.
 *
 * @since 1.0.0
 *
 * @param bool $initial Optional, default is true. Use initial calendar names.
 * @param bool $echo Optional, default is true. Set to false for return.
 */
function get_calendar($initial = true, $echo = true)
{
    global $nxtdb, $m, $monthnum, $year, $nxt_locale, $posts;
    $cache = array();
    $key = md5($m . $monthnum . $year);
    if ($cache = nxt_cache_get('get_calendar', 'calendar')) {
        if (is_array($cache) && isset($cache[$key])) {
            if ($echo) {
                echo apply_filters('get_calendar', $cache[$key]);
                return;
            } else {
                return apply_filters('get_calendar', $cache[$key]);
            }
        }
    }
    if (!is_array($cache)) {
        $cache = array();
    }
    // Quick check. If we have no posts at all, abort!
    if (!$posts) {
        $gotsome = $nxtdb->get_var("SELECT 1 as test FROM {$nxtdb->posts} WHERE post_type = 'post' AND post_status = 'publish' LIMIT 1");
        if (!$gotsome) {
            $cache[$key] = '';
            nxt_cache_set('get_calendar', $cache, 'calendar');
            return;
        }
    }
    if (isset($_GET['w'])) {
        $w = '' . intval($_GET['w']);
    }
    // week_begins = 0 stands for Sunday
    $week_begins = intval(get_option('start_of_week'));
    // Let's figure out when we are
    if (!empty($monthnum) && !empty($year)) {
        $thismonth = '' . zeroise(intval($monthnum), 2);
        $thisyear = '' . intval($year);
    } elseif (!empty($w)) {
        // We need to get the month from MySQL
        $thisyear = '' . intval(substr($m, 0, 4));
        $d = ($w - 1) * 7 + 6;
        //it seems MySQL's weeks disagree with PHP's
        $thismonth = $nxtdb->get_var("SELECT DATE_FORMAT((DATE_ADD('{$thisyear}0101', INTERVAL {$d} DAY) ), '%m')");
    } elseif (!empty($m)) {
        $thisyear = '' . intval(substr($m, 0, 4));
        if (strlen($m) < 6) {
            $thismonth = '01';
        } else {
            $thismonth = '' . zeroise(intval(substr($m, 4, 2)), 2);
        }
    } else {
        $thisyear = gmdate('Y', current_time('timestamp'));
        $thismonth = gmdate('m', current_time('timestamp'));
    }
    $unixmonth = mktime(0, 0, 0, $thismonth, 1, $thisyear);
    $last_day = date('t', $unixmonth);
    // Get the next and previous month and year with at least one post
    $previous = $nxtdb->get_row("SELECT MONTH(post_date) AS month, YEAR(post_date) AS year\n\t\tFROM {$nxtdb->posts}\n\t\tWHERE post_date < '{$thisyear}-{$thismonth}-01'\n\t\tAND post_type = 'post' AND post_status = 'publish'\n\t\t\tORDER BY post_date DESC\n\t\t\tLIMIT 1");
    $next = $nxtdb->get_row("SELECT MONTH(post_date) AS month, YEAR(post_date) AS year\n\t\tFROM {$nxtdb->posts}\n\t\tWHERE post_date > '{$thisyear}-{$thismonth}-{$last_day} 23:59:59'\n\t\tAND post_type = 'post' AND post_status = 'publish'\n\t\t\tORDER BY post_date ASC\n\t\t\tLIMIT 1");
    /* translators: Calendar caption: 1: month name, 2: 4-digit year */
    $calendar_caption = _x('%1$s %2$s', 'calendar caption');
    $calendar_output = '<table id="nxt-calendar">
	<caption>' . sprintf($calendar_caption, $nxt_locale->get_month($thismonth), date('Y', $unixmonth)) . '</caption>
	<thead>
	<tr>';
    $myweek = array();
    for ($wdcount = 0; $wdcount <= 6; $wdcount++) {
        $myweek[] = $nxt_locale->get_weekday(($wdcount + $week_begins) % 7);
    }
    foreach ($myweek as $wd) {
        $day_name = true == $initial ? $nxt_locale->get_weekday_initial($wd) : $nxt_locale->get_weekday_abbrev($wd);
        $wd = esc_attr($wd);
        $calendar_output .= "\n\t\t<th scope=\"col\" title=\"{$wd}\">{$day_name}</th>";
    }
    $calendar_output .= '
	</tr>
	</thead>

	<tfoot>
	<tr>';
    if ($previous) {
        $calendar_output .= "\n\t\t" . '<td colspan="3" id="prev"><a href="' . get_month_link($previous->year, $previous->month) . '" title="' . esc_attr(sprintf(__('View posts for %1$s %2$s'), $nxt_locale->get_month($previous->month), date('Y', mktime(0, 0, 0, $previous->month, 1, $previous->year)))) . '">&laquo; ' . $nxt_locale->get_month_abbrev($nxt_locale->get_month($previous->month)) . '</a></td>';
    } else {
        $calendar_output .= "\n\t\t" . '<td colspan="3" id="prev" class="pad">&nbsp;</td>';
    }
    $calendar_output .= "\n\t\t" . '<td class="pad">&nbsp;</td>';
    if ($next) {
        $calendar_output .= "\n\t\t" . '<td colspan="3" id="next"><a href="' . get_month_link($next->year, $next->month) . '" title="' . esc_attr(sprintf(__('View posts for %1$s %2$s'), $nxt_locale->get_month($next->month), date('Y', mktime(0, 0, 0, $next->month, 1, $next->year)))) . '">' . $nxt_locale->get_month_abbrev($nxt_locale->get_month($next->month)) . ' &raquo;</a></td>';
    } else {
        $calendar_output .= "\n\t\t" . '<td colspan="3" id="next" class="pad">&nbsp;</td>';
//.........这里部分代码省略.........
开发者ID:nxtclass,项目名称:NXTClass,代码行数:101,代码来源:general-template.php


示例10: bp_get_friend_reject_request_link

function bp_get_friend_reject_request_link()
{
    global $members_template, $bp;
    if (!($friendship_id = nxt_cache_get('friendship_id_' . $members_template->member->id . '_' . $bp->loggedin_user->id))) {
        $friendship_id = friends_get_friendship_id($members_template->member->id, $bp->loggedin_user->id);
        nxt_cache_set('friendship_id_' . $members_template->member->id . '_' . $bp->loggedin_user->id, $friendship_id, 'bp');
    }
    return apply_filters('bp_get_friend_reject_request_link', nxt_nonce_url($bp->loggedin_user->domain . bp_get_friends_slug() . '/requests/reject/' . $friendship_id, 'friends_reject_friendship'));
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:9,代码来源:bp-friends-template.php


示例11: friends_get_total_friend_count

function friends_get_total_friend_count($user_id = 0)
{
    global $bp;
    if (!$user_id) {
        $user_id = $bp->displayed_user->id ? $bp->displayed_user->id : $bp->loggedin_user->id;
    }
    if (!($count = nxt_cache_get('bp_total_friend_count_' . $user_id, 'bp'))) {
        $count = bp_get_user_meta($user_id, 'total_friend_count', true);
        if (empty($count)) {
            $count = 0;
        }
        nxt_cache_set('bp_total_friend_count_' . $user_id, $count, 'bp');
    }
    return apply_filters('friends_get_total_friend_count', $count);
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:15,代码来源:bp-friends-functions.php


示例12: dpa_get_actions

/**
 * Loads the actions from the database.
 *
 * @global object $bp BuddyPress global settings
 * @global nxtdb $nxtdb NXTClass database object
 * @return string
 * @since 2.0
 */
function dpa_get_actions()
{
    global $bp, $nxtdb;
    if (!($actions = nxt_cache_get('dpa_actions', 'dpa'))) {
        $actions = $nxtdb->get_results($nxtdb->prepare("SELECT * FROM {$bp->achievements->table_actions} ORDER BY category, description"));
        nxt_cache_set('dpa_actions', $actions, 'dpa');
    }
    return apply_filters('dpa_get_actions', (array) $actions);
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:17,代码来源:achievements-core.php


示例13: populate

 /**
  * Populate the instantiated class with data based on the User ID provided.
  *
  * @global object $bp Global BuddyPress settings object
  * @uses bp_core_get_userurl() Returns the URL with no HTML markup for a user based on their user id
  * @uses bp_core_get_userlink() Returns a HTML formatted link for a user with the user's full name as the link text
  * @uses bp_core_get_user_email() Returns the email address for the user based on user ID
  * @uses bp_get_user_meta() BP function returns the value of passed usermeta name from usermeta table
  * @uses bp_core_fetch_avatar() Returns HTML formatted avatar for a user
  * @uses bp_profile_last_updated_date() Returns the last updated date for a user.
  */
 function populate()
 {
     global $bp;
     if (bp_is_active('xprofile')) {
         $this->profile_data = $this->get_profile_data();
     }
     if (!empty($this->profile_data)) {
         $full_name_field_name = bp_xprofile_fullname_field_name();
         $this->user_url = bp_core_get_user_domain($this->id, $this->profile_data['user_nicename'], $this->profile_data['user_login']);
         $this->fullname = esc_attr($this->profile_data[$full_name_field_name]['field_data']);
         $this->user_link = "<a href='{$this->user_url}' title='{$this->fullname}'>{$this->fullname}</a>";
         $this->email = esc_attr($this->profile_data['user_email']);
     } else {
         $this->user_url = bp_core_get_user_domain($this->id);
         $this->user_link = bp_core_get_userlink($this->id);
         $this->fullname = esc_attr(bp_core_get_user_displayname($this->id));
         $this->email = esc_attr(bp_core_get_user_email($this->id));
     }
     // Cache a few things that are fetched often
     nxt_cache_set('bp_user_fullname_' . $this->id, $this->fullname, 'bp');
     nxt_cache_set('bp_user_email_' . $this->id, $this->email, 'bp');
     nxt_cache_set('bp_user_url_' . $this->id, $this->user_url, 'bp');
     $this->avatar = bp_core_fetch_avatar(array('item_id' => $this->id, 'type' => 'full'));
     $this->avatar_thumb = bp_core_fetch_avatar(array('item_id' => $this->id, 'type' => 'thumb'));
     $this->avatar_mini = bp_core_fetch_avatar(array('item_id' => $this->id, 'type' => 'thumb', 'width' => 30, 'height' => 30));
     $this->last_active = bp_core_get_last_activity(bp_get_user_meta($this->id, 'last_activity', true), __('active %s', 'buddypress'));
 }
开发者ID:nxtclass,项目名称:NXTClass,代码行数:38,代码来源:bp-core-classes.php


示例14: htmlspecialchars

     $blogname = htmlspecialchars(substr($_SERVER['REQUEST_URI'], strlen($path)));
     if (false !== strpos($blogname, '/')) {
         $blogname = substr($blogname, 0, strpos($blogname, '/'));
     }
     if (false !== strpos($blogname, '?')) {
         $blogname = substr($blogname, 0, strpos($blogname, '?'));
     }
     $reserved_blognames = array('page', 'comments', 'blog', 'nxt-admin', 'nxt-includes', 'nxt-content', 'files', 'feed');
     if ($blogname != '' && !in_array($blogname, $reserved_blognames) && !is_file($blogname)) {
         $path .= $blogname . '/';
     }
     $current_blog = nxt_cache_get('current_blog_' . $domain . $path, 'site-options');
     if (!$current_blog) {
         $current_blog = get_blog_details(array('domain' => $domain, 'path' => $path), false);
         if ($current_blog) {
             nxt_cache_set('current_blog_' . $domain . $path, $current_blog, 'site-options');
         }
     }
     unset($reserved_blognames);
 }
 if (!defined('nxt_INSTALLING') && is_subdomain_install() && !is_object($current_blog)) {
     if (defined('NOBLOGREDIRECT')) {
         $destination = NOBLOGREDIRECT;
         if ('%siteurl%' == $destination) {
             $destination = "http://" . $current_site->domain . $current_site->path;
         }
     } else {
         $destination = 'http://' . $current_site->domain . $current_site->path . 'nxt-signup.php?new=' . str_replace('.' . $current_site->domain, '', $domain);
     }
     header('Location: ' . $destination);
     die;
开发者ID:nxtclass,项目名称:NXTClass,代码行数:31,代码来源:ms-settings.php


示例15: get_blog_id_from_url

/**
 * Get a blog's numeric ID from its URL.
 *
 * On a subdirectory installation like example.com/blog1/,
 * $domain will be the root 'example.com' and $path the
 * subdirectory '/blog1/'. With subdomains like blog1.example.com,
 * $domain is 'blog1.example.com' and $path is '/'.
 *
 * @since MU 2.6.5
 *
 * @param string $domain
 * @param string $path Optional. Not required for subdomain installations.
 * @return int
 */
function get_blog_id_from_url($domain, $path = '/')
{
    global $nxtdb;
    $domain = strtolower($nxtdb->escape($domain));
    $path = strtolower($nxtdb->escape($path));
    $id = nxt_cache_get(md5($domain . $path), 'blog-id-cache');
    if ($id == -1) {
        // blog does not exist
        return 0;
    } elseif ($id) {
        return (int) $id;
    }
    $id = $nxtdb->get_var("SELECT blog_id FROM {$nxtdb->blogs} WHERE domain = '{$domain}' and path = '{$path}' /* get_blog_id_from_url */");
    if (!$id) {
        nxt_cache_set(md5($domain . $path), -1, 'blog-id-cache');
        return false;
    }
    nxt_cache_set(md5($domain . $path), $id, 'blog-id-cache');
    return $id;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:34,代码来源:ms-functions.php


示例16: update_blog_option

/**
 * Update an option for a particular blog.
 *
 * @since MU
 *
 * @param int $id The blog id
 * @param string $key The option key
 * @param mixed $value The option value
 * @return bool True on success, false on failrue.
 */
function update_blog_option($id, $key, $value, $deprecated = null)
{
    $id = (int) $id;
    if (null !== $deprecated) {
        _deprecated_argument(__FUNCTION__, '3.1');
    }
    switch_to_blog($id);
    $return = update_option($key, $value);
    restore_current_blog();
    refresh_blog_details($id);
    if ($return) {
        nxt_cache_set($id . '-' . $key . '-blog_option', $value, 'site-options');
    }
    return $return;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:25,代码来源:ms-blogs.php


示例17: bp_core_get_total_member_count

/**
 * Returns the total number of members for the installation.
 *
 * @package BuddyPress Core
 * @return int The total number of members.
 */
function bp_core_get_total_member_count()
{
    global $nxtdb, $bp;
    if (!($count = nxt_cache_get('bp_total_member_count', 'bp'))) {
        $status_sql = bp_core_get_status_sql();
        $count = $nxtdb->get_var($nxtdb->prepare("SELECT COUNT(ID) FROM {$nxtdb->users} WHERE {$status_sql}"));
        nxt_cache_set('bp_total_member_count', $count, 'bp');
    }
    return apply_filters('bp_core_get_total_member_count', $count);
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:16,代码来源:bp-members-functions.php


示例18: set_site_transient

/**
 * Set/update the value of a site transient.
 *
 * You do not need to serialize values, if the value needs to be serialize, then
 * it will be serialized before it is set.
 *
 * @see set_transient()
 * @since 2.9.0
 * @package NXTClass
 * @subpackage Transient
 *
 * @uses apply_filters() Calls 'pre_set_site_transient_$transient' hook to allow overwriting the
 * 	transient value to be stored.
 * @uses do_action() Calls 'set_site_transient_$transient' and 'setted_site_transient' hooks on success.
 *
 * @param string $transient Transient name. Expected to not be SQL-escaped.
 * @param mixed $value Transient value. Expected to not be SQL-escaped.
 * @param int $expiration Time until expiration in seconds, default 0
 * @return bool False if value was not set and true if value was set.
 */
function set_site_transient($transient, $value, $expiration = 0)
{
    global $_nxt_using_ext_object_cache;
    $value = apply_filters('pre_set_site_transient_' . $transient, $value);
    if ($_nxt_using_ext_object_cache) {
        $result = nxt_cache_set($transient, $value, 'site-transient', $expiration);
    } else {
        $transient_timeout = '_site_transient_timeout_' . $transient;
        $transient = '_site_transient_' . $transient;
        if (false === get_site_option($transient)) {
            if ($expiration) {
                add_site_option($transient_timeout, time() + $expiration);
            }
            $result = add_site_option($transient, $value);
        } else {
            if ($expiration) {
                update_site_option($transient_timeout, time() + $expiration);
            }
            $result = update_site_option($transient, $value);
        }
    }
    if ($result) {
        do_action('set_site_transient_' . $transient);
        do_action('setted_site_transient', $transient);
    }
    return $result;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:47,代码来源:functions.php


示例19: dpa_get_total_achievements_count_for_user

/**
 * Get count of how many (active) Achievements the specified user has.
 * Only users with edit permission can see hidden Achievements.
 *
 * @global object $bp BuddyPress global settings
 * @global nxtdb $nxtdb NXTClass database object
 * @param int $user_id
 * @since 2.0
 */
function dpa_get_total_achievements_count_for_user($user_id = false)
{
    global $bp, $nxtdb;
    if (!$user_id) {
        $user_id = $bp->displayed_user->id ? $bp->displayed_user->id : $bp->loggedin_user->id;
    }
    if (!($count = nxt_cache_get('dpa_get_total_achievements_count_for_user_' . $user_id, 'bp'))) {
        $admin_sql = $nxtdb->prepare("AND (is_active = 1 OR is_active = 2)");
        $count = $nxtdb->get_var($nxtdb->prepare("SELECT COUNT(a.id) FROM {$bp->achievements->table_achievements} as a, {$bp->achievements->table_unlocked} as u WHERE a.id = u.achievement_id AND u.user_id = %d {$admin_sql}", $user_id));
        nxt_cache_set('dpa_get_total_achievements_count_for_user_' . $user_id, $count, 'bp');
    }
    return $count;
}
开发者ID:nxtclass,项目名称:NXTClass,代码行数:22,代码来源:achievements-classes.php


示例20: nxtmu_current_site

/**
 * Sets current_site object.
 *
 * @access private
 * @since 3.0.0
 * @return object $current_site object
 */
function nxtmu_current_site()
{
    global $nxtdb, $current_site, $domain, $path, $sites, $cookie_domain;
    if (empty($current_site)) {
        $current_site = new stdClass();
    }
    if (defined('DOMAIN_CURRENT_SITE') && defined('PATH_CURRENT_SITE')) {
        $current_site->id = defined('SITE_ID_CURRENT_SITE') ? SITE_ID_CURRENT_SITE : 1;
        $current_site->domain = DOMAIN_CURRENT_SITE;
        $current_site->path = $path = PATH_CURRENT_SITE;
        if (defined('BLOG_ID_CURRENT_SITE')) {
            $current_site->blog_id = BLOG_ID_CURRENT_SITE;
        } elseif (defined('BLOGID_CURRENT_SITE')) {
            // deprecated.
            $current_site->blog_id = BLOGID_CURRENT_SITE;
        }
        if (DOMAIN_CURRENT_SITE == $domain) {
            $current_site->cookie_domain = $cookie_domain;
        } elseif (substr($current_site->domain, 0, 4) == 'www.') {
            $current_site->cookie_domain = substr($current_site->domain, 4);
        } else {
            $current_site->cookie_domain = $current_site->domain;
        }
        nxt_load_core_site_options($current_site->id);
        return $current_site;
    }
    $current_site = nxt_cache_get('current_site', 'site-options');
    if ($current_site) {
        return $current_site;
    }
    $sites = $nxtdb->get_results("SELECT * FROM {$nxtdb->site}");
    // usually only one site
    if (1 == count($sites)) {
        $current_site = $sites[0];
        nxt_load_core_site_options($current_site->id);
        $path = $current_site->path;
        $current_site->blog_id = $nxtdb->get_var($nxtdb->prepare("SELECT blog_id FROM {$nxtdb->blogs} WHERE domain = %s AND path = %s", $current_site->domain, $current_site->path));
        $current_site = get_current_site_name($current_site);
        if (substr($current_site->domain, 0, 4) == 'www.') {
            $current_site->cookie_domain = substr($current_site->domain, 4);
        }
        nxt_cache_set('current_site', $current_site, 'site-options');
        return $current_site;
    }
    $path = substr($_SERVER['REQUEST_URI'], 0, 1 + strpos($_SERVER['REQUEST_URI'], '/', 1));
    if ($domain == $cookie_domain) {
        $current_site = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM {$nxtdb->site} WHERE domain = %s AND path = %s", $domain, $path));
    } else {
        $current_site = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM {$nxtdb->site} WHERE domain IN ( %s, %s ) AND path = %s ORDER BY CHAR_LENGTH( domain ) DESC LIMIT 1", $domain, $cookie_domain, $path));
    }
    if (!$current_site) {
        if ($domain == $cookie_domain) {
            $current_site = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM {$nxtdb->site} WHERE domain = %s AND path='/'", $domain));
        } else {
            $current_site = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM {$nxtdb->site} WHERE domain IN ( %s, %s ) AND path = '/' ORDER BY CHAR_LENGTH( domain ) DESC LIMIT 1", $domain, $cookie_domain, $path));
        }
    }
    if ($current_site) {
        $path = $current_site->path;
        $current_site->cookie_domain = $cookie_domain;
        retu 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP nxt_create_nonce函数代码示例发布时间:2022-05-15
下一篇:
PHP nxt_cache_get函数代码示例发布时间:2022-05-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap