同意モードについては下記のドキュメントを参照いただけると良いかと思います。
同意設定を管理する(ウェブ) | Security and Privacy hub | Google for Developers
https://developers.google.com/tag-platform/security/guides/consent?hl=ja
Cookie 同意バナーを利用している場合、同意の状況に応じて Google タグマネージャーがタグをコントロールしてくれるのがこの同意モードなのですが、当方が利用している Cookie 同意バナーの場合、これを利用するにあたっては Google タグマネージャーのスクリプトよりも前に下記のスクリプトを実装する必要があるようです。
EU の法律(GDPR)的には、EU 圏内からのアクセスに対しては Cookie の利用に際して同意を得ないとならないので Cookie 同意バナーを導入しているのですが、同意バナーの利用&同意モードの実装はまだレアケースだと思うので、短期的には機能として提供いただくほどのものではなさそうですが、長期的に見ると日本を含めて法律がどうなるかによっては需要があるのかな・・・ぐらいの感覚です。
どうぞよろしくお願いいたします。
<!-- STRIGHT ONE Google Consent Mode Tag Start -->
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {dataLayer.push(arguments);}
gtag('consent', 'default', {
'ad_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'analytics_storage': 'denied',
'functionality_storage': 'denied',
'personalization_storage': 'denied',
' security_storage': 'denied'
});
const cmd = "yuwai-inc.jp";
const matches = document.cookie.match(new RegExp(
"(?:^|; )" + "cookie_consent_gcm_data".replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
let val = null;
if (matches) {
cData = JSON.parse(decodeURIComponent(matches[1]));
if (cmd === cData.cmd) {
val = cData.gGcType;
}
}
if (!val) {
const lData = localStorage.getItem('cookie_consent_gcm_data');
if (lData) {
const lCmdData = JSON.parse(decodeURIComponent(lData))[cmd];
if (lCmdData) {
val = lCmdData.gGcType;
}
}
}
if (val) {
let updateVal = {};
for (let i = 0; i < val.length; i++) {
updateVal[val[i]] = 'granted';
}
if (Object.keys(updateVal).length !== 0) {
gtag('consent', 'update', updateVal);
}
}
</script>
<!-- STRIGHT ONE Google Consent Mode Tag End -->
・Safariのファーストビューのメインコピーが表示されないです
Snow Monkey Editor のアニメーション機能を使用されていると思うのですが、スクロールと要素の位置でアニメーションが発火(フェードインの実行)する仕組みになっているので、一番最初の要素だとそれがうまく動かないみたいです。後で修正できるか調査してみようと思いますが、とりあえずその部分についてはアニメーションを外すのが良いかなと思います。
・Chromeのインライン画像の位置がおかしくなり、行がずれて表示されていたり、離れすぎて表示されています。アイコンリストも左に寄りすぎています。
Safari と Chrome で確認してみたのですが、どちらもスクショいただいたような表示は確認できませんでした。シークレットブラウザで見てもスクショのような崩れが発生しますか?
【お使いの Snow Monkey のバージョン】28.0.4
【お使いの Snow Monkey Blocks のバージョン】23.0.2
【お使いの Snow Monkey Editor のバージョン】10.1.2
【お使いのブラウザ】Chrome,Safari,Firefox
【当該サイトのURL】https://bestwishes.website/
### 実現したいこと
すべてのブラウザで多少の誤差は仕様がないものの、ほぼ同じに見えるようにしたい(特に大きなレイアウト崩れや表示の違いは避けたい)
### 発生している問題
Chromeのインライン画像や、ボックスの中のアイコンリストに位置、Safariのファーストビューの表示が崩れてしまいます。
具体的には、
・Chromeのインライン画像の位置がおかしくなり、行がずれて表示されていたり、離れすぎて表示されています。アイコンリストも左に寄りすぎています。
・Safariのファーストビューのメインコピーが表示されないです。
制作中はすべてのブラウザで正しく表示されていました。
制作完了して、数日経ってレスポンシブ対応しようとしたところ、現状Firefoxだけ正しい表示になり、ChromeとSafariが崩れて
### 試したこと
検証ツールで該当の要素のコードを確認しました。
Snowmonkeyの各バージョンの確認などを行いました。
よろしくお願いいたします。






【お使いの Snow Monkey のバージョン】 28.0.4
【お使いの Snow Monkey Blocks のバージョン】 23.0.2
【お使いの Snow Monkey Editor のバージョン】 10.1.2
【お使いのブラウザ】 Google Chrome (バージョン: 133.0.6943.127(Official Build) (64 ビット) )
【当該サイトのURL】 https://yuwai-inc.jp/
### 実現したいこと
Cookieバナーを表示させるサービスを導入しているのですが、Google 同意モード v2 に対応するため、テーマ側で設定することで利用している Google タグマネージャータグよりも上位の場所に計測タグを実装(Google タグマネージャータグよりも先に実行させたい)する必要が出てきました。
恐らくテーマのカスタマイズか、フックを追加という形になると思うのですが、このようなカスタマイズが可能かどうかをご教示いただきたいです。
どうぞよろしくお願いいたします。
### 発生している問題
### 試したこと
ヘッダーコンテンツはヘッダーに内包されるので、スクロール時にヘッダーコンテンツが消えるというよりはヘッダーがスクロールとともに隠れるということかな?と思ったのですが認識はあっていますか?
もしあっているのであれば、ヘッダーがスクロールで隠れないようにするしかないと思うので、ヘッダー位置の固定表示を試してみると良いかもしれません。
あるいは、ドロップナビゲーション(スクロールすると上からにゅっとでてくるナビゲーション)にも Facebook アイコンを表示したいということであれば、ヘッダーコンテンツを使わずに、メニューに Facebook アイコンを追加するのが簡単だと思います。メニューでカスタムリンクを追加するときに「リンク文字列」に FontAwesome が使用できます。
ご回答ありがとうございます。
確認したところ「Advanced Custom Fields」プラグインで「カスタムCSS」というフィールドを作成しているようでしたが、このフィールドの更新がなぜか反映されないようになっていました。(フィールドの新規作成は可能でした)
原因はAdvanced Custom Fields側にあるようなので、引き続き調査してみます。
お手数をおかけしました・・・
【お使いの Snow Monkey のバージョン】25.4.7
【お使いの Snow Monkey Blocks のバージョン】23.0.2
【お使いの Snow Monkey Editor のバージョン】10.1.2
【お使いのブラウザ】Chrome他
【当該サイトのURL】
### 発生している問題
固定ページのカスタムCSSが反映されない
固定ページの編集画面にあるカスタムCSS欄に記述したスタイルが反映されない
(外観 > カスタマイズ > 追加CSSに記述したスタイルは反映される)

お世話になります。現在リニューアルを担当しているサイトで、上記のような事象が発生しています。
固定ページ毎にテーマのCSSを若干調整したい場合、固定ページの編集画面にあるカスタムCSS欄に
CSSを記述してみたのですが、ここに書いたデザインが反映されないようです。
レンダリング後のコードにも、こちらに書いたCSSは出力されていませんでした。
現在は固定ページにHTMLコードを直接埋め込み、<style>タグ内に固定ページ毎に適用したいCSSを書くことで無理やり対応しているのですが、あまりスマートな方法とは思えず・・・
なぜカスタムCSS欄に記述した内容が反映されないのでしょうか?
(他所の制作会社から引き継いだ案件なので不慣れですみません。)
はっきりした原因はまだわからないのですが、下記の変更でエラーはなくなりそうです。一度試してみてください!
snow-monkey-forms/App/Controller/Invalid.php
の
protected function set_controls() {
$controls = array();
$setting_controls = $this->setting->get_controls( false );
foreach ( $setting_controls as $name => $_controls ) {
$value = $this->responser->get( $name );
$error_messages = $this->validator->get_error_messages( $name );
foreach ( $_controls as $i => $control ) {
$control->save( $value );
$controls[ $name ][ $i ] = $error_messages[ $i ]
? $control->invalid( implode( ' ', $error_messages[ $i ] ) )
: $control->input();
}
}
return $controls;
}
を
protected function set_controls() {
$controls = array();
$setting_controls = $this->setting->get_controls( false );
foreach ( $setting_controls as $name => $_controls ) {
$value = $this->responser->get( $name );
$error_messages = $this->validator->get_error_messages( $name );
foreach ( $_controls as $i => $control ) {
$control->save( $value );
$error_message = $error_messages[ $i ] ?? false;
$controls[ $name ][ $i ] = $error_message
? $control->invalid( implode( ' ', $error_message ) )
: $control->input();
}
}
return $controls;
}
に変更。
同じエラーが出るようです・・・
予期しない問題が発生しました。 後でもう一度やり直すか、他の方法で管理者に連絡してください。
(status: SyntaxError: Unexpected token ‘<‘, “<br /> <b>”… is not valid JSON
あ!ちょっと怪しいところをみつけたので、可能であれば下記も試してみてください(無理そうなら大丈夫です)。
snow-monkey-forms/App/Model/Validator.php
の
protected function _set_validation_map( Setting $setting ) {
$validation_map = array();
foreach ( $setting->get_controls( false ) as $name => $_controls ) {
foreach ( $_controls as $control ) {
$validations = $control->get_property( 'validations' );
if ( ! $validations ) {
continue;
}
$validation_map[ $name ][] = (array) $validations;
}
}
return $validation_map;
}
を
protected function _set_validation_map( Setting $setting ) {
$validation_map = array();
foreach ( $setting->get_controls( false ) as $name => $_controls ) {
foreach ( $_controls as $i => $control ) { // ← この行を変更
$validations = $control->get_property( 'validations' );
if ( ! $validations ) {
continue;
}
$validation_map[ $name ][ $i ] = (array) $validations; // ← この行を変更
}
}
return $validation_map;
}
に変更。
サーバーのエラーログは以下の通りでした。何かわかりそうでしょうか?(ドメイン名伏せています。)
[Thu Feb 20 22:17:54.119658 2025] [proxy_fcgi:error] [pid 1183104:tid 140554430596864] [client 119.24.85.212:58062] AH01071: Got error ‘PHP message: PHP Warning: Undefined array key 0 in /home/xs129397/xxx.or.jp/public_html/wp/wp-content/plugins/snow-monkey-forms/App/Controller/Invalid.php on line 31’, referer: https://xxx.or.jp/volunteer_application_form/
このサイト上複数のフォームを利用しているのですが、エラーにならないフォームとなるフォームがあります。
エラーにならないフォームはデフォルトの名前とメールアドレス、メッセージのみの項目で、エラーになるフォームはチェックボックスなど他の項目も追加しています。
サイトのカスタマイズはすべてmy snow monkeyを通してしているのですが、my snow monkeyのフォルダをリネームして実行しても同じ結果でした。必要でしたらmy snow monkeyのソースも貼ります。
お手数おかけしますがよろしくお願いいたします。m(_ _)m
一応このサイトと、テストサイトを立てて2つの環境で試してみたのですが、エラーは確認できませんでした。
なのでフックでカスタマイズしていると発生するとか、何らかの設定やその組み合わせで発生するのかもしれません。
もし PHP でカスタマイズをされているようであればどのようなカスタマイズをしているのかも教えてください!
んーこうですかね?
<a class="administrative-scrivener-tag--<?php echo esc_attr( $post_tag_term->slug ); ?>" href="<?php echo esc_url( get_term_link( $post_tag_term ) ); ?>"><?php echo esc_html( $post_tag_term->name ); ?></a>
id
は個別になるようにしていたので、その値を class
に移しました。細かい要件は僕にはわからないので、ご自身で調整してみてください!
①各タクソノミーにclassの付与方法
この辺は普通の HTML と同じなので、自分がつけたいところに class
を追加すれば良いです。例えば。
<a href="<?php echo esc_url( get_term_link( $post_tag_term ) ); ?>"><?php echo esc_html( $post_tag_term->name ); ?></a>
↓
<a class="administrative-scrivener-tag" href="<?php echo esc_url( get_term_link( $post_tag_term ) ); ?>"><?php echo esc_html( $post_tag_term->name ); ?></a>
②IDがあるのであれば知りたいです。
ID というのはどういう意味ですかね…?単純に class
と一緒に付与する id
属性ということでしょうか?
もしそうだとするなら、これも自分で好きな値で id
を追加すれば良いです。スラッグは他と被らないはずなので、slug
を使うのが良いのではないでしょうか(もしくは term_id
)。
<a id="administrative-scrivener-tag--<?php echo esc_attr( $post_tag_term->slug ); ?>" class="administrative-scrivener-tag" href="<?php echo esc_url( get_term_link( $post_tag_term ) ); ?>"><?php echo esc_html( $post_tag_term->name ); ?></a>
お世話になります。
先程のメッセージが完了と思わせる内容でしたので再送させていただきます。
※最後に下記どちらかの方法をご教授をお願いできますと幸いです。
①各タクソノミーにclassの付与方法
②IDがあるのであれば知りたいです。
【行いたいこと】
①か②を知ることにより各タクソノミーに装飾したい(css)
ご確認の程よろしくお願い申し上げます。