這是來自我正在處理的一個WordPress站點,但不是一個WP特定的問題。用PHP編寫div if/else語句
我有一個if/else PHP語句來檢查用戶是否正在查看我的網站的主頁。如果他們正在查看主頁,我希望代碼不做任何事情。如果它們不是,我希望它在配置中顯示頁面標題。
我目前擁有的代碼是:
<div class="page-header">
<h1>
<?php
if (is_front_page()){
echo ' ';
}
elseif (is_home()) {
if (get_option('page_for_posts', true)) {
echo get_the_title(get_option('page_for_posts', true));
} else {
_e('Latest Posts', 'roots');
}
} elseif (is_archive()) {
$term = get_term_by('slug', get_query_var('term'), get_query_var('taxonomy'));
if ($term) {
echo $term->name;
} elseif (is_post_type_archive()) {
echo get_queried_object()->labels->name;
} elseif (is_day()) {
printf(__('Daily Archives: %s', 'roots'), get_the_date());
} elseif (is_month()) {
printf(__('Monthly Archives: %s', 'roots'), get_the_date('F Y'));
} elseif (is_year()) {
printf(__('Yearly Archives: %s', 'roots'), get_the_date('Y'));
} elseif (is_author()) {
global $post;
$author_id = $post->post_author;
printf(__('Author Archives: %s', 'roots'), get_the_author_meta('display_name', $author_id));
} else {
single_cat_title();
}
} elseif (is_search()) {
printf(__('Search Results for %s', 'roots'), get_search_query());
} elseif (is_404()) {
_e('File Not Found', 'roots');
} else {
the_title();
}
?>
</h1>
</div>
我知道echo ' ';
可能是路要走,但我絕對PHP初學者!目前這會創建一個空的<div>
和<h4>
標籤,但我寧願將其清理乾淨,並在主頁上根本不創建任何內容。
如何才能最好地修改上面的代碼來實現這一目標?
爲什麼不刪除'else'並使用'if(!is_front_page()){'? OP只需要在該頁面上不需要任何內容,因此回顯空間是不必要的。 – Eric
OP看起來很困惑,所以我放棄了否定,也保留了冗餘的空回聲。它只是展示了結構。 – mario
哈哈感謝這個傢伙。我其實想到做這樣的事情,但並不認爲你可以在html if/else語句中查找html。 'if(!is_front_page()){'似乎夠簡單,所以我會用它。乾杯! – Jascination