1

wordpress Web サイトに WP - Alert プラグインを使用しています。問題は、ホームページのみに表示するように設定されているにもかかわらず、すべてのページに表示されることです。(家にいる)。ただし、私のホームページは静的なホームページなので、 is_front_page に設定しても、すべてのページに表示されます。何か見逃しているかどうか教えていただけないでしょうか??

function wp_alert_add_sticky_alert(){
if(get_option('alert_show_on_site') == 'yes'){
    $display    = true;
    $homeOption = get_option('alert_show_on_home');
    $pageOption = get_option('alert_show_on_page');
    $postOption = get_option('alert_show_on_post');

    $getID = get_the_ID();

    if($homeOption == 'yes' && is_home ()){
      $display =  true ;
    }elseif($pageOption == 'yes' && is_page()){
      $display =  true ;
    }elseif($postOption == 'yes' && is_single()){
      $display =  true ;
    }else{
      $display =  false ;
    }
    if($display){
?>
<div class="sticky-box">
<div class="sticky-inner"><?php echo stripslashes(get_option('wp_alert_message')); ?>    
</div>
</div>
<?php
  }
}
}
?>

この行を上記のコードに追加しましたが、それでも静的ホームページにのみ表示されません。} elseif($homeOption == 'はい' && is_front_page()){ $display = true ; }

よろしくお願いします:)

4

2 に答える 2

2

オブジェクトが現在のページで設定される functions.php前に、WordPress が読み込まれます。は の周りのラッパーであり、クエリが設定されていない場合は常に false を返します。$wp_queryis_front_page$wp_query->is_front_page()

トピックの詳細については、次の質問を参照してください: https://wordpress.stackexchange.com/questions/41805/is-front-page-only-works-in-theme-file-and-does-not-work-in-関数-php

で使用するにfunctions.phpは、 $wp_query オブジェクトがインスタンス化された後のアクションでラップする必要があります。

add_action('wp', function () {
    if (!is_front_page()) {
        add_action('wp_print_styles', function () {
            wp_deregister_style('wpos-slick-style');
            wp_deregister_style('wpsisac-public-style');
        }, 100);
    }
});
于 2013-09-09T08:37:12.643 に答える
1

これは現在、静的ホームページに表示されていますか??

これを試して

function wp_alert_add_sticky_alert(){
if(get_option('alert_show_on_site') == 'yes'){
    $homeOption = get_option('alert_show_on_home');
    $getID = get_the_ID();
    if($homeOption == 'yes' && is_home ()){
   ?>
<div class="sticky-box">
<div class="sticky-inner"><?php echo stripslashes(get_option('wp_alert_message')); ?>    
</div>
</div>
<?php
  }
}
}
?>

これがうまくいくことを願っています

于 2013-09-09T08:41:44.037 に答える