フォーラムへの返信
-
投稿者投稿
-
どうも参照先が
http〜のような URL 形式の場合はadd_editor_style()ではうまくいかない場合があるようです。僕のローカル環境で試したからかもしれませんが…。ひとまず、無理やりパスで参照すれば適用されました。function my_editor_style_setup() { add_theme_support( 'editor-styles' ); add_editor_style( '/../../plugins/my-snow-monkey2/css/my_custom_editor_style.css' ); // テーマからの相対パスで指定 } add_action( 'after_setup_theme', 'my_editor_style_setup' );もしくは、次のコードでもスタイルを反映できました。
function my_editor_style_setup() { wp_enqueue_style( 'wp-oembed-blog-card', plugin_dir_url( __FILE__ ) . '/css/my_custom_editor_style.css', [], filemtime( plugin_dir_path( __FILE__ ) . '/css/my_custom_editor_style.css' ) ); } add_action( 'enqueue_block_editor_assets', 'my_editor_style_setup' );add_editor_style()の場合と違って自動的に.editor-styles-wrapperが補完されたりはしないので、必要に応じて調整が必要かもしれません。例えばこんな感じ。/* css/my_custom_editor_style.css */ .editor-styles-wrapper h2 { font-size: 10rem; }また、こちらの場合は
add_editor_style()で読み込まれる CSS よりも先に読み込まれるので、優先順の関係で強めにスタイルを当てたりしないといけなさそうなのがちょっとめんどくさそうでした。♥ 0Who liked: No user下記の CSS でどうでしょうか? 追加 CSS か、子テーマの CSS ファイルに貼りつけてみてください。
#drawer-nav .c-drawer__submenu { height: auto; overflow: visible; } #drawer-nav .c-drawer__toggle { display: none; }♥ 0Who liked: No user下記でどうでしょうか?
.p-footer-sticky-nav[data-clickable="false"] .c-navbar { opacity: 1; }♥ 0Who liked: No user良かったです!閉じます。
♥ 0Who liked: No userできればbbpress作成ページ上にも表示したかったんですが…諦めますm(_ _)m
bbPress の条件分岐タグの一覧がありました。
if ( ! is_page() ) {のところにif ( ! is_page() && ! bbp_is_single_view() ) {のように条件を足せばいけるかもです。♥ 0Who liked: No userv8.0.5 で対応させてみました。確認してみてください!
♥ 0Who liked: No userあーそうでした、お知らせが漏れていました、すみません。
v8 から、
.alignright、.alignleftは最大幅が適用されるようになりました。これまではそのような指定はしていなかったのですが、TwentyNineteen に最大幅の指定があるのを発見して、それがスタンダードなのかな?と思いまして、同じ CSS を適用することにしました。どのような指定がベストなのか僕も迷ってはいるのですが、なるべくスタンダードに沿いたいと思っているので、とりあえずは現状の指定にしておこうと考えています。
♥ 0Who liked: No user良かったです!閉じます!
♥ 0Who liked: No useradd_filter( 'snow_monkey_get_template_part_args', function( $args ) { // 任意のタクソノミーの投稿ブロックの場合 if ( 'template-parts/widget/snow-monkey-posts' === $args['slug'] && 'taxonomy' === $args['name'] ) { // タクソノミー hoge の場合 $query = $args['vars']['_posts_query']; if ( isset( $query->tax_query->queries[0]['taxonomy'] ) && 'hoge' === $query->tax_query->queries[0]['taxonomy'] ) { // name を example に差し替え $args['name'] = 'example'; } } return $args; } );とすることで、タクソノミーが hoge の「任意のタクソノミーの投稿」ブロックを読み込む場合に
snow-monkey-posts-exampleはtemplate-parts/widget/snow-monkey-posts-example.phpがあればそれを、なければsnow-monkey-posts-exampleはtemplate-parts/widget/snow-monkey-posts.phpを読み込むようになります。試してみてください!(ならなかったら再度見直します…!♥ 0Who liked: No userわー!すみません、
var_dump( $query_args );
を消してください!
♥ 0Who liked: No userありがとうございます。流用するのは難しそうな気がするので、フック内に HTML を直接書いちゃうのが良いかなと思いました。カスタマイズの内容が大きいのでちょっとフォーラムでちょろっとやるのは難しいかなと思うのですが、多分やり方的には下記のような感じになるのかなと。
// 任意のタクソノミーウィジェットを独自の HTML で出力 add_filter( 'snow_monkey_template_part_render', function( $html, $slug, $name, $vars ) { // 任意のタクソノミーの投稿ブロックの場合 if ( 'template-parts/widget/snow-monkey-posts' === $slug && 'taxonomy' === $name ) { // タクソノミー hoge の場合 $query = $vars['_posts_query']; if ( isset( $query->tax_query->queries[0]['taxonomy'] ) && 'hoge' === $query->tax_query->queries[0]['taxonomy'] ) { ob_start(); ?> ここに template-parts/widget/snow-monkey-posts を好きな形にカスタマイズした内容を記述 <?php return ob_get_clean(); } } return $html; }, 10, 4 );♥ 0Who liked: No userフォーラムページは先程のウィジェットが挿入できないようですが、こちらはタイトル非表示ができないのと同じく、bbpressのプラグインの使用上の問題ですかね…?
bbPress が生成するページは固定ページ扱いじゃないのだと思います。bbPress が生成するページ全部で非表示にするならこんな感じですかね。
.bbpress .c-entry__header { display: none; }ページ種別的に細かく指定したい場合(トピック一覧だけとか)は
bodyに付与されるクラスを確認して調整してみてください。先程の固定ページ上ウィジェットのカスタマイズですが、全幅表示にならないのはcssでのカスタマイズが必要になりますか?
これでどうでしょうか。
.my-page-top-widget-area { margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }♥ 0Who liked: No user「Custom Post Type Permalinks」もしくは「Custom Post Type Widgets」がカスタム投稿タイプの日付アーカイブ(としてのクエリ)を有効にしているのかもしれませんね。クエリ自体が WordPress の標準に沿ったものであれば Snow Monkey 側で調整できると思うので、確認してみますね!
♥ 0Who liked: No user「最近の投稿」ブロックとコードの組み合わせで実現できます。
まず、一覧を表示したい場所に、Snow Monkey Blocks の「最近の投稿」ブロックを挿入してください。そして、そのブロックの高度な設定 > HTML アンカーに「search」と入力して保存してください。
次に、My Snow Monkey プラグイン、もしくは子テーマの
functions.phpに下記のコードを追加してください。これで、高度な設定 > HTML アンカーに「search」と入力したブロックは、「村上宥快」の検索結果を表示するようになります(全件表示ではない点ご注意ください)。add_filter( 'snow_monkey_recent_posts_widget_args_search', function( $query_args ) { $query_args['post_type'] = [ 'post', 'page' ]; $query_args['s'] = '村上宥快'; var_dump( $query_args ); return $query_args; } );♥ 0Who liked: No userPC表示時に、各固定ページの本文とサイドバーの上の位置(アイキャッチでいうと、ページヘッダーの位置)に全幅表示したいんですが、上記カスタマイズにプラスで何が必要になりますか?
あー勝手にワンカラムだと思っていました。サイドバーありだと普通にエディターだけでは無理ですね…。ウィジェットでやりたいのであれば、独自にウィジェットエリアを追加する必要があるかと思います。
CSS で調整が必要かと思いますが、とりあえずこんな感じでどうでしょうか?
/** * my-page-top-widget-area という名前でウィジェットエリアを定義 */ add_action( 'widgets_init', function() { register_sidebar( [ 'name' => '固定ページ上部ウィジェットエリア', 'id' => 'my-page-top-widget-area', 'description' => '固定ページの上部に表示されるウィジェットエリアです。', 'before_widget' => '<div class="my-page-top-widget-area__item"><div id="%1$s" class="c-section %2$s">', 'after_widget' => '</div></div>', 'before_title' => '<h2 class="c-section__title">', 'after_title' => '</h2>', ] ); } ); /** * 固定ページの上部に my-page-top-widget-area ウィジェットエリアを表示 */ add_action( 'snow_monkey_before_contents_inner', function() { if ( ! is_page() ) { return; } if ( ! \Framework\Helper::is_active_sidebar( 'my-page-top-widget-area' ) ) { return; } ?> <div class="my-page-top-widget-area" data-is-slim-widget-area="false" data-is-content-widget-area="true" > <?php dynamic_sidebar( 'my-page-top-widget-area' ); ?> </div> <?php } );♥ 0Who liked: No user -
投稿者投稿
