get_bookmarks()
目次
get_bookmarks()の用途
get_bookmarks()
は、WordPress に登録された複数のブックマーク(リンク)を取得する関数です。返されるのは配列形式で、link_url
や link_name
などの情報を含む WP_Bookmark
オブジェクトの配列です。
get_bookmarks()の基本構文
$bookmarks = get_bookmarks( $args );
get_bookmarks()は何をする関数か?
wp_list_bookmarks()
が「表示」を目的とするのに対し、
get_bookmarks()
は「取得」を目的とした関数です。
- リンクマネージャー機能(blogroll)に登録されたリンクを、プログラム的に操作・加工したいときに使います。
get_bookmarks()の主な用途
- 自作テンプレート内でリンクをカスタム表示したい
- ブックマークをループ処理で自由に出力したい
<select>
メニューやリストなどに変換したい
get_bookmarks()の主な引数一覧($args
)
引数名 | 型 | 説明 |
---|
orderby | 文字列 | 並び順(例:'name' , 'rating' , 'id' , 'rand' ) |
---|
order | 文字列 | 'ASC' / 'DESC' |
---|
limit | 数値 | 取得件数(例:10) |
---|
category | 数値/文字列 | カテゴリIDやスラッグ(例:3 , 'blogroll' ) |
---|
category_name | 文字列 | カテゴリスラッグ名(例:'favorites' ) |
---|
hide_invisible | bool | 表示対象のみに絞るか(true :非表示リンクを除く) |
---|
show_updated | bool | 最終更新があるリンクのみ取得 |
---|
include | カンマ区切り | 特定のリンクIDのみ取得(例:'2,5,9' ) |
---|
exclude | カンマ区切り | 特定のリンクIDを除外 |
---|
get_bookmarks()の戻り値
WP_Bookmark
オブジェクトの配列
(link_name
, link_url
, link_description
などのプロパティを持つ)
get_bookmarks()の使用例①:すべてのリンクを取得して表示
$bookmarks = get_bookmarks();
foreach ( $bookmarks as $bookmark ) {
echo '<a href="' . esc_url( $bookmark->link_url ) . '" target="_blank">';
echo esc_html( $bookmark->link_name );
echo '</a><br>';
}
get_bookmarks()の使用例②:特定カテゴリのリンクのみ取得
$bookmarks = get_bookmarks( array(
'category_name' => 'blogroll',
'orderby' => 'name',
'order' => 'ASC'
) );
foreach ( $bookmarks as $bookmark ) {
echo '<li><a href="' . esc_url( $bookmark->link_url ) . '">' . esc_html( $bookmark->link_name ) . '</a></li>';
}
get_bookmarks()の使用例③:非表示リンクも含めて取得(hide_invisible => false
)
$bookmarks = get_bookmarks( array(
'hide_invisible' => false
) );
各 WP_Bookmark
の主なプロパティ
プロパティ名 | 内容 |
---|
link_id | ブックマークID |
---|
link_url | リンクのURL |
---|
link_name | リンクのタイトル |
---|
link_image | アイコン画像URL |
---|
link_target | リンクの target 属性(例:_blank ) |
---|
link_description | 説明文 |
---|
link_notes | 管理用メモ |
---|
link_rating | 評価(1〜10) |
---|
link_rel | rel属性の値 |
---|
link_visible | 表示/非表示(Y または N ) |
---|
get_bookmarks()の注意点
- WordPress 3.5 以降は「リンク」機能はデフォルトで無効です。
- 有効化するには:
add_filter( 'pre_option_link_manager_enabled', '__return_true' );
- またはプラグイン「Link Manager」をインストール
- カスタムメニュー機能の登場以降、この関数は主にレガシーコードや独自用途で使われます。
get_bookmarks()
と wp_list_bookmarks()
の違い
関数名 | 用途 | 出力/取得 |
---|
get_bookmarks() | ブックマークを取得して加工したいとき | オブジェクト配列で返す |
---|
wp_list_bookmarks() | ブックマークをリスト表示したいとき | HTMLをそのまま出力 |
---|
get_bookmarks()のまとめ
項目 | 内容 |
---|
関数名 | get_bookmarks() |
---|
用途 | ブックマーク(リンク)の一覧を取得 |
---|
戻り値 | WP_Bookmark オブジェクトの配列 |
---|
カスタマイズ性 | 並び順・カテゴリ・表示可否など引数で調整可能 |
---|
注意点 | WordPress 3.5以降は「リンク」機能が初期状態で無効 |
---|
この記事を書いた人
初めてホームページを作成したのは1996年。
2000年よりフリーランスで主に中小企業、学校、各種公的団体、個人事業主のWordPressを活用したホームページ制作を行っています。WordPressテーマはそれぞれのクライアントに合わせて作成しています。
WordPressを活用したサイト運営のための情報発信をしていきます。