[ 解決済 ] カスタム投稿タイプ「例:顧客情報」で、コンテンツエリア用のウィジェットが作りたい
[ 解決済 ] カスタム投稿タイプ「例:顧客情報」で、コンテンツエリア用のウィジェットが作りたい
-
投稿者投稿
-
2019年11月7日 1:44 PM #24528
max-stone参加者こちらの記事ではトップページのコンテンツエリア右と左のウィジェット生成コードが記載されております。
今回はカスタム投稿タイプで生成した固定ページ、投稿ページ、カテゴリーページのいずれでも編集ができる
「カスタム投稿タイプページエリア上部」のような機能をみたすウィジェットエリアの作り方を教えていただけませんでしょうか。
なにぶん、仕事で困っております。回答の方頂けると非常に助かります。宜しくお願い致します。
2019年11月7日 5:28 PM #24541
DRILL LANCERモデレーター今回はカスタム投稿タイプで生成した固定ページ、投稿ページ、カテゴリーページのいずれでも編集ができる「カスタム投稿タイプページエリア上部」のような機能をみたすウィジェットエリアの作り方を教えていただけませんでしょうか。
「コンテンツエリア(共通上部)」という感じの解釈でOKならば下記で実現可能です。
ただし、Lightning 7.0.0 / Lightning Pro 2.0.0 以上が必要です。/** * Define Widget Areas */ function define_widget_areas() { register_sidebar( array( 'name' => 'コンテンツエリア(共通上部)', 'id' => 'common-content-area-prepend', 'before_widget' => '<div class="widget %2$s" id="%1$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="mainSection-title">', 'after_title' => '</h2>', ) ); } add_action( 'widgets_init', 'define_widget_areas', 100 ); /** * Place Widget Areas */ function place_widget_areas() { if ( is_active_sidebar( 'common-content-area-prepend' ) ) { dynamic_sidebar( 'common-content-area-prepend' ); } } add_action( 'lightning_mainSection_prepend', 'place_widget_areas' ); // トップページコンテンツエリア上部の上に表示する場合 // add_action( 'lightning_home_content_top_widget_area_before', 'place_widget_areas' ); // トップページコンテンツエリア上部の下に表示する場合 // add_action( 'lightning_home_content_top_widget_area_after', 'place_widget_areas' );2019年11月7日 7:31 PM #24547
max-stone参加者RICKさん いつも回答ありがとうございます。
それがですね、、共通ではなく、特定の記事にしか出力させたくないんですね。
その方法はありますでしょうか。。また、このようなIDはマニュアルなどに記載されているものか、お伺いしてもよろしいでしょうか。
common-content-area-prepend後少しお付き合いいただけますでしょうか。
2019年11月7日 8:11 PM #24553
DRILL LANCERモデレーターそれがですね、共通ではなく、特定の記事にしか出力させたくないんですね。
その方法はありますでしょうか。特定の記事のみというのはどういうことでしょうか?
LPみたいに記事ごとに必要ということなのでしょうか?
それだと 外観 > ウィジェット の右半分がかなりカオスになりそうな気がします。下記にあるようにプラグインで条件指定して出し分けをするという手法ではだめですか?
投稿タイプごとということならまだまだ対応余地があります。
また、このようなIDはマニュアルなどに記載されているものか、お伺いしてもよろしいでしょうか。
common-content-area-prependウィジェットエリアの設置方法は下記が参考になると思います。
IDは適当に決めていますが、定義時と呼び出し時で同じものを指定する必要があります。
add_action( 'lightning_mainSection_prepend', 'place_widget_areas' );上記については Lightning 7.0.0 / Lightning Pro 2.0.0 で新たに追加されたアクションフックを利用しています。
index.php や single.php などに<?php do_action( 'lightning_mainSection_prepend' ); ?>があるので確認してみてください。参考サイト:
2019年11月7日 8:20 PM #24554
DRILL LANCERモデレーターやってることは Lightning Pro の functions.php の 「WidgetArea initiate」 の部分に書かれていることを真似したり応用したりしているだけなので、好奇心や興味・関心がある場合は見てみると良いかもしれません。
2019年11月7日 8:30 PM #24556
DRILL LANCERモデレーターウィジェットの出し分けについては条件分岐タグとWidget Logicの組み合わせが個人的には最強だと思います。
2020年5月16日 4:37 PM #37819
avusblue参加者#返信に変更させて頂きます
2020年5月16日 5:00 PM #37821
avusblue参加者関連するトピックなので、こちらにて質問させて頂きます。
DRILL LANCERさんが
「投稿タイプごとということならまだまだ対応余地があります。」
と返答されているのですが、まさに、
「カスタム投稿タイプごとに、コンテンツエリア(下部)のウィジェットが作りたい」
と思っているのですが、
どのように記述すれば良いか教えて頂けませんでしょうか。よろしくお願いいたします。
Lightning Pro バージョン: 4.8.1
2020年5月16日 5:33 PM #37824
Vektor,Incキーマスターそれは「ウィジェット」でなければダメですか?
「ウィジェット」でなくても、CTAの固定ページとして作成して、 ExUnit > メイン設定 > CTA からその投稿タイプに表示するCTAを指定するという事で実現できませんか?
2020年5月16日 5:48 PM #37825
avusblue参加者Vektor,Inc様
上記の方法でやりたいことが実現できます。
上記方法にて、解決しました。ありがとうございました。
-
投稿者投稿
- このトピックに返信するにはログインが必要です。

