get_bookmark()

get_bookmark()
目次

get_bookmark()の用途

get_bookmark() は、WordPress のブックマーク(リンク)データを1件取得するための関数です。wp_list_bookmarks()get_bookmarks() のように複数のリンクを一覧で取得するのではなく、特定の ID を持つブックマークの詳細情報を取得する目的で使います。

get_bookmark()の基本構文

get_bookmark( $bookmark, $output = OBJECT, $filter = 'raw' );

get_bookmark()の引数

引数必須説明
$bookmark必須int または WP_Bookmarkブックマーク ID、または WP_Bookmark オブジェクト
$output任意文字列返すデータの形式。OBJECT(デフォルト) / ARRAY_A(連想配列) / ARRAY_N(数値添字配列)
$filter任意文字列取得したデータのフィルター方法。通常は 'raw' のままでOK

get_bookmark()の戻り値(返り値)

  • WP_Bookmark オブジェクト(または指定された形式の配列)
  • ブックマークが見つからない場合は null

get_bookmark()の使用例

IDが5のブックマーク情報を取得して表示

$bookmark = get_bookmark( 5 );

if ( $bookmark ) {
    echo '<a href="' . esc_url( $bookmark->link_url ) . '">' . esc_html( $bookmark->link_name ) . '</a>';
}

出力例:

<a href="https://example.com">おすすめサイト</a>

$output の違い

OBJECT(デフォルト)

$bookmark = get_bookmark( 5 );
echo $bookmark->link_name;

ARRAY_A(連想配列)

$bookmark = get_bookmark( 5, 'ARRAY_A' );
echo $bookmark['link_name'];

ARRAY_N(数値配列)

$bookmark = get_bookmark( 5, 'ARRAY_N' );
echo $bookmark[3]; // 項目の位置に注意

get_bookmark()の取得できる主なプロパティ(オブジェクト形式)

プロパティ説明
link_idブックマークID
link_urlリンクのURL
link_nameリンクのタイトル
link_image画像URL(未使用が多い)
link_targetターゲット(例:_blank
link_description説明文
link_visible表示/非表示(Y / N
link_notes管理用のメモ
link_ratingレーティング(評価)
link_relリンク関係属性(rel)
link_category関連カテゴリ(未加工のまま)

get_bookmark()のよくある用途

  • 特定のリンクだけをテンプレート内で手動表示
  • カスタムUIでのリンク表示
  • 「リンクマネージャー」データを個別に参照

get_bookmark()の注意点

  • WordPress 3.5以降、リンクマネージャー機能はデフォルトで無効です。
    • 有効化には「Link Manager」プラグインを使うか、functions.php に以下を追加: add_filter( 'pre_option_link_manager_enabled', '__return_true' );
  • IDを間違えると null が返るため、エラーチェックは必須です。
  • カテゴリ情報は get_the_terms() などとは連携していないため、追加処理が必要な場合があります。

get_bookmark()のまとめ

項目内容
関数名get_bookmark()
目的特定のリンク情報(ブックマーク)を1件取得
戻り値WP_Bookmark オブジェクトまたは配列
主なプロパティlink_url, link_name, link_description など
使用例<a href="...">リンク名</a> の生成など
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

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

目次