Arkhe Toolkitで設定する背景画像・サブタイトルをトップページ(front-page.php)で表示させたい
引用元 Toshi 2023年2月4日, 1:40 PM中お世話になります。
カスタム投稿タイプのターム(カテゴリー)アーカイブページの
- 見出し
- タームアーカイブページリンク
- 背景画像
- サブタイトル
を取得してトップページでスライダーで表現できたらと思っています。
swiperに関する細かいコードは別にテストコードとして
<?php$the_query =newWP_Term_Query($args);foreach ($the_query->get_terms() as $term) :$list_src .='<li><a href="'.get_term_link($term) .'">'. $term->name .'</a></li>';endforeach; ?><!-- END: タームリスト --><?php echo'<ul>'. $list_src .'</ul>'; ?>と記載することで、リンクとタイトルは表示できているのですが、背景画像やサブタイトルに関してうまく取得できません。
どのようにコードを書いて実装したらいいのかご教示お願いできましたら嬉しいです。
※画像に関しては以下のコードが対象となるのだろうとは思うのですが、
<?phpif ( $bgimg_id ) :Arkhe::get_image( $bgimg_id, array('class'=>'p-topArea__img c-filterLayer__img u-obf-cover','alt'=>'','loading'=> $lazy_type,'aria-hidden'=>'true','decoding'=>'async','echo'=>true,));endif;?>残念ながらまだ紐解けておりません。どうぞよろしくおねがいします。
お世話になります。
カスタム投稿タイプのターム(カテゴリー)アーカイブページの
- 見出し
- タームアーカイブページリンク
- 背景画像
- サブタイトル
を取得してトップページでスライダーで表現できたらと思っています。
swiperに関する細かいコードは別にテストコードとして
<?php$the_query =newWP_Term_Query($args);foreach ($the_query->get_terms() as $term) :$list_src .='<li><a href="'.get_term_link($term) .'">'. $term->name .'</a></li>';endforeach; ?><!-- END: タームリスト --><?php echo'<ul>'. $list_src .'</ul>'; ?>
と記載することで、リンクとタイトルは表示できているのですが、背景画像やサブタイトルに関してうまく取得できません。
どのようにコードを書いて実装したらいいのかご教示お願いできましたら嬉しいです。
※画像に関しては以下のコードが対象となるのだろうとは思うのですが、
<?phpif ( $bgimg_id ) :Arkhe::get_image( $bgimg_id, array('class'=>'p-topArea__img c-filterLayer__img u-obf-cover','alt'=>'','loading'=> $lazy_type,'aria-hidden'=>'true','decoding'=>'async','echo'=>true,));endif;?>
引用元 Toshi 2023年2月8日, 8:09 AM中WP_Term_Query($args)
に関しては色々調べて、画像の取得ができないのではないかと思ってます。
Arkhe Toolkitで設定できる背景画像をサブループで取得、トップページのスライダーなどで表現できる方法があればご教示ください。
WP_Term_Query($args)
に関しては色々調べて、画像の取得ができないのではないかと思ってます。
Arkhe Toolkitで設定できる背景画像をサブループで取得、トップページのスライダーなどで表現できる方法があればご教示ください。
引用元 了 2023年2月17日, 4:12 PM中普通にメタデータとして保存してますよ!
Arkheでは、画像部分はToolkitが担当しているので、フックで画像取得してセットしてる感じですね。
/** * タイトル背景画像 */ add_filter( 'arkhe_ttlbg_img_id', __NAMESPACE__ . '\hook__ttlbg_img_id', 10, 2 ); function hook__ttlbg_img_id( $img_id, $page_id ) { if ( is_category() || is_tag() || is_tax() ) { $meta_id = get_term_meta( $page_id, 'ark_meta_ttlbg', true ); } else { $meta_id = get_post_meta( $page_id, 'ark_meta_ttlbg', true ); } return $meta_id ?: $img_id; }
普通にメタデータとして保存してますよ!
Arkheでは、画像部分はToolkitが担当しているので、フックで画像取得してセットしてる感じですね。
/**
* タイトル背景画像
*/
add_filter( 'arkhe_ttlbg_img_id', __NAMESPACE__ . '\hook__ttlbg_img_id', 10, 2 );
function hook__ttlbg_img_id( $img_id, $page_id ) {
if ( is_category() || is_tag() || is_tax() ) {
$meta_id = get_term_meta( $page_id, 'ark_meta_ttlbg', true );
} else {
$meta_id = get_post_meta( $page_id, 'ark_meta_ttlbg', true );
}
return $meta_id ?: $img_id;
}
引用元 Toshi 2023年2月17日, 9:39 PM中ありがとうございます。まだ試していないのですが、
hook__ttlbg_img_id( $img_id, $page_id )
で取得できるメタ情報を
WP_Term_Query($args)
のサブループで回すという感じでしょうか。
- いっつも忘れるWP_Queryの使用方法とパラメータ一覧。がっつり整理してみた
- WordPressでカテゴリー・タグ・タクソノミーのタームを全取得して一覧表示する方法【WP_Term_Query / get_terms()】
やArkheのマニュアルなどを参考にしながらやってみているのですが、もしよりよい方法やその方法は間違っているなどご教示頂けることがありましたら幸いです
ありがとうございます。まだ試していないのですが、
hook__ttlbg_img_id( $img_id, $page_id )
で取得できるメタ情報を
WP_Term_Query($args)
のサブループで回すという感じでしょうか。
- いっつも忘れるWP_Queryの使用方法とパラメータ一覧。がっつり整理してみた
- WordPressでカテゴリー・タグ・タクソノミーのタームを全取得して一覧表示する方法【WP_Term_Query / get_terms()】
やArkheのマニュアルなどを参考にしながらやってみているのですが、もしよりよい方法やその方法は間違っているなどご教示頂けることがありましたら幸いです
引用元 Toshi 2023年2月21日, 6:04 PM中頂いた返信から改めて諸々調べながらやっているのですが、
(例) WordPressでスラッグ名からIDを取得する方法。投稿・固定ページ・カテゴリ・タグ・タクソノミーごとの違いを整理。 等...
Toolkitプラグインで設定されている背景画像の取得方法がわかりません。
すべてを教えていただくのは自分のために良しとしていないのですが、改めてご教示いただけないでしょうか?
やりたいことは
- タームアーカイブのタイトル背景画像(Arkhe Toolkit)
- タイトル
- タームアーカイブのリンク
を取得してfront-page.phpでスライダーとして表現をしたいです。以前こちらに投稿した下記のコードでタームリンクと表題は記述の良し悪しは別にして表示されてはいます。
<?php $the_query =newWP_Term_Query($args); foreach ($the_query->get_terms() as $term) : $list_src .='<li><a href="'.get_term_link($term) .'">'. $term->name .'</a></li>'; endforeach; ?> <!-- END: タームリスト --> <?php echo'<ul>'. $list_src .'</ul>'; ?>
お忙しいところ大変恐縮ですが、ご回答をお願いできれば幸いです。よろしくおねがいします
頂いた返信から改めて諸々調べながらやっているのですが、
(例) WordPressでスラッグ名からIDを取得する方法。投稿・固定ページ・カテゴリ・タグ・タクソノミーごとの違いを整理。 等...
Toolkitプラグインで設定されている背景画像の取得方法がわかりません。
すべてを教えていただくのは自分のために良しとしていないのですが、改めてご教示いただけないでしょうか?
やりたいことは
- タームアーカイブのタイトル背景画像(Arkhe Toolkit)
- タイトル
- タームアーカイブのリンク
を取得してfront-page.phpでスライダーとして表現をしたいです。以前こちらに投稿した下記のコードでタームリンクと表題は記述の良し悪しは別にして表示されてはいます。
<?php
$the_query =newWP_Term_Query($args);
foreach ($the_query->get_terms() as $term) :
$list_src .='<li><a href="'.get_term_link($term) .'">'. $term->name .'</a></li>';
endforeach; ?>
<!-- END: タームリスト -->
<?php echo'<ul>'. $list_src .'</ul>'; ?>
お忙しいところ大変恐縮ですが、ご回答をお願いできれば幸いです。よろしくおねがいします
引用元 Toshi 2023年2月23日, 5:56 PM中ご教示頂いたようにやってはみるものの理解不足にて画像については一つの画像しか取得できず困っております。
間違ったコードにて恐縮ですが以下に記載させていただきます。改めてご教示いただけましたら幸いです。度々恐れ入りますがよろしくおねがいします。<!-- START: タームリスト --> <?php $term_query = new WP_Term_Query($args_term); $tax_all = get_terms('achievement_cat'); foreach ($term_query->get_terms() as $tq) : if (count($tax_all) > 0) : foreach ($tax_all as $tax) : $term_img = get_term_meta($tax->term_id, 'ark_meta_ttlbg', true); $img_url = wp_get_attachment_image_src($term_img, 'full'); if ($img_url) : ?> <img src="<?php echo $img_url[0] ?>" alt="<?php echo $tax->name; ?>"> <?php endif; endforeach; endif; $list_src .= '<li><a href="' . get_term_link($tq) . '">' . $tq->name . '</a></li>'; endforeach; ?> <!-- END: タームリスト --> <?php echo '<ul>' . $list_src . '</ul>'; var_dump($term_img); ?>
ご教示頂いたようにやってはみるものの理解不足にて画像については一つの画像しか取得できず困っております。
間違ったコードにて恐縮ですが以下に記載させていただきます。改めてご教示いただけましたら幸いです。度々恐れ入りますがよろしくおねがいします。
<!-- START: タームリスト -->
<?php
$term_query = new WP_Term_Query($args_term);
$tax_all = get_terms('achievement_cat');
foreach ($term_query->get_terms() as $tq) :
if (count($tax_all) > 0) :
foreach ($tax_all as $tax) :
$term_img = get_term_meta($tax->term_id, 'ark_meta_ttlbg', true);
$img_url = wp_get_attachment_image_src($term_img, 'full');
if ($img_url) :
?>
<img src="<?php echo $img_url[0] ?>" alt="<?php echo $tax->name; ?>">
<?php
endif;
endforeach;
endif;
$list_src .= '<li><a href="' . get_term_link($tq) . '">' . $tq->name . '</a></li>';
endforeach;
?>
<!-- END: タームリスト -->
<?php echo '<ul>' . $list_src . '</ul>';
var_dump($term_img);
?>
引用元 了 2023年2月26日, 4:10 PM中WP_Term_Queryとget_terms両方使って両方でループ回すというよくわからない構造になってますね....
var_dump($term_img);もループの外で最後に吐き出してるので、一回しか吐き出されないです。
WP_Term_Queryとget_terms両方使って両方でループ回すというよくわからない構造になってますね....
var_dump($term_img);もループの外で最後に吐き出してるので、一回しか吐き出されないです。
引用元 了 2023年2月26日, 4:24 PM中以下のコードに修正すると動くと思います。
$term_query = new WP_Term_Query( array( 'taxonomy' => 'achievement_cat', ) ); $list_src = ''; foreach ( $term_query->get_terms() as $term_data ) : $img = ''; $term_img = get_term_meta( $term_data->term_id, 'ark_meta_ttlbg', true ); if ( $term_img ) { $img = Arkhe::get_image( $term_img, array( 'size' => 'medium', 'alt' => $term_data->name, ) ); } $list_src .= '<li>' . $img . '<a href="' . get_term_link( $term_data ) . '">' . $term_data->name . '</a></li>'; endforeach; echo '<ul>' . $list_src . '</ul>';
※ wp_get_attachment_image_srcでソース取得してももちろんいいのですが、Arkhe側に画像取得メソッド用意してるのでそれ使ってます。
以下のコードに修正すると動くと思います。
$term_query = new WP_Term_Query( array(
'taxonomy' => 'achievement_cat',
) );
$list_src = '';
foreach ( $term_query->get_terms() as $term_data ) :
$img = '';
$term_img = get_term_meta( $term_data->term_id, 'ark_meta_ttlbg', true );
if ( $term_img ) {
$img = Arkhe::get_image( $term_img, array(
'size' => 'medium',
'alt' => $term_data->name,
) );
}
$list_src .= '<li>' . $img . '<a href="' . get_term_link( $term_data ) . '">' . $term_data->name . '</a></li>';
endforeach;
echo '<ul>' . $list_src . '</ul>';
※ wp_get_attachment_image_srcでソース取得してももちろんいいのですが、Arkhe側に画像取得メソッド用意してるのでそれ使ってます。
引用元 Toshi 2023年3月3日, 7:06 PM中ご連絡が遅くなりました。
WP_Term_Queryとget_terms両方使って両方でループ回すというよくわからない構造...
本当です。ハマってしまってなかなか抜け出せず…
ご教示ありがとうございました。wemo.techのブログ記事なども拝見しながらまた今後もお伺いすることも多いかと思いますがよろしくおねがいします。
ご連絡が遅くなりました。
WP_Term_Queryとget_terms両方使って両方でループ回すというよくわからない構造...
本当です。ハマってしまってなかなか抜け出せず…
ご教示ありがとうございました。wemo.techのブログ記事なども拝見しながらまた今後もお伺いすることも多いかと思いますがよろしくおねがいします。