Woocommerceのショップページ(店舗トップ)に固定ページの内容を表示させたい

0
Who liked: No user
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #83565
    藤原
    参加者
    4

    【お使いの Snow Monkey のバージョン】15.1.1
    【お使いの Snow Monkey Blocks のバージョン】12.0.1
    【お使いの Snow Monkey Editor のバージョン】6.0.0
    【お使いのブラウザ】chorome
    【当該サイトのURL】

    ### 実現したいこと
    Woocommerceのトップページ(ショップページ)に固定ページの内容を表示させたい

    Woocommerceのトップページ(ショップページ)に固定ページの内容を表示させたい

     

    ### 発生している問題
    ショップページの設定で固定ページを選んでも

    カスタマイザの商品カタログで選択した情報しか表示されず困っています

     

    ### 試したこと

    ・『My Snow Monkey』を含め、Woocommerceに関係ないと思われるプラグインをすべて停止しても表示されない(Woocommerceのテンプレート変更もMy Snow Monkey内にて行っています)

    ・テーマを『Storefront』に変更したところ、希望の動作をすることを確認できた

     

    固定ページの内容を差し込んで表示させる、または『Snow Monkey Archive Content』で差し替えるといった方法で実現したいのですが、なにか必要な設定を見落としているのか、何らかの不具合なのかが判別できないため相談させていただきました。

    0
    Who liked: No user
    #83615
    GONSY
    参加者
    841

    藤原さん

    Woocommerceのトップページ(ショップページ)に固定ページの内容を表示させたい

    フックを使いますが、それほど難しくなくショップページのコンテンツを表示させることは可能です。

    確認したいのですが、ご提示いただいた画像を見ると・・・

    1. ヘッダー
    2. パンくず
    3. 1カラム(ショップページのコンテンツ)
    4. 2カラム(ショップページ+サイドバー)

    という構成に見えますが、お間違いないですか?
    下図のように、2カラムのショップページ側のメインコンテンツ上部に入れるのが妥当なような気もします。

    また、ショップページで商品数が多くなった場合、ページが送られますが、2ページ以降も表示するのがご希望ですか?
    そのあたりが確定していると、最適解に近づくのも早いと思います。
    ぜひ教えてください。

    1
    Who liked:
    #83632
    藤原
    参加者
    4

    GONSYさん、ご連絡ありがとうございます。

    『実現したいこと』の画像は参考として、「https://snow-monkey.2inc.org/shop/」を利用しています。
    誰もが閲覧できて、私の希望する箇所と同じ階層だったからです。

    実際に制作しているサイトでは
    ・ヘッダーレイアウト[2行]
    ・パンくず
    ・WooCommerce 商品一覧ページレイアウト[1カラム]

    となります。このサイトではサイドメニューは想定していません。

    > 2カラムのショップページ側のメインコンテンツ上部に入れるのが妥当
    > ページが送られますが、2ページ以降も
    はい。希望する位置はそこです。
    また2ページ以降ですが、今回希望の表示が実現できた際には、
    現在表示されている(青枠で示していただいたエリアの下部にある)
    『ショップページの表示』で指定されたものはCSSで非表示にする予定です。

    そのため『2ページ以降も表示するのがご希望ですか?』という質問には、
    「いいえ、現状では考慮しなくてもよいと考えています」という回答になります。

    フックを使う場合は、どのようになりますか?
    できればfunction.phpやmysnowmonkeyへ直接HTMLを記載せずに(メンテナンスが難しくなるため)実現したいと考えています。

    お手数をおかけしますが、よい方法があれば教えて頂けますでしょうか。

    0
    Who liked: No user
    #83634
    藤原
    参加者
    4

    snow_monkey_before_contents_inner を使うことで
    『https://snow-monkey.2inc.org/2020/04/28/inject-content-to-above-the-columns-that-has-sidebar/』のように

    if ( ! is_page('shop_top-page') ) {
    'pagename'       => 'shop-page_insert-page',

    という感じで実現できました。

    ただこの場合、動作自体は希望のものなのですが、
    ・固定ページ(shop_top-page)をショップページとして割り当てる
    ・別に差し込み用の固定ページ(shop-page_insert-page)を用意する
    ・snow_monkey_before_contents_innerに差し込み用ページを割り当てる
    となるため少しややこしくなります。

    もし固定ページ(shop_top-page)のコンテンツを表示させる方法をご存じの方、またはもっと良い方法がある場合にはご教示ください

    0
    Who liked: No user
    #83641
    GONSY
    参加者
    841

    ご回答ありがとうございます。

    実際に制作しているサイトでは
    ・ヘッダーレイアウト[2行]
    ・パンくず
    ・WooCommerce 商品一覧ページレイアウト[1カラム]

    1カラムだったんですね。良かったです(^^
    WooCommerceには、商品一覧の上に表示させるwoocommerce_before_shop_loopというフックがあるので、こちらのほうがベターな気がします。
    ショップページとして指定されている「商品一覧」の固定ページで編集した内容は、以下の記述をmy-snow-monkey.phpに追加することで表示できます。
    この方法ですと、「商品一覧」の固定ページを直接編集できるため、比較的わかりやすいと思います。

    add_action(	
    	'woocommerce_before_shop_loop',
    	function() {
    		?>
    		<div class="c-entry__body">
    			<div class="c-entry__content p-entry-content">
    				<?php echo apply_filters( 'the_content', get_post( 'ここにショップページのID' )->post_content ); ?>
    			</div>
    		</div>
    		<?php
    	}
    );

    また2ページ以降ですが、今回希望の表示が実現できた際には、
    現在表示されている(青枠で示していただいたエリアの下部にある)
    『ショップページの表示』で指定されたものはCSSで非表示にする予定です。

    ここがわからなかったのですが、商品一覧に掲載する商品が1ページで収まるということでしょうか?
    わたしの認識ですと、下図のように商品一覧ページの青枠は、2ページ目以降は不要(青い破線の部分は非表示にしたい)と思うので、上記で提示したコードに2ページ目から表示させない条件を追加するイメージでした。

    1
    Who liked:
    #83648
    藤原
    参加者
    4

    <訂正>
    if ( ! is_page('shop_top-page') ) {
    ではなく
    if ( ! is_shop() ) {
    のほうが良いのかもしれません。

     

    GONSYさんありがとうございます。
    woocommerce_before_shop_loopを使うほうがスマートですね。
    そちらで調整してみます。

    商品一覧ですが、ここは今回はカテゴリ一覧として使いたいため商品は表示させたくないのです。
    図で示していただいたケースはどうなるのか気になりますが、今回はこのトピックは一度閉じます。

    大変参考になりました。ありがとうございました。

    0
    Who liked: No user
    #83750
    アバター画像キタジマ タカシ
    参加者
    2421

    テーマを『Storefront』に変更したところ、希望の動作をすることを確認できた

    固定ページの内容を表示させるという考え自体が頭になかったのですが、Storefront が表示するようになっているのであれば表示したほうが良さそうですね。

    メインコンテンツ部分に入れるか、2カラム部分より上に入れるかは意見がわかれるところかと思いますが、他のページの仕組みにあわせてメインコンテンツ部分に入れるのが良いのかなと思いました。

    1
    Who liked:
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • トピック「Woocommerceのショップページ(店舗トップ)に固定ページの内容を表示させたい」には新しい返信をつけることはできません。

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。