フォーラムへの返信
-
投稿者投稿
-
お忙しいところご返信いただきましてありがとうございます!
早速いただいたコードで試してみましたが、同様にリンクが開かない場合がありました。
Macで、ChromeとSafariで試しています。
・スマホでは開くことができることの方が多いが、たまにタップしてもリンクが開かない場合がある
・パソコンではMagic Mouseを使っているが、有線マウスに変えたところ、「リンクが開かない」の頻度が下がった何度も検証した結果、「クリックしながら少しでも横スクロールさせてしまうとリンクが開かない」ということがわかりました。意識して「さっ」とクリックした場合は100%開きません。
要素の上でマウスを静止して、2秒ほど数えてからクリックするとリンクが開きます。
スマホでのタップも、画面を静止してから真上からポンと押すと確実にリンクが開きます。MagicMouseの場合、繊細な動作を読み取るので、自分のクリックの仕方が悪いのか、普通にクリックしているつもりでも90%くらい1回目のクリックで開かずストレスを感じていました。
普通の有線マウスの場合は、20%ぐらいの確率で開きません。CSSのみで横スクロールをさせているコンテンツでは問題なくリンクが開くのですが、Snowmonkeyのコンテンツスライダーのみこの現象が起こってしまいます。
これは仕様上仕方がないでしょうか?♥ 0いいねをした人: 居ません以下で、ショートコードでもできるようになりました!
// 個別ページをショートコードに
function display_page_content_by_id($atts) {
$atts = shortcode_atts(
array(
‘id’ => ”,
),
$atts,
‘page_content’
);
if (empty($atts[‘id’])) {
return ”;
}
$page = get_post($atts[‘id’]);if (!$page || $page->post_status != ‘publish’) {
return ”;
}return apply_filters(‘the_content’, $page->post_content);
}
add_shortcode(‘page_content’, ‘display_page_content_by_id’);// ドロワーに個別ページを入れる
add_action( ‘snow_monkey_prepend_drawer_nav’, function() {
echo apply_filters( ‘the_content’, ‘[page_content id=”ページのID”]’ );
}
);ありがとうございました。トピックを閉じます。
♥ 0いいねをした人: 居ませんGONSY様ご返信ありがとうございます!
テンプレートを間違っておりました。
GONSY様に教えていただいた部分に出力されていました!全ページのヘッダーに入れることが希望です。
「シンプル」のヘッダーを適用していますが
全ページのヘッダーか、ヘッダーの後に出力されるにはどのようにしたら良いでしょうか。♥ 0いいねをした人: 居ませんお忙しいところご返信ありがとうございます!
以下に新しいトピックを立てさせていただきました。(不具合とは少し違うかもしれないので悩みましたが同じカテゴリで立てさせていただきました)
何卒よろしくお願い申し上げます。アップデートで解消しました!
素早いご対応をありがとうございます。コンテンツスライダーブロックについてもう一つ質問させてください。
トピックを変えた方がよろしければ新しいものを立ち上げます。コンテンツスライダーブロックで、ブロック全体がリンクになるようcssを適用しています。
しかし、2回クリックしないとリンクが開きません。
多分、スライダーの機能と相性が悪いように思います。1回クリックでリンクが開く方法がございましたらご教授いただければ幸いです。
検証したこと
・矢印を表示:2回クリックしないとリンクが開きません
・ドットを表示:2回クリックしないとリンクが開きません
・何もせず何回かリロードしたりすると何かのタイミングで1回でリンクが開くこともあります。「コンテンツスライダー」の「スライド」の中身
・グループ(文章と画像を記載)
・段落(リンクを記載。cssのクラスはcontents-slider-link-url)「コンテンツスライダー」の「スライド」に適用しているCSS
cssのクラスは「contents-slider-link」
.contents-slider-link{
position: relative!important;
}.contents-slider-link p.contents-slider-link-url {
position: absolute!important;
top:0!important;
left: 0!important;
width: 100%!important;
height: 100%!important;
z-index:999!important;
}
.contents-slider-link a {
position: absolute!important;
top:0!important;
left: 0!important;
width: 100%!important;
height: 100%!important;
z-index:999!important;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
}※上記cssは編集画面には適用されないようにしています。
♥ 0いいねをした人: 居ませんお世話になります。
お忙しいところご返信いただきましてありがとうございます。
以下のようにしてみましたが、この場合エラーになり保存できませんでした。'slug' => 'default'
がエラーのようでした。syntax error, unexpected single-quoted string "slug", expecting ")"
// 固定ページのスラッグ名をショートコードにする[page_scode slug="aaa"] function page_content_include($atts) { extract(shortcode_atts(array( 'slug' => 'default' ), $atts, 'page_scode')); ob_start(); $page_info = get_page_by_path( $slug ); $page = get_post($page_info); ob_end_clean(); return do_shortcode( $page->post_content ); } add_shortcode('page_scode', 'page_content_include'); // ドロワーに個別ページを入れる add_action( 'snow_monkey_prepend_drawer_nav', function() { echo apply_filters( 'the_content', '[page_scode slug="aaa"]' ); }
以下のコードで表示されました。
function page_content_e( $page_path, $post_type = ‘page’ ) { $page = get_page_by_path( $page_path, OBJECT, $post_type ); if ( $page && $page->post_status == ‘publish’ ) { echo apply_filters( ‘the_content’, $page->post_content ); } } add_action( ‘snow_monkey_prepend_drawer_nav’, function() { ?> <?=page_content_e( ‘navigation’ )?> <?php }
♥ 0いいねをした人: 居ません大変お世話になります。
ご返信ありがとうございます。
ショートコードの方法は、コードがそのまま掲載されてしまい出来ませんでしたが、以下の方法で叶いました!
セキュリティなど特に問題はないでしょうか?function page_content_e( $page_path, $post_type = 'page' ) { $page = get_page_by_path( $page_path, OBJECT, $post_type ); if ( $page && $page->post_status == 'publish' ) { echo apply_filters( 'the_content', $page->post_content ); } } add_action( 'snow_monkey_prepend_drawer_nav', function() { ?> <?=page_content_e( 'navigation' )?> <?php }
♥ 0いいねをした人: 居ませんお忙しいところ、早速ご返信をいただきましてありがとうございます!
ブロックエディターでの更新を反映させたいため、以下のように固定ページをショートコードにして、教えていただいたコードと合わせることも可能でしょうか?
function page_content_include($atts) { extract(shortcode_atts(array( 'slug' => 'default' ), $atts, 'page_scode')); ob_start(); $page_info = get_page_by_path( $slug ); $page = get_post($page_info); ob_end_clean(); return do_shortcode( $page->post_content ); } add_shortcode('page_scode', 'page_content_include'); add_action( 'snow_monkey_prepend_drawer_nav', function() { ?> [page_scode slug='表示させたいスラッグ名'] <?php }
♥ 0いいねをした人: 居ませんこちらの箇所になります。
♥ 0いいねをした人: 居ませんデベロッパーのコンソールのエラーを以下に貼ります。
Incorrect use of <label for=FORM_ELEMENT>
The label’s for attribute doesn’t match any element id. This might prevent the browser from correctly autofilling the form and accessibility tools from working correctly.
To fix this issue, make sure the label’s for attribute references the correct id of a form field.
AFFECTED RESOURCES
1 resource
Violating node♥ 0いいねをした人: 居ません早速ご返信いただきましてありがとうございます。
– WordPress のバージョンは何ですか?
WordPressはバージョン 6.6です。
– 編集画面でデベロッパーツールのコンソールに何かエラーはでていますか?
Incorrect use of <label for=FORM_ELEMENT>
と表示されています。
♥ 0いいねをした人: 居ません -
投稿者投稿