WordPress 如何判斷一篇文章是否存在

一直以來子凡都計劃為淚雪網添加一個文章的收藏功能,直到現在也依舊也還只是在計劃中,最近幾天子凡在研究微信小程序,試圖折騰用守望軒開源的WordPress微信小程序來接入一下我的淚雪博客和淚雪網,其中想要判斷具體某篇文章是否存在。

WordPress-Check-Post.png

由于WordPress本身并沒有提供相關的函數可以檢測,但是我們可以轉個彎用現有的一些函數來判斷,主要有一下兩種方式。

get_permalink() 函數判斷

get_permalink()函數是用于獲取當前文章或者通過指定文章ID來獲取文章鏈接的函數,如果沒有獲取到鏈接,函數就會返回false,也就間接的表示出文章不存在,所以就可以利用這個方法來判斷文章是否存在了。

//通過get_permalink()函數判斷文章是否存在
if(get_permalink($post_id)===false){
echo '文章不存在';
}

get_post_status() 函數判斷

同理,get_post_status()函數是用于檢測當前文章或通過指定或傳遞文章ID來獲取文章狀態,如果檢測不到狀態就會返回false,同樣也就表示文章是不存在的。

//通過get_post_status()函數判斷文章是否存在
if(get_post_status($post_id)===false){
echo '文章不存在';
}

當然get_post_status()函數還可以有更多深度的用法,因為在WordPress中文章的狀態是有很多種的,通過這樣的方式可以達到更多的調用或者判斷檢測。

WordPress 文章狀態

  • 'publish' – 公開發布的文章或頁面
  • 'pending' – 待審文章
  • 'draft' – 草稿
  • 'auto-draft' – 自動保存草稿
  • 'future' – 定時發布
  • 'private' – 私密文章
  • 'inherit' – 修訂版本
  • 'trash' – 在回收站中的

簡單的使用例子如下

//通過get_post_status()函數判斷文章狀態
if(get_post_status($post_id)==='publish'){
echo '文章已經發布';
}

最后需要注意的是,子凡以上提供的代碼片段中$post_id變量是指的文章或頁面ID,在WordPress文章主循環中可以使用get_the_ID()函數獲取,所以在需要判斷或者檢測指定文章狀態時需要指定$post_id變量或者傳值才可以完整的使用。

原文鏈接:https://zhangzifan.com/wordpress-check-post-exist.html

轉載請注明出處 AE博客|墨淵 ? WordPress 如何判斷一篇文章是否存在

相關推薦

發表評論

路人甲

網友評論(0)