2017-06-02 28 views
0

我想在我的網站上顯示不同的標題。基於用戶或頁面。 目前,我使用下面的代碼:在一個函數中組合多個條件標籤

<?php if(isset($_GET['action']) && $_GET['action'] == "register" or isset($_GET['action']) && $_GET['action'] == "login" or !is_user_logged_in()) : ?> 

它顯示了其他的頭如果用戶在登錄/註冊頁面或未登錄 對於未來我想補充了很多從WordPress/WooCommerce更多的條件標籤到這個。例如:is_cart,is_checkout,...

有沒有一種方法可以將所有這些功能合併到functions.php中的單個函數中,以便在網站的不同區域使用它?並保持所有這一切在一個單一的功能?

我想到的是這樣的:

is_simple_header() 

回答

0

只寫你的功能..。也許是這樣的:

function is_page_type($type) { 
    switch($type) { 
     case 'simple': 
      return isset($_GET['action']) && $_GET['action'] == "register" or isset($_GET['action']) && $_GET['action'] == "login" or !is_user_logged_in(); 
      break; 
    } 
    return false; 
} 
0

您可以創建功能,並使用一個布爾值作爲響應:

function is_simple_header() { 
    $ret = false; 
    if (isset($_GET['action']) && $_GET['action'] == "register") $ret = true; 
    if (isset($_GET['action']) && $_GET['action'] == "login") $ret = true; 
    if (!is_user_logged_in()) $ret = true; 
    return $ret; 
} 

可以工藝優化這些功能切換到交換機()函數,如果你只使用$ _GET [ '動作']。如果你需要新的條件,只需要添加更多的條件。

你的檢查現在看起來是這樣的:

<?php if(is_simple_header()) : ?>