フォーラムへの返信
-
投稿者投稿
-
2022年3月1日 12:13 PM 返信先: Snow Monkey Editor コントロールを使っての文字の装飾(バッジや蛍光ペン)の際にカラーコードを任意のものに入力できない。 #100073
キタジマ様
お忙しいと思いますが、よろしくお願いします。
♥ 0いいねをした人: 居ませんOlein_jp様
ご丁寧な解説ありがとうどざいます。非常に分かりやすく勉強になりました。
・変更したい場所を定義ているファイル、コードを探す
・それを変更できるフックを知る
これができる様にWordPressやsnow moneky をもっと触っていこうと思います。
下記のOlein_jp様のサイトや公式のhooks一覧には載っていない、フックも存在するのですね。理解できる様に励みます。
Olein様、キタジマ様
キタジマ様のコードを元に以下で特定のカテゴリーと全てのタグで理想の表示をさせることができました。ありがとうございます。
// 特定のアーカイブページのみアイキャッチ画像を「なし」にする
add_filter(
‘theme_mod_archive-eyecatch’, // カスタマイザーの設定値「archive-eyecatch」をフィルターする
function( $eyecatch ) {
if ( is_category( ‘blog’ ) ) { // カテゴリーアーカイブ「uncategorized」のとき
return ‘none’; // 設定値「none」を返す
}elseif (is_category(‘news’)) {
return ‘none’;
}
elseif (is_tag()) {
return ‘none’;
}
return $eyecatch; // それ以外は何もせずに返す
}
);PHPは基礎を学び終えたところで、現在WordPressの学習をしている最中の身です。
こちらを頼らずに実装できる様になりたいと思っているのですが、
‘theme_mod_archive-eyecatch’やこれが、snow-monkey/templates/view/content.php というファイルにあるというのはどの様にすればわかるのでしょうか?
質問場所が間違えているかもしれませんが、教えていただけると幸いです。
♥ 0いいねをした人: 居ませんすみません。
【お使いの Snow Monkey のバージョン】16.1.1
でした。
♥ 0いいねをした人: 居ませんOlein様
フロントとエディター向けにそれぞれCSSファイルを用意するというスタイルで実装している点、参考になります。理由も大変分かりやすく納得しました。以後この様にファイル構成を変更してみます。キタジマ様
まさにそれでした。
add_action( 'enqueue_block_editor_assets', function() { // エディターのメイン CSS の装飾用 CSS を取り外す wp_deregister_style( \Framework\Helper::get_main_style_handle() . '-theme' ); wp_register_style( \Framework\Helper::get_main_style_handle() . '-theme', null, [] ); }, 10000 );
を入れたところ、CSSで打ち消すcodeを追加しなくてもエディターと実画面で表示を同じものにする事ができました。
今回は記載しておりませんでしたが、
after
を使った追加のスタイルはエディターのみposition
がついてしまっている為、表示がずれてしまいました。
Olein様の方法でposition:static;
を追加する事で打ち消す事ができました。お二人方、ご回答ありがとうございました。今回の件、無事解決できました。
Olein様
register_block_style( 'core/heading', array( 'name' => 'side-line', 'label' => '横線', 'inline_style' => '.is-root-container .is-style-side-line,.is-style-side-line{ border-left: solid 10px red; padding-left: 15px; background-color:transparent; }', ) );
これでエディターも変更できました。
記述を忘れていたのですが、実は詳細度についても検討していました。申し訳ございません。
この方法ですとスタイルを複数追加するとき、
background-color
とborder-left
を毎回上書きしなければいけないことになります。実際のサイトと同じ様に、エディターのデフォルトCSSを消す事が出来たらベストだと考えているのですが、現状不可能なのでしょうか?♥ 0いいねをした人: 居ませんGONSY様
迅速な対応ありがとうございます。
ご紹介の記事である
にあった
add_filter( 'snow_monkey_get_template_part_args_template-parts/content/prev-next-nav', function( $args ) { // ここで $html を str_replace() や preg_replace() して書き換える $args['vars']['_in_same_term'] = true; return $args; } );
を使うことで解決しました。
的確なアドバイスありがとうございました。
♥ 0いいねをした人: 居ません -
投稿者投稿