ワイヤード・パンチ

元・大阪人が、岡山の山奥でも生きていけることを証明するためのブログ。

Osclassで、指定したカスタムフィールドの値を取得する方法。

Osclassに「Custom Attributes」というプラグインをインストールすると、広告投稿にカスタムフィールドを追加できるようになります。

そして、プラグインでカスタムフィールドが追加されるにもかかわらず、Osclassにはいちおう、カスタムフィールドの値を取得するための関数が用意されています。

しかし、その関数一覧を見ても、なぜか全部取得か、あるいはループしながら取得しかなかったのです。

広告

すべてのカスタムフィールドから一つだけ抜き出す。

残念ながらWordpressのget_post_metaみたいに、カスタムフィールドのスラッグを一つだけ指定して取得するような関数が見つかりませんでした。

しかし、全部のカスタムフィールドを取得する関数なら存在するので、それを利用しつつ、一つだけ取得するコードを作ってみます。

function get_post_meta($key) {
	$metas = osc_get_item_meta();
	foreach($metas as $meta) {
		if($meta["s_slug"] == $key) {
			return $meta["s_value"];
		}
	}
}

上記の関数を「functions.php」に追加して、カスタムフィールドを表示させたい箇所で呼び出しましょう。

なお、処理の流れとしては、単純にループの中で引数と同じスラッグのカスタムフィールドが見つかったときに離脱するというものです。