get_bookmark_field()

get_bookmark_field()
目次

get_bookmark_field()の用途

get_bookmark_field() は、WordPress に登録されたブックマーク(リンク)データの特定の「フィールド(項目)」を取得する関数です。

特定のブックマークIDから、URLや名前、説明文などの1項目だけを文字列として取得したいときに使います。HTML出力はせず、「値だけ」を取得する点が get_bookmark() との違いです。

get_bookmark_field()の基本構文

get_bookmark_field( $field, $bookmark, $context = 'display' );

get_bookmark_field()の引数

パラメータ必須説明
$field必須文字列取得したいフィールド名(例:'link_url', 'link_name'
$bookmark必須int または WP_BookmarkブックマークIDまたはWP_Bookmarkオブジェクト
$context任意文字列'raw', 'edit', 'db', 'display'(デフォルト)。フィルタリングの対象指定

get_bookmark_field()の返り値

  • 指定したフィールドの値(文字列)

get_bookmark_field()の使用例

ブックマークIDが5のリンク名(link_name)を取得

$link_name = get_bookmark_field( 'link_name', 5 );
echo esc_html( $link_name );

出力例:

おすすめサイト

URL を取得してリンクにする

$link_url  = get_bookmark_field( 'link_url', 5 );
$link_name = get_bookmark_field( 'link_name', 5 );

echo '<a href="' . esc_url( $link_url ) . '">' . esc_html( $link_name ) . '</a>';

get_bookmark_field()のよく使われる $field 一覧

フィールド名説明
link_idブックマークID
link_urlリンクのURL
link_nameリンクのタイトル(表示名)
link_imageアイコン画像URL
link_targetターゲット(例:_blank
link_description説明文
link_visibleY または N(表示/非表示)
link_rating評価(1~10)
link_relrel属性の値
link_notes管理用メモ

$context の使い分け

コンテキスト説明
'raw'生のデータ(フィルターなし)
'display'(デフォルト)フィルター済み(get_bookmark_field_{$field} フィルターが適用)
'edit'編集画面用(管理画面用の処理が加えられる)
'db'データベースそのまま

通常は display で問題ありませんが、カスタム用途やデータ保存時は raw を使うことがあります。

get_bookmark() との違い

関数名目的戻り値
get_bookmark()ブックマーク全体を取得オブジェクトや配列(多項目)
get_bookmark_field()特定のフィールドだけを取得文字列(単一項目)

get_bookmark_field()の実用例:アイコン付きリンクリストを1件表示

$id = 5;
$url  = get_bookmark_field( 'link_url', $id );
$name = get_bookmark_field( 'link_name', $id );
$icon = get_bookmark_field( 'link_image', $id );

echo '<a href="' . esc_url( $url ) . '" target="_blank">';
if ( $icon ) {
    echo '<img src="' . esc_url( $icon ) . '" alt="' . esc_attr( $name ) . '"> ';
}
echo esc_html( $name ) . '</a>';

get_bookmark_field()の注意点

  • ブックマーク(リンク)機能は WordPress 3.5 以降デフォルトで無効になっており、使用するには「Link Manager」プラグインの有効化やフィルター追加が必要です。
  • IDが存在しない場合は null を返します。
  • $field の入力ミスに注意(例:link_url はOK、url はNG)

get_bookmark_field()のまとめ

項目内容
関数名get_bookmark_field()
目的ブックマークの特定フィールドだけを取得(表示しない)
引数$field, $bookmark, $context
戻り値指定フィールドの文字列
用途カスタム表示、独自UI、値の再利用などに最適
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

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

目次