フォーラムへの返信
-
投稿者投稿
-
うーん、特に固定しているわけではないので差し替えられるはず…なのですがなんでしょうね。確認してからまた書き込みます!
♥ 0いいねをした人: 居ません子テーマの準備
Snow Monkey 自体のコードを変更してしまうとアップデート時に変更がリセットされてしまう(最新の Snow Monkey で上書きされてしまう)ため、Snow Monkey の子テーマを用意し、その子テーマの functions.php で jQuery プラグインを追加することになります。
子テーマの準備については、下記のページをご参照ください。
子テーマはいくつかの作り方がありますが、上記記事内で紹介しているオレインさんが作られた子テーマの雛形を使用するのが簡単かと思います。
jQuery プラグインの読み込み
子テーマの functions.php に次のようなコードを追加してみてください。
add_action( 'wp_enqueue_scripts', function() { // 使用する jQuery プラグインを読み込み wp_enqueue_script( // 半角英数字で任意の名前を設定 'jquery.smoothscroll', // 使用する jQuery プラグインの URL(ローカルでも CDN でも Ok) 'https://cdn.jsdelivr.net/npm/jquery.smoothscroll@1.0.2/src/jquery.smoothscroll.min.js', [ 'jquery' ], false, true ); // jQuery プラグインを実行させるコードを記述するための js ファイル wp_enqueue_script( get_stylesheet(), get_theme_file_uri( '/app.js' ), [ get_template() ], false, true ); } );
で、子テーマの直下に app.js というファイルを作成して、jQuery プラグインを実行するコードを追加してください。
wp-content/themes/snow-monkey-child/app.js
※どういうコードを書くかは使用する jQuery プラグインによって異なりますのでここでは省略します。これで動作すると思いますが、もし動かなかったらブラウザにでている JS のエラーを書き込みください!
♥ 0いいねをした人: 居ませんあ、確かにそうですね!すっかり忘れていました。
互換性の問題などもあると思いますので、ちょっと調べてから取り入れたいと思います!♥ 0いいねをした人: 居ません01. オリジナルコンポーネントの追加機能
HTML コンポーネント挿入機能にはフィルターフックが用意してあります。
例えば、子テーマの functions.php に次のようなコードを追加することで、オリジナルのコンポーネントを追加できます。add_filter( 'inc2734_wp_awesome_components_register_components', function( $components ) { return array_merge( $components, [ 'columns-1-2-2' => [ 'label' => 'カラム (1/2/2)', 'html' => sprintf( '<div class="wpac-columns mceNonEditable"> <div class="wpac-columns__row"> <div class="wpac-columns__col wpac-columns__col--1-1 wpac-columns__col--md-1-2"> <div class="wpac-columns__col-inner mceEditable"> %1$s </div> </div> <div class="wpac-columns__col wpac-columns__col--1-1 wpac-columns__col--md-1-2"> <div class="wpac-columns__col-inner mceEditable"> %1$s </div> </div> </div> </div>', esc_html__( 'Columns', 'inc2734-wp-awesome-components' ) ), ] ] ); } );
02. カラムコンポーネントの数値指定
そうなんです!でもこれ実装が超難しそうで、実現に至っていません…。まだ Gutenberg 対応は全くしていませんが、Gutenberg には挿入時にそのようなオプション指定ができる仕組みがあるっぽいので、Gutenberg に置き換えるときにそのような機能も追加できれば、と考えています。
03. 使わないコンポーネントを一覧で表示させない設定
こちらも、フィルターフックを使うことで消せると思います。
add_filter( 'inc2734_wp_awesome_components_register_components', function( $components ) { unset( $components['alert'] ); unset( $components['alert--warning'] ); return $components; }, 11 );
alert、alert–warning などのキーについては、
内のファイルを見てもらうとわかるかと思います!
♥ 0いいねをした人: 居ませんうーん、これ実は以外に難しいかも…
a { color: #00f; }
とりあえず、こんな単純なスタイルを足してみるとどうでしょうか?
♥ 0いいねをした人: 居ませんわ、そうなんですね、普通に WordPress 詳しいのかと思っていました! そういうことなら子テーマで、とかはちょっと面倒かもですね。僕も面倒なので、同じように CSS で消すと思います。
将来的には Snow Monkey のアドオンをつくって、投稿タイプ毎にできるようにするとか、ちょっと検討中です。一旦クローズにしますね。♥ 0いいねをした人: 居ませんウィジェットエリアは、もともと投稿タイプ別にしていたけど管理が煩雑になってきたので統合した経緯があります…。一応、フックがあって、子テーマでフックすれば投稿タイプ別にウィジェットエリアが使えるようになります。
参考: https://github.com/inc2734/snow-monkey/blob/master/resources/app/setup/widget-area.php#L142
ただ、このフックも将来的には廃止しようと考えています。なので、子テーマなどで独自にウィジェットエリアを追加していただくのがお勧めではあります。(Custom Sidebars というウィジェットエリアをプラグインで追加して条件に応じて切り替えることができるプラグインもあり、これも使い方を案内しようとずっと思っているのですがなかなかできておらずすみません…TT)
♥ 0いいねをした人: 居ません「要望」に書かれているので Snow Monkey のデフォルトをそのようにしてはどうかというご提案かと思いますが、ドロワーメニューにおいてホバーでメニューが展開するという動作が僕はしっくりこないというのと、作ることはできても使い勝手を良くするにはかなり大変になりそうなので、デフォルトの動作はクリックで開くという現在の仕様から変更することは考えていません。
簡単なサンプルではありますが、下記の js を追加して頂ければ、とりあえずホバーで開いて離れたら閉じる、という動作は実現できました。
jQuery(function($) { var drawer = $('#drawer-nav'); var submenus = drawer.find('.c-drawer__submenu'); submenus.each(function(i, e) { var parentItem = $(e).parent(); parentItem.hover(function() { var toggle = $(this).children('.c-drawer__toggle'); var submenu = $('#' + toggle.attr('aria-controls')); toggle.attr('aria-expanded', 'true'); submenu.attr('aria-hidden', 'false'); }, function() { var toggle = $(this).children('.c-drawer__toggle'); var submenu = $('#' + toggle.attr('aria-controls')); toggle.attr('aria-expanded', 'false'); submenu.attr('aria-hidden', 'true'); }); }); });
♥ 0いいねをした人: 居ません詳しくありがとうございます。うーん、そうなのですね。。ちょっと Messenger にメッセージお送りさせていただきましたので、ご確認お願いします!
♥ 0いいねをした人: 居ません良かったです! 実は「PRボックス」という名前、この ExUnit のを拝借したんです^^;
解決とのことで、クローズしますね。♥ 0いいねをした人: 居ません今サイトを拝見したのですが、投稿ページでは3つ入っていて、トップページと固定ページでは2つウィジェットを入れられてますよね。これは、Widget Logic のようなプラグインで実現されているのでしょうか?もしそういった類のプラグインを使用されているのであれば、その影響があるのかなと思いました。
普通に全てのページのフッターで同じウィジェットを表示するようにしても落ちますかね?
♥ 0いいねをした人: 居ませんPRボックスウィジェットの各項目の「概要」は HTML を入力することができます。
<a class="c-btn" href="#">ボタン</a>
のようにするとボタンが表示されますので、まずこの方法で対応されてみてください!
(項目を一度追加すると消すときが大変で、足さないとどうしても実現できないこと以外は、なるべく足すことに慎重になりたいと考えています)♥ 0いいねをした人: 居ませんあー!関連コンテンツ、もしかしたら、アドセンスのタグが
<ul class="c-entries c-entries--rich-media"></ul>
の中に入るようになっていたかもです…。ul の中だと入れ子がおかしいので、ちゃんと外に挿入されるようにすればちゃんと表示されるのかもしれません。修正してみます。タグの表示については、ちょっとはっきりわからないですね…。気になるので、Messanger 等で子テーマお送り頂ければ、こちらでも検証してみます。ご検討ください!
♥ 0いいねをした人: 居ません消すとエラーが出なくなりました。「?>」つけてはだめなんですね。知りませんでした。お恥ずかしい。
書くこと自体は大丈夫なのかもですが、その直後の空白文字とか改行に気をつけないとダメみたいなので、消しておくほうがベターのようです。
参考:https://thesaibase.com/php/end-tagfunctions.pspを元に戻す際にタグをタイトル横に追加するスクリプト(ユーザ用コンテンツで投稿されていたものです)をどう挿入してもエラー吐いてしまう
古い記事なので、現在のバージョンでは動かないということがあるのかもしれません。ちなみにどういうエラーだったか共有いただけるとうれしいです!
相変わらずアドセンスの関連コンテンツユニットが表示されませんが、別事象のようなのでこちらについては確認した上で改善できないようであれば、別途ご相談します。
これ、つくりはしたものの、実は僕のサイトでは PV が足りなくてテストできないんです…。もし解決策を見つけられたら、情報共有頂けるとすごく助かります。
♥ 0いいねをした人: 居ません試して駄目だったはずなのですが、今試すと子テーマを使わなければ保存エラーになりません。
では、と最低限の記述だけ書いたstyle.cssとfunctions.phpを置いた子テーマを作ってそちらで試してみると、エラーになります。。functions.php
を空にしても NG だったと書かれていましたが、functions.php
があやしいですかね…。子テーマのfunctions.php
を消して、必須ファイルであるstyle.css
とindex.php
だけの子テーマをつくって有効化し、カスタマイザーを操作してみるとどうでしょうか。広告の設定などのカスタマイズ結果が入れたばかりの子テーマでも設定済み(親テーマから引き継がれている?)のは問題ないんでしょうか。
もし Snow Monkey 以外にもモンキーレンチで有料テーマをつくったときに、Snow Monkey からそのテーマに切り替えても、この設定は引き継いだほうが良いだろうな、というものは引き継ぐようにしています。子テーマもその影響で、いくつかの項目は引き継ぐようになっています。
♥ 0いいねをした人: 居ません -
投稿者投稿