get_bookmarks()

get_bookmarks()
目次

get_bookmarks()の用途

get_bookmarks() は、WordPress に登録された複数のブックマーク(リンク)を取得する関数です。返されるのは配列形式で、link_urllink_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_invisiblebool表示対象のみに絞るか(true:非表示リンクを除く)
show_updatedbool最終更新があるリンクのみ取得
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_relrel属性の値
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以降は「リンク」機能が初期状態で無効
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

初めてホームページを作成したのは1996年。
2000年よりフリーランスで主に中小企業、学校、各種公的団体、個人事業主のWordPressを活用したホームページ制作を行っています。WordPressテーマはそれぞれのクライアントに合わせて作成しています。
WordPressを活用したサイト運営のための情報発信をしていきます。

目次