私はカスタム投稿estate_property
があり、その分類法はproperty_category
、propert_action
です。分類法の各カテゴリの画像をアップロードするためにWPCustom Category Image
をインストールしました。アップロードされた画像を表示する方法。検索しても画像が表示されません。私のコードは
$taxonomy_name = 'property_category';
$asd=get_the_terms($post->ID, $taxonomy_name);
var_dump($asd);
それは何も返しません。
WPCustomカテゴリ画像プラグインの詳細ページから: https://wordpress.org/support/plugin/wpcustom-category-image
1st - Wp-Admin - >投稿(または投稿タイプ) - >カテゴリ(または分類)に移動して、カスタムカテゴリ画像オプションを表示します。
第2 ...単一のカテゴリの画像を表示するか、複数の画像をループで表示するかに応じて -
//シングル
echo do_shortcode('[wp_custom_image_category onlysrc="https://wordpress.org/plugins/wpcustom-category-image/false" size="full" term_id="123" alt="alt :)"]');
//ループ
foreach( get_categories(['hide_empty' => false]) as $category) {
echo $category->name . '<br>';
echo do_shortcode(sprintf('[wp_custom_image_category term_id="%s"]',$category->term_id));
}
さらに、ここにはカテゴリテンプレートの例があります -
Get_the_termsが何も返さない場合は、$ wp_errorが返されることを確認する必要があります。この関数は、成功した場合にタームオブジェクトの配列を返します。タームが存在しない場合または投稿が存在しない場合はfalse、失敗した場合はWP_Errorを返します(分類法が存在しない場合)。
このようにコードを修正するだけです。
$taxonomy_name = 'property_category';
$asd=get_the_terms($post->ID, $taxonomy_name);
if(is_wp_error($asd){
$error_string = $asd->get_error_message();
var_dump($error_string);
}
else{
var_dump($asd);
}
カテゴリ画像がterm_metaとして格納されている可能性が多く、get_term_meta()関数で取得できます。この関数はget_post_metaのように機能します。
上記と同じで、正しいメタを取得するためにキーを変更する必要がある場合、または最初のパラメータを設定してterm_idのすべてのメタの配列を取得する場合があります。
$taxonomy_name = 'property_category';
$asd=get_the_terms($post->ID, $taxonomy_name);
if(is_wp_error($asd){
$error_string = $asd->get_error_message();
var_dump($error_string);
}
else{
var_dump($asd);
foreach($asd as $term){
$term_id = $term->term_id;
$term_image = get_term_meta($term_id, 'image_category', true); //false returns an array
var_dump($term_image);
}
}
私はWPCustom Category Imageプラグインに慣れていませんが、おそらく画像を取得するためにget_category_image($category_id)
(またはそのようなもの)のような別の関数が必要です。