フォーラムへの返信
-
投稿者投稿
-
Snow Monkey や Snow Monkey Blocks を純粋に利用する形では実現は難しいのかなと思います(念の為、他の方の意見を聞いてみることをお勧めします)。
もしかしたら、子ページを表示させるウィジェットなどにフックがあるかもしれませんが、仮に私自身がこの課題を解決するためにどうするかなぁと考えてみましたが、自分でコードを書いてショートコード化するのが手っ取り早いかなと感じました。
以下のような記事も(英語でごめんなさい)あったりするので、参考にしてみてください。もっと良い方法があったらごめんなさい。
実際に作られているサイトを見ているわけではないので確実なことは言えませんが、
>PCでの表示用のみ書いているので、必要であればメディアクエリなどで分岐してつかってください。
これを怠っているからでしょうか?初心者のため意味がわからず何もしていないのですが。。
Snow Monkey はモバイルファーストな形でCSSを書かれているので、メディアクエリを設定せずに記述すると、スマホ>タブレット>PCと全てのデバイスへ適応されます。ですので、スマホ表示だけに適応したい、PC幅表示時だけ適応したい、などという場合には、メディアクエリを記述する必要が出てきます。
その辺りはぜひご自身で調べて試してみてください。
スマートフォンでの表示の際には、ヘッダーを左表示するのではなく、上下ノーマルな形にしたいと考えております。
ヘッダーを「左」にしたとしても、モバイル表示時には左に表示されることなくナビバーなどで表示されると思いますが、いかがでしょうか?
♥ 0いいねをした人: 居ませんCSSで対応できると思いますが、すでにお試しでしょうか?以下のようにやればできるかと思います。PCでの表示用のみ書いているので、必要であればメディアクエリなどで分岐してつかってください。
①左表示にした状態での横幅の変更
最初に左サイドバーの幅を上書きします。その後に、コンテンツエリアについている左マージン(=左サイドバーの幅分)も設定し直します。
.l-header--left { width: 150px; } [data-header-layout=left] { margin-left: 150px; }
②各メニュー項目のセンタリング
.l-header--left .p-global-nav .c-navbar__item>a { align-items: center; }
③ロゴの左寄せ
ロゴ画像は全幅で表示されていると思うので、左サイドバーのコンテンツエリア幅よりも小さくなるように画像サイズを指定してあげてください。必要であれば以下のように
!important
をつけてあげてください。.c-site-branding__title { text-align: left; } .c-site-branding__title > a > img { width: 100px !important; }
「任意のタクソノミーの投稿」ブロックを使うと、必ずカテゴリーかタグを選択しないといけないはずなのでお聞きしました。
ですので以下の2つのパターンでお伝えしますね。
## 任意のタクソノミーの投稿ブロックでカテゴリーを何かしら設定した場合
まず、配置した「任意のタクソノミーの投稿」ブロックに一意のHTMLアンカーを設定します。ここでは
2-taxonomy-show-test
とします。設置した際にカテゴリーは指定しておいてください。
そして、My Snow Monkey など PHP 側から以下のようにコードを書きます。
add_filter( 'snow_monkey_taxonomy_posts_widget_args_2-taxonomy-show-test', function ( $args ) { $args['tax_query'] = array_merge( $args['tax_query'], [ [ 'taxonomy' => 'post_tag', 'terms' => [ 'sample-1', 'sample-2' ], 'field' => 'slug', ], ] ); return $args; } );
snow_monkey_taxonomy_posts_widget_args_[slug]
というフックがあるのでそれを使っています。トピに書かれていた参照記事と一緒ですね。タグは
sample-1
とsample-2
としています。## 「最近の投稿」ブロックを利用する場合
HTMLアンカーもタグも同じです。フックは変わります。snow_monkey_recent_posts_widget_args_[slug]
ですね。以下のようなコードになります。add_filter( 'snow_monkey_recent_posts_widget_args_2-taxonomy-show-test', function ( $args ) { $args['tag'] = 'sample-1+sample-2'; return $args; } );
一度試してみてください。
以前、依頼を受けてこちらのページで紹介しているような方法で実現したことがあります。
よかったら参考にしてみて下さい。
①タイトルのみは左寄せになってしまう。
任意のクラス名
panel-title-center
というようなクラス名を各パネルに設定する方法で紹介します。そのクラスに対して、以下のようなCSSを設定します。
.panel-title-center .smb-panels__item__title { text-align: center; }
これで実現できるかと思います。詳細度の問題があれば少し手入れしてみてください。
この方法と同じように、
②4つのパネル全ての背景を一気に変更はできたが、それぞれで色を変えることはできなかった。
も解決することができるかと思います。
例えば、背景色を赤にしたい場合、
panel-bg-red
というようなクラス名を付与します。そして、.panel-bg-red .smb-panels__item { background: red; }
というクラスを用意しておけば、付与したパネル背景色のみ変更することができるので、色の数だけクラス名を用意して付与すれば実現できるかと思います。
お試しください。
-
投稿者投稿