get_edit_bookmark_link()
云策文档标注
概述
get_edit_bookmark_link() 函数用于生成书签编辑链接的 URL,适用于 WordPress 开发者管理书签功能。它检查用户权限并返回过滤后的链接。
关键要点
- 参数 $link 可选,可以是书签 ID 或 stdClass 对象,默认为当前书签 ID。
- 返回值为字符串(链接 URL)或 void(如果用户无权限)。
- 函数内部调用 get_bookmark() 获取书签数据,并使用 current_user_can('manage_links') 检查用户权限。
- 通过 admin_url() 构建编辑链接,并应用 get_edit_bookmark_link 过滤器进行自定义。
代码示例
function get_edit_bookmark_link( $link = 0 ) {
$link = get_bookmark( $link );
if ( ! current_user_can( 'manage_links' ) ) {
return;
}
$location = admin_url( 'link.php?action=edit&link_id=' ) . $link->link_id;
/**
* Filters the bookmark edit link.
*
* @since 2.7.0
*
* @param string $location The edit link.
* @param int $link_id Bookmark ID.
*/
return apply_filters( 'get_edit_bookmark_link', $location, $link->link_id );
}注意事项
- 确保用户具有 'manage_links' 权限,否则函数返回 void。
- 使用 apply_filters('get_edit_bookmark_link', $location, $link_id) 可自定义链接。
- 相关函数包括 get_bookmark()、current_user_can()、admin_url() 和 apply_filters()。
原文内容
Displays the edit bookmark link.
Parameters
$linkint|stdClassoptional-
Bookmark ID. Default is the ID of the current bookmark.
Source
function get_edit_bookmark_link( $link = 0 ) {
$link = get_bookmark( $link );
if ( ! current_user_can( 'manage_links' ) ) {
return;
}
$location = admin_url( 'link.php?action=edit&link_id=' ) . $link->link_id;
/**
* Filters the bookmark edit link.
*
* @since 2.7.0
*
* @param string $location The edit link.
* @param int $link_id Bookmark ID.
*/
return apply_filters( 'get_edit_bookmark_link', $location, $link->link_id );
}
Hooks
- apply_filters( ‘get_edit_bookmark_link’, string $location, int $link_id )
-
Filters the bookmark edit link.
Changelog
| Version | Description |
|---|---|
| 2.7.0 | Introduced. |