Title: WP Cache Block
Author: prettyboymp
Published: <strong>2010 年 6 月 13 日</strong>
Last modified: 2011 年 2 月 14 日

---

搜索插件

**该插件尚未通过WordPress的最新3个主要版本进行测试**。 当与较新版本的WordPress一起
使用时，可能不再受到维护或支持，并且可能会存在兼容性问题。

![](https://s.w.org/plugins/geopattern-icon/wp-cache-block.svg)

# WP Cache Block

 作者：[prettyboymp](https://profiles.wordpress.org/prettyboymp/)

[下载](https://downloads.wordpress.org/plugin/wp-cache-block.zip)

 * [详情](https://cn.wordpress.org/plugins/wp-cache-block/#description)
 * [评价](https://cn.wordpress.org/plugins/wp-cache-block/#reviews)
 *  [安装](https://cn.wordpress.org/plugins/wp-cache-block/#installation)
 * [开发进展](https://cn.wordpress.org/plugins/wp-cache-block/#developers)

 [支持](https://wordpress.org/support/plugin/wp-cache-block/)

## 描述

Adds ability to globally cache certain segments of code.

WP Cache and some other caching plugins work amazingly well, however, their benefits
are limited in sites with a large percentage of logged in users. While working on
these projects, we, Voce Connect, found the need for a better caching solution. 
We needed to easily cache rendered portions of the theme that were the same for 
each user without caching other portions that may have user specific content. The
solution was to come up with a plugin that could be easily integrated into a theme
to help cache these blocks of content.

Requirements:

 * WordPress 2.8 or higher
 * “php5” – I’m a big proponent of dropping the php4 compatibility of WordPress 
   due to the improved OO support. Because of this, I prefer to write my plugins
   in php5 form in hopes to help push the community along.

## 安装

 1. Upload `wp-cache-block` folder to the `/wp-content/plugins/` directory
 2. Activate the plugin through the ‘Plugins’ menu in WordPress
 3. Add cache block areas to the slower parts of your theme. See below.

Adding a cache block only requires wrapping the section of content you want to cache
in a couple of lines of code. The key is make sure that the cache block is uniquely
idtentified based on the content it will render.

For simple content that is the same on every page:

    ```
    <?php if(wp_cacheblock_start('my-content')) : ?>
    //the content you want to cache
    <?php endif; wp_cacheblock_end(); ?>
    ```

Content that varies based on page, user, etc, will need to use key builders. Key
builders are simple classes that help make a unique key for the block of content
based on different parameters.

For caching the_loop in index.php you’ll need to add a Query_Unique_Key_Builder 
which creates a key based on passed in query_var keys:

    ```
    <?php $key_builders = array(new Query_Unique_Key_Builder( array ('paged') ) );
    <?php if(wp_cacheblock_start( 'index-loop', array('key_builders'=> $key_builders) ) ) : ?>
      //the post loop
    <?php endif; wp_cacheblock_end(); ?>
    ```

To cache the comment output, you can use the Pending_Comment_Unique_Key_Builder 
so users with pending comments will get their own cached page.

    ```
    <?php $key_builders = array( new Pending_Comment_Unique_Key_Builder() );
    <?php if(wp_cacheblock_start('index-loop', array('key_builders'=> $key_builders) ) ) : ?>
      //the comment loop
    <?php endif; wp_cacheblock_end(); ?>
    ```

If you’re having to render complex data per user, the Per_User_Unique_Key_Builder
will help create a unique key per user for the content:

    ```
    <?php $key_builders = array( new Per_User_Unique_Key_Builder() );
    <?php if(wp_cacheblock_start('index-loop', array('key_builders'=> $key_builders) ) ) : ?>
      //the user specific content
    <?php endif; wp_cacheblock_end(); ?>
    ```

## 常见问题

  Do I need this plugin?

Probably not. Full page rendering is the best solution for most sites. This plugin
is really only useful for sites that have a great deal of user specific content 
areas that causes full page caching to no longer be an option.

## 评价

此插件暂无评价。

## 贡献者及开发者

「WP Cache Block」是开源软件。 以下人员对此插件做出了贡献。

贡献者

 *   [ prettyboymp ](https://profiles.wordpress.org/prettyboymp/)

[帮助将「WP Cache Block」翻译成简体中文。](https://translate.wordpress.org/projects/wp-plugins/wp-cache-block)

### 对开发感兴趣吗?

您可以[浏览代码](https://plugins.trac.wordpress.org/browser/wp-cache-block/)，查看
[SVN仓库](https://plugins.svn.wordpress.org/wp-cache-block/)，或通过[RSS](https://plugins.trac.wordpress.org/log/wp-cache-block/?limit=100&mode=stop_on_copy&format=rss)
订阅[开发日志](https://plugins.trac.wordpress.org/log/wp-cache-block/)。

## 更新日志

#### 0.1.1

 * Limited transient key length to 45 chars per https://core.trac.wordpress.org/
   ticket/15058
 * Fixing unique key when only a block name is provided.

#### 0.1.0

 * Initial release.

## 额外信息

 *  版本 **0.1.1**
 *  最后更新：**15 年前**
 *  活跃安装数量 **10+**
 *  WordPress 版本 ** 2.8 或更高版本 **
 *  已测试的最高版本为 **3.0.5**
 *  语言
 * [English (US)](https://wordpress.org/plugins/wp-cache-block/)
 * 标签
 * [cache](https://cn.wordpress.org/plugins/tags/cache/)[cache block](https://cn.wordpress.org/plugins/tags/cache-block/)
   [caching](https://cn.wordpress.org/plugins/tags/caching/)[output caching](https://cn.wordpress.org/plugins/tags/output-caching/)
   [performance](https://cn.wordpress.org/plugins/tags/performance/)
 *  [高级视图](https://cn.wordpress.org/plugins/wp-cache-block/advanced/)

## 评级

尚未提交反馈。

[Your review](https://wordpress.org/support/plugin/wp-cache-block/reviews/#new-post)

[查看全部评论](https://wordpress.org/support/plugin/wp-cache-block/reviews/)

## 贡献者

 *   [ prettyboymp ](https://profiles.wordpress.org/prettyboymp/)

## 支持

有话要说吗？是否需要帮助？

 [查看支持论坛](https://wordpress.org/support/plugin/wp-cache-block/)

## 捐助

您愿意支持这个插件的发展吗?

 [ 捐助此插件 ](http://voceconnect.com/)