在本系列中,我們將介紹wordpress的基本功能之一:條件標記。 在第四部分中,我們將繼續介紹和回顧條件標籤。 如果還沒有,請確保檢查以前的部分。
讓我們開始!
此條件標籤不接受任何引數。
在開發外掛程式時,您可能需要檢查活動主題是否允許縮圖,帖子格式,自定義標題甚至小部件。 借助current_theme_supports()
,您可以檢查正在使用的主題是否支援您指定的功能。
此條件標籤只有乙個引數:
功能名稱:
假設您正在開發具有「自定義背景」功能的專用於wordpress主題的外掛程式。 您的外掛程式將對不支援自定義背景的主題無效,因此您需要在管理面板中顯示錯誤訊息以通知使用者。 這是您的工作:
<?php
add_action( 'admin_notices', 'custom_bg_feature_warning' );
function custom_bg_feature_warning()
}?>
條件標籤is_plugin_active()
僅在管理面板中工作,可以幫助您的**知道給定的外掛程式是否處於活動狀態。 如果您要為流行的外掛程式(如woocommerce)或作為外掛程式安裝的基礎框架(如redux框架)編寫「附加外掛程式」,則此條件標籤會很有用。
此條件標籤只有乙個引數:
正確使用wordpress附件是一件好事,但是如何確定url是否實際上是附件? 如果您在開發時使用url,則條件標記is_local_attachment()
對您可能非常有用:它檢查給定url是否作為附件上傳到同一wordpress安裝中。
此條件標籤只有乙個引數:
由於此條件標籤非常簡單,因此該示例也非常簡單。 假設您正在開發乙個外掛程式,並且需要檢查url(由您建立的另乙個函式生成),以檢視它們是否為本地附件:
<?php
$url = some_url_generator_function();
if ( is_local_attachment( $url ) ) else
?>
您是否知道wordpress具有基於小時,基於分鐘,甚至基於第二的存檔? (說實話,在編寫本系列文章之前,我不知道您可以建立這些型別的檔案。 在tuts +上寫作也可能是一次教育之旅!)
它不是開箱即用的,這意味著您無法輸入mywebsite.com/2014/02/22/18/30/
並在2023年2月22日獲得18:30的存檔; 但是您可以在wp_query
類的幫助下建立乙個。 無論如何:如果要檢測這些基於時間的存檔,則可以使用is_time()
條件標記。
此條件標籤不接受任何引數。
在某些語言中,大多數是在中東國家/地區,文字是從右向左書寫的,而不是從左至右書寫的。 作為wordpress開發人員,您必須考慮所有wordpress使用者,並且如果您希望主題或外掛程式與帶有rtl文字的wordpress**完美配合,則應使用is_rtl()
來確定語言環境是否為rtl。
此條件標籤不接受任何引數。
大多數web設計人員都會為rtl語言環境建立單獨的樣式表,這是一種常見的做法。 如果要有條件地載入rtl樣式表,請執行以下操作:
<?php
add_action( 'wp_enqueue_scripts', 'mytheme_enqueue_styles' );
function mytheme_enqueue_styles()
}?>
條件標籤is_tag()
可以檢測標籤檔案,但不能與自定義分類法一起使用。 要確定是否顯示分類分類存檔頁面,可以使用is_tax()
。 預設情況下,它包括所有分類檔案頁面,包括常規標籤。 但是它有兩個引數,因此您可以定位特定的分類存檔頁面,甚至特定的術語。
此條件標籤只有乙個引數:
建立外掛程式(或主題)時,您可能想知道何時顯示附件頁面。 條件標記is_attachment()
可以幫助您:在附件頁面中返回true
,在其他任何位置返回false
。
此條件標籤不接受任何引數。
<?php
if ( is_attachment() )
?>
這是第二個不返回true
和false
的條件標籤,但更有用的資訊:條件標籤term_exists()
檢查分類法術語是否存在,並返回術語id(如果未指定分類法)或陣列分類和術語配對代替true
。 如果指定的術語不存在,則返回0
或null
。
此條件標籤具有三個引數:
我們看到,如果我們想在帖子中查詢標籤,可以使用has_tag()
。 如果我們想做同樣的事情,但有乙個自定義分類法,該怎麼辦? 簡便:條件標記has_term()
具有第三個引數(第二個引數),該引數允許我們指定自定義分類法。
有趣的事實:即使條件標記has_tag()
使用has_term()
返回true
或false
! 與has_tag()
函式一樣,has_term()
也允許您指定多個術語(但只能使用一種分類法)。
此條件標籤具有三個引數:
<?php
if ( has_term( 'dell', 'laptops' ) )
?>
此條件標籤不接受任何引數。
儘管不是wordpress受歡迎的功能,但multisite在必要時非常方便。 如果您希望**在正常的wordpress安裝中執行並且在多站點安裝中表現不同,則條件標記is_multisite()
可幫助您檢測是否啟用了多站點支援。
此條件標籤不接受任何引數。
假設您正在開發外掛程式,並且如果啟用了多站點,則該外掛程式需要外掛程式中的另乙個類。 這是您的工作:
<?php
if ( is_multisite() )
?>
有時,您可能希望您的**知道是否正在顯示自定義帖子型別(或幾個自定義帖子型別,或任何自定義帖子型別)的存檔頁面。 條件標記is_post_type_archive()
的確做到這一點:它檢查查詢是否針對自定義帖子型別的存檔頁面。
此條件標籤只有乙個引數:
在這一部分中,我們回顧了wordpress中記錄的65個條件標籤中的另一批。 在接下來的部分中,我們將介紹其餘的26個。如果您有任何問題或意見,請在下面進行介紹-如果您喜歡本文,請不要忘記分享!
下一部分見!
翻譯自:
WordPress中的條件標籤演練 簡介
wordpress的最重要優勢之一就是核心的可擴充套件性。借助外掛程式和主題,wordpress使用者已經能夠塑造自己的 近十年了。wordpress於2003年首次發布,但外掛程式於2004年引入,主題於2005年引入。為了建立這樣乙個堅實的基礎架構,wordpress包括許多方便的子系統 函式,...
詳解WordPress中簡碼格式標籤編寫的基本方法
wordpress 簡碼是一種類似於論壇標籤的東西,格式類似於把尖括號換成中括號的 html 標籤。簡碼很多人叫做短 但官方的翻譯應該是簡碼,在這裡糾正一下。簡碼的開發的邏輯比較簡單,主要就是新增 刪除和判斷,會在本文全部介紹。簡碼格式 簡碼的格式非常靈活,可以是有屬性 無屬性 閉合 非閉合等等 e...
如何在WordPress中實現彩色標籤雲
有不少的朋友挺喜歡那種效果的,所以我就把如何實現彩色標籤雲顯示的方法寫出來。其實實現標籤雲彩色顯示的方法很簡單,就是通過向 functions.php 檔案新增一段 來實現的。新增的 如下 function colorcloud text function colorcloudcallback ma...