[ 解決済 ] カスタム投稿タイプ「例:顧客情報」で、コンテンツエリア用のウィジェットが作りたい

VWSとは フォーラム Lightning [ 解決済 ] カスタム投稿タイプ「例:顧客情報」で、コンテンツエリア用のウィジェットが作りたい

[ 解決済 ] カスタム投稿タイプ「例:顧客情報」で、コンテンツエリア用のウィジェットが作りたい

  • このトピックには9件の返信、2人の参加者があり、最後にavusblueにより4年、 6ヶ月前に更新されました。
10件の投稿を表示中 - 1 - 10件目 (全10件中)
  • 投稿者
    投稿
  • #24528

    max-stone
    参加者

    こちらの記事ではトップページのコンテンツエリア右と左のウィジェット生成コードが記載されております。

    トップページのコンテンツエリア

    今回はカスタム投稿タイプで生成した固定ページ、投稿ページ、カテゴリーページのいずれでも編集ができる

    「カスタム投稿タイプページエリア上部」のような機能をみたすウィジェットエリアの作り方を教えていただけませんでしょうか。

    なにぶん、仕事で困っております。回答の方頂けると非常に助かります。宜しくお願い致します。

    #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' );
    #24547

    max-stone
    参加者

    RICKさん いつも回答ありがとうございます。

    それがですね、、共通ではなく、特定の記事にしか出力させたくないんですね。
    その方法はありますでしょうか。。

    また、このようなIDはマニュアルなどに記載されているものか、お伺いしてもよろしいでしょうか。
    common-content-area-prepend

    後少しお付き合いいただけますでしょうか。

    #24553

    DRILL LANCER
    モデレーター

    それがですね、共通ではなく、特定の記事にしか出力させたくないんですね。
    その方法はありますでしょうか。

    特定の記事のみというのはどういうことでしょうか?
    LPみたいに記事ごとに必要ということなのでしょうか?

    ランディングページ用固定ページテンプレート


    それだと 外観 > ウィジェット の右半分がかなりカオスになりそうな気がします。

    下記にあるようにプラグインで条件指定して出し分けをするという手法ではだめですか?

    Lightning のサイドバーの設定について

    投稿タイプごとということならまだまだ対応余地があります。

    また、このような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' ); ?>があるので確認してみてください。

    参考サイト:

    #24554

    DRILL LANCER
    モデレーター

    やってることは Lightning Pro の functions.php の 「WidgetArea initiate」 の部分に書かれていることを真似したり応用したりしているだけなので、好奇心や興味・関心がある場合は見てみると良いかもしれません。

    #24556

    DRILL LANCER
    モデレーター

    ウィジェットの出し分けについては条件分岐タグWidget Logicの組み合わせが個人的には最強だと思います。

    #37819

    avusblue
    参加者

    #返信に変更させて頂きます

    #37821

    avusblue
    参加者

    関連するトピックなので、こちらにて質問させて頂きます。

    DRILL LANCERさんが
    「投稿タイプごとということならまだまだ対応余地があります。」
    と返答されているのですが、

    まさに、
    「カスタム投稿タイプごとに、コンテンツエリア(下部)のウィジェットが作りたい」
    と思っているのですが、
    どのように記述すれば良いか教えて頂けませんでしょうか。

    よろしくお願いいたします。

    Lightning Pro バージョン: 4.8.1

    #37824

    Vektor,Inc
    キーマスター

    それは「ウィジェット」でなければダメですか?

    「ウィジェット」でなくても、CTAの固定ページとして作成して、 ExUnit > メイン設定 > CTA からその投稿タイプに表示するCTAを指定するという事で実現できませんか?

    #37825

    avusblue
    参加者

    Vektor,Inc様

    上記の方法でやりたいことが実現できます。
    上記方法にて、解決しました。

    ありがとうございました。

10件の投稿を表示中 - 1 - 10件目 (全10件中)
  • このトピックに返信するにはログインが必要です。