Title: Store Directory
Author: Matthew Boynes
Published: <strong>2014 年 1 月 2 日</strong>
Last modified: 2014 年 1 月 3 日

---

搜索插件

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

![](https://s.w.org/plugins/geopattern-icon/store-directory.svg)

# Store Directory

 作者：[Matthew Boynes](https://profiles.wordpress.org/mboynes/)

[下载](https://downloads.wordpress.org/plugin/store-directory.0.1.zip)

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

 [支持](https://wordpress.org/support/plugin/store-directory/)

## 描述

This plugin adds a store/location directory to your WordPress site. Once you add
stores, you can add the Store Search widget to your widget area or you can add the
form to your theme manually.

This plugin is intentionally light and simple. It’s very flexible and is intended
to be something on which you can build.

### Filters

#### wpsd_radius_options

Param: `array( 5, 10, 25, 50, 100 )`

This filter allows you to modify the options in the radius dropdown in the store
search form. Values are in miles by default.

#### wpsd_register_post_type

Param: `true`

This filter allows you to disable the `store` post type altogether. To do so, simply
add `add_filter( 'wpsd_register_post_type', '__return_false' )` to your theme or
plugin.

#### wpsd_post_type_args

This filter gives you the ability to modify the arguments passed to `register_post_type()`
for the ‘store’ post type. See [register_post_type in the Codex](https://codex.wordpress.org/Function_Reference/register_post_type)
for valid arguments and values.

Param:

    ```
    array(
        'public'      => true,
        'has_archive' => true,
        'supports'    => array( 'title' ),
        'labels'      => array(
            'name'                => __( 'Stores', 'store-directory' ),
            'singular_name'       => __( 'Store', 'store-directory' ),
            'all_items'           => __( 'Stores', 'store-directory' ),
            'new_item'            => __( 'New store', 'store-directory' ),
            'add_new'             => __( 'Add New', 'store-directory' ),
            'add_new_item'        => __( 'Add New store', 'store-directory' ),
            'edit_item'           => __( 'Edit store', 'store-directory' ),
            'view_item'           => __( 'View store', 'store-directory' ),
            'search_items'        => __( 'Search stores', 'store-directory' ),
            'not_found'           => __( 'No stores found', 'store-directory' ),
            'not_found_in_trash'  => __( 'No stores found in trash', 'store-directory' ),
            'parent_item_colon'   => __( 'Parent store', 'store-directory' ),
            'menu_name'           => __( 'Stores', 'store-directory' ),
        )
    )
    ```

#### wpsd_automap

Param: `true`

By default, a Google Map is added to the store archive views and store singular 
views using the `'loop_start'` action. This may not be desirable in all circumstances,
especially if you loop through your posts multiple times. To disable this, add `
add_filter( 'wpsd_automap', '__return_false' )` to your theme or plugin. If you 
choose to disable this, see the `wpsd_the_map()` tempalte tag to manually display
the map.

#### wpsd_mappable_data

Param:

    ```
    array(
        'name'      => $post->post_title,
        'address'   => get_post_meta( $post->ID, 'address', true ),
        'latitude'  => $post->latitude,
        'longitude' => $post->longitude,
        'distance'  => $post->distance
    )
    ```

Param: `$post`

This filter allows you to customize the data used in the map. There is also a javascript“
hook” that works in tandem with this, `wpsd_custom_create_marker`. To use the data
you pass through the `wpsd_mappable_data` filter, you need to define a javascript
function, `wpsd_custom_create_marker( latlng, data )`. This function should take
two params, where the first is a `google.maps.LatLng` object and the second is an
object with your filtered data. Armed with this data, you can create the marker 
however you need! See `js/maps.js:wpsd_create_marker()` for an example of how to
create a marker.

### Template Tags

#### wpsd_the_store_search_form()

Output the store search form. If you choose not to use the provided widget, this
lets you add the form wherever you’d like.

#### wpsd_the_map()

Param: `$posts` array An array of posts to map. Each entry in the array should contain
the following keys:

 * `'name' =>` The marker title.
 * `'address' =>` The marker address.
 * `'latitude' =>` The latitude of the point.
 * `'longitude' =>` The longitude of the point.
 * `'distance' =>` The distance of the point from the center (optional, not presently
   used).

See `WPSD_Search::get_mappable_data()` for an example.

Param: `$lat` float The latitude of the center point for the map.
 Param: `$long`
float The longitude of the center point for the map.

Output a Google Map with the given points (posts) centered around the given latitude
and longitude.

### Other Notes for Developers

Beyond the above, pretty much everything in this plugin is modifiable by editing
the properties of the singleton classes. Here are some examples:

 * To change the post type, e.g. to be `'location'` instead of store, you can set
   it by calling `WPSD_Post_Type()->post_type = 'location';` from your theme or 
   plugin (ideally during `after_setup_theme` at a priority higher than 10).
 * To change the units from miles to kilometers, `WPSD_Post_Type()->units = 'km';`

## 安装

 1. Upload the plugin to the `/wp-content/plugins/` directory
 2. Activate the plugin through the ‘Plugins’ menu in WordPress
 3. Add stores via the “Stores” menu in the left.
 4. Add the Store Search widget to your toolbar, or add the search form to your theme
    via `wpsd_the_store_search_form()`

## 评价

![](https://secure.gravatar.com/avatar/d5b5a5df8b4349f5099d481e4dc9d2f09fb038135614b022d58e4d1535e81479?
s=60&d=retro&r=g)

### 󠀁[Excellent](https://wordpress.org/support/topic/excellent-4425/)󠁿

 [shaeirving1](https://profiles.wordpress.org/shaeirving1/) 2017 年 2 月 8 日

Excellent plugin, has helped our business in many ways

 [ 阅读所有1条评价 ](https://wordpress.org/support/plugin/store-directory/reviews/)

## 贡献者及开发者

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

贡献者

 *   [ Matthew Boynes ](https://profiles.wordpress.org/mboynes/)

[帮助将「Store Directory」翻译成简体中文。](https://translate.wordpress.org/projects/wp-plugins/store-directory)

### 对开发感兴趣吗?

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

## 更新日志

#### 0.1

Brand new plugin. Enjoy!

## 额外信息

 *  版本 **0.1**
 *  最后更新：**12 年前**
 *  活跃安装数量 **10+**
 *  WordPress 版本 ** 3.0 或更高版本 **
 *  已测试的最高版本为 **3.7.41**
 *  语言
 * [English (US)](https://wordpress.org/plugins/store-directory/)
 * 标签
 * [directory](https://cn.wordpress.org/plugins/tags/directory/)[Google Maps](https://cn.wordpress.org/plugins/tags/google-maps/)
   [location](https://cn.wordpress.org/plugins/tags/location/)[maps](https://cn.wordpress.org/plugins/tags/maps/)
   [store](https://cn.wordpress.org/plugins/tags/store/)
 *  [高级视图](https://cn.wordpress.org/plugins/store-directory/advanced/)

## 评级

 5 星（最高 5 星）。

 *  [  1 条 5 星评价     ](https://wordpress.org/support/plugin/store-directory/reviews/?filter=5)
 *  [  0 条 4 星评价     ](https://wordpress.org/support/plugin/store-directory/reviews/?filter=4)
 *  [  0 条 3 星评价     ](https://wordpress.org/support/plugin/store-directory/reviews/?filter=3)
 *  [  0 条 2 星评价     ](https://wordpress.org/support/plugin/store-directory/reviews/?filter=2)
 *  [  0 条 1 星评价     ](https://wordpress.org/support/plugin/store-directory/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/store-directory/reviews/#new-post)

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

## 贡献者

 *   [ Matthew Boynes ](https://profiles.wordpress.org/mboynes/)

## 支持

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

 [查看支持论坛](https://wordpress.org/support/plugin/store-directory/)