2017-12-04 13 views
0

私は、カスタムタクソノミーの1ページが実行されたときにクッキーを設定する必要がある状況があります。カスタムタクソノミのシングルポスト用条件タグ

WordPressがテンプレートファイルからクッキーを設定できないため、setcookieの中にinitというアクションを使用する必要があります。

参考:次のようにhttps://wordpress.stackexchange.com/questions/67074/issues-with-set-cookie

だから私の機能は、彼らが標的にされているすべての状況では

function set_location_cookie() { 

    // Taxonomy : `store_location` 
    if(is_tax('store_location')) { 

     die('Yeah. It Worked !!'); 

     $school = "Some Value"; 
     setcookie('default_school', $school, time()+3600); 
    } 
} 
add_action('init', 'set_location_cookie'); 
私はこの文書を経てい

https://codex.wordpress.org/Function_Reference/is_taxとStackOverflowのからのポスト、Conditional Tags for Custom Taxonomy in Custom Post Type

ですタクソノミーのアーカイブページ、または位置の配列を含む条件は、次のようになります。

is_tax('store_location', array('ny', 'tx', 'ga')); 

配列内のすべてのタクソノミを取得する代わりに、タクソノミーを単一ページで簡単に検出する方法はありますか。

+0

'is_tax()'アーカイブページ用であるためis_object_in_term($post_id, $taxonomy)

を使用することができます確認するには。アーカイブタームページ、またはこのタクソノミの用語を含む単一のポストタイプページのために必要ですか? – Shibi

+0

カスタムタクソノミの1ページにしたい –

+0

私はあなたを理解していません..テンプレートファイルを表示しますか? 'single.php'? 'archive.php'? – Shibi

答えて

0

ポストは、いくつかの分類にいくつかの用語を持っている場合は、例

function set_location_cookie() { 
    $post_id = get_the_ID(); 
    // Taxonomy : `store_location` 
    if(is_object_in_term($post_id, 'store_location')) { 

     die('Yeah. It Worked !!'); 

     $school = "Some Value"; 
     setcookie('default_school', $school, time()+3600); 
    } 
} 
add_action('wp', 'set_location_cookie'); 
関連する問題