2014/1/26

WordPressでモジュール化したカスタム投稿タイプのカスタムフィールドの値を読み込む(長い)

以前、カスタム投稿タイプをモジュール化してあげて、それをfunctions.phpの関数から呼び出すというのをやりました。

WordPressのパーツのモジュール化のアイデア : kosukekato.com

これの応用編で、モジュール化されたカスタム投稿タイプのカスタムフィールドの値を参照して呼び出す、というのを作りました。こんな感じでfunctions.phpに用意しておいて。

function get_page_id_by_slug($page_slug) {
	global $wpdb;
	return $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type='module'", $page_slug ));
}

function load_custom_value( $posttype, $name, $value) {
	$pagid = get_page_id_by_slug($name);
  $parm = array(
  'post_type'=>$posttype,
  'name'=>$name
  );
  query_posts($parm);
  if (have_posts()) : while (have_posts()) : the_post();
    $output = get_post_meta($pagid,$value, TRUE);
  endwhile;
  endif;
  wp_reset_query();
  return $output;
}

んで、テンプレートで、

<?php echo load_custom_value('module','carousel','停止時間'); ?>

みたいな感じで呼び出すと。

こうすると、jQueryの実行時の設定とかも管理画面からいじれますよね、と思い。実装が多くなると、マニアネタが増える。

加藤 康祐 / 企画・設計

プランナー、デザイナー。加藤康祐企画設計代表。Webデザインを入り口に、2005年よりフリーランスとしてのキャリアスタート。主な仕事としてベンチャー企業でのサービスのUXデザイン、独法との防災メディアの運営、社会的養護の子どもたちの自立を支援するNPOのサポート。ラグビーと料理、最近イラスト。

加藤康祐企画設計

是非、フォローしてください!
Twitter / Instagram

(2012-10-5)
売り上げランキング: 14,705
100円