WordPress函数

WordPress常用函数使用方法

简介 检测当前的用户是否有特定的权限,使用之前要确保全局的 $current_user 已经被设置了。 用法 <?php current_user_can( $capability, $args ); ?> 参数 $capability (string) (required) 权限或者角色名称 Default: None $args (mixed) (optional) 额外需要的参数,比如 Post ID,一些权限检测(比如 'edit_post' 或者 'delete_page')需要提供这个参数。 Default: None 返回值 (bool) 如果当前用户有该权限返回 true,否则返回 false。 实例 if ( current_user_can('moderate_comments') ) { echo '当前用户可以审核留言。'; } if ( current_user_can('edit_post', 123) ) { echo '当前用户可以编辑日志 ...

简介 是否指定的日志作者有特定的权限. 用法 <?php author_can( $post, $capability ); ?> 参数 $post (mixed) (required) Post ID 或者 post 对象 Default: None $capability (string) (required) 权限或者角色名称 Default: None 返回值 (bool) 日志作者有该权限返回 true,否则返回 false。 实例 <?php if (author_can($post->ID, 'publish_posts')) { echo "Yes he can publish posts!"; } ?> 修改记录 Since: Wordpress 2.9.0 源文件 wp-includes/capabilities.php

简介 添加一个新的用户角色到 WordPress。 用法 <?php add_role( $role, $display_name, $capabilities ); ?> 参数 $role (string) (required) 用户角色的名称 Default: None $display_name (string) (required) 用户角色的显示名 Default: None $capability (array) (optional) 权限名称的数组 Default: array() 返回值 (mixed) 成功返回 WP_Role 对象,如果添加的用户角色已存在,返回空。 实例 $result = add_role('basic_contributor', 'Basic Contributor', array( 'read' => true, // True allows that capability 'edit_posts' => true, 'delete_posts' => false, // Use false to explicitly...

简介 根据用户角色名称获取用户角色对象。 用法 <?php get_role( $role ); ?> 参数 $role (string) (required) 用户角色名称 Default: None 返回值 (mixed) 成功返回 WP_Role 对象,否则返回空。 修改记录 Since: 2.0.0 源文件 wp-includes/capabilities.php

简介 删除指定的用户角色。 用法 <?php remove_role( $role ); ?> 参数 $role (string) (required) 用户角色名称 Default: None 返回值 无 实例   注解 用户角色的设置是添加到数据库中(表 wp_options 的 wp_user_roles 字段中),所以该函数最好在主题/插件激活的时候调用。 修改记录 Since: 2.0.0 源文件 wp-includes/capabilities.php

简介 给指定的用户角色或者具体的某个用户添加特定的权限。 用法 <?php global $wp_roles; $wp_roles->add_cap( $role, $cap ); ?> 参数 $role WP_Roles 类中才有该参数,WP_Role 和 WP_User 类中没有该参数。 (string) (Required) 用户角色名称 Default: None $cap (string) (Required) 权限名称 Default: None $grant (boolean) (optional) 是否该用户拥有该权限 Default: true 返回值 无 实例 function add_theme_caps() { // 获取作者这个用户角色。 $role = get_role( 'author' ); // 在当前主题让作者也可以编辑其他人的日志。 $role->add_cap( 'edit_others_posts' ); } add_action( 'admin_...

简介 删除指定的用户角色或者具体的某个用户的特定权限。 修改用户角色或者具体用户的权限是永久性的,除非再次授予。 用法 <?php global $wp_roles; $wp_roles->remove_cap( $role, $cap ); ?> 参数 $role WP_Roles 类中才有该参数,WP_Role 和 WP_User 类中没有该参数。 (string) (Required) 用户角色名称 Default: None $cap (string) (Required) 权限名称 Default: None 返回值 无 实例 add_action( 'admin_init', 'remove_editor_read_private_posts' ); function remove_editor_read_private_posts(){ $role = get_role( 'editor' ); $role->remove_cap( 'read_private_posts' ); // 或者 global...

简介 显示当前日志的缩略图(Post Thumbnail)。 这个模板函数必须使用在主循环中,如果要获取任意日志的缩略图,使用 get_the_post_thumbnail($id, $size, $attr ) 函数代替。 用法 <?php the_post_thumbnail( $size, $attr ); ?> 参数 $size (string/array) (Optional) 图片大小,可以是以下几个关键字:thumbnail, medium, large, full,或者通过函数 自定义尺寸的关键字。或者宽和高的一个大小,比如:(32,32). Default: 'post-thumbnail',当前主题通过函数 设置的。 PLEASE NOTE: The crop does not work in WP 3.0+. All that is needed for WP 3.0+ is the call for the thumbnail to post. Then proceed to med...

简介 检测用户是否有特定的权限,和 current_user_can() 类似,但是 user_can 需要一个 user ID 或者 user 对象作为第一个参数。 用法 <?php user_can( $user, $capability ); ?> 参数 $user (object or integer (ID)) (required) 用户 ID 或者对象 Default: None $capability (string) (required) 权限或者角色名称 Default: None 返回值 (bool) 如果用户有该权限返回 true,否则返回 false。 修改记录 Since: Version 3.1 源文件 wp-includes/capabilities.php

简介 检测当前用户对给定的博客是否有权限。这个函数仅适用于 multisite。 用法 <?php current_user_can_for_blog( $blog_id, $capability ); ?> 参数 $blog_id (integer) (required) Blog ID Default: None $capability (string) (required) 权限或者角色名称 Default: None 返回值 (bool) 如果当前用户有该权限返回 true,否则返回 false。 修改记录 Since: 3.0 源文件 wp-includes/capabilities.php

简介 删除所有缓存。 用法 <?php wp_cache_flush(); ?> 参数 无 返回值 (bool) 永远返回 true。 注解 使用到 wp_object_cache 对象缓存的类 WP_Object_Cache::flush() WordPress 对象缓存详细介绍和使用 修改记录 Since 2.0.0 源文件 wp-includes/cache.php

简介 $wpdb->_escape() 的别名,用于进行 SQL 查询之前的字符串处理。 用法 <?php esc_sql( $sql ); ?> 参数 $string (string) (required) 一条转义的 SQL 查询语句。 Default: None 返回值 (string)  转义之后适合 SQL 查询中使用的字符串。 实例 $name=esc_sql($name); $status=esc_sql($status); $wpdb->get_var( "SELECT something FROM table WHERE foo = '$name' and status = '$status'" ); 注解 SQL 转义还是建议首选 $wpdb->prepare(),因为它可以修正一些格式方面的错误。 修改记录 Since: 2.8.0 源文件 wp-includes/formatting.php

简介 检查内容中是否含有指定的 Shortcode。 用法 <?php if ( has_shortcode( $content, 'gallery' ) ) { } ?> 参数 $content (string) (required) 要检测的内容 Default: None $tag (string) (required) 指定的 Shortcode Default: None 返回值 (Bool) 指定的 Shortcode 找的返回 true,否则 false。 实例 if( has_shortcode( $content, 'gallery' ) ) { // 内容中有gallery Shortcode,将返回 true。 } 在内容中含有指定的 Shotcode 的时候才载入相应的脚本。 function custom_shortcode_scripts() { global $post; if( has_shortcode( $post->post_content, 'custom-shortcode') ) { wp_enqueue_script( ...

简介 用在表单中的下拉菜单,用于比较两个给定的值(比如:保存的值和当前的值),如果值相同,给当前的选项添加 selected 属性。 用法 <?php selected( $selected, $current, $echo); ?> 参数 $selected (mixed) (required) 用于比较的值,已经在数据库中保存的。 Default: None $current (mixed) (optional) 另外的值(如果不为 true),当前选项的值。 Default: true $echo (boolean) (optional) 返回结果是输出还是返回字符串。 Default: true 返回值 (string) HTML 属性 (selected='selected') 或者空的字符串。 修改记录 Since: 1.0 源文件 wp-includes/general-template.php

简介 用在表单中的多选和单选按钮中。用于比较两个给定的值(比如,已经保存到数据库的值和表单中的值),如果两个值相同,添加 checked 属性到当前的多选和单选按钮中。 用法 <?php checked( $checked, $current, $echo ); ?> 参数 $selected (mixed) (required) 用于比较的值,已经在数据库中保存的。 Default: None $current (mixed) (optional) 另外的值(如果不为 true),当前选项的值。 Default: true $echo (boolean) (optional) 返回结果是输出还是返回字符串。 Default: true 返回值 (string) HTML 属性 (checked='checked') 或者空的字符串。 实例 使用 if() 测试值: <input checked="checked" n...