A. wordpress 如果篩選有圖片的文章 用query_posts
query_posts沒法實現你的需求。
除非你用自定義欄目來手動標記一篇文章是否有圖片
B. wordpress可以設置過濾詞語嗎
wordpress系統自帶關鍵字過濾的功能
C. wordpress的主分類側邊欄調用所有子分類文章列表,因有文章交叉在幾個子分類當中造成調用有重復如何過濾
針對這個問題,解決的思路應該圍繞循環內怎麼過濾已經在其他分類存在過的post.
wordpress記錄post和taxonomy之間的關系,是由term_relationships表完成,沒有辦法直接通過sql過濾.
你可以按我提供的代碼,嘗試完善你的代碼,我這測試是OK的。
$all_have_been_ids = []; //添加這個變數,用來記錄循環內的POST用以過濾
foreach($cats as $the_cat){
$posts = get_posts(array('category' => $the_cat->cat_ID,'numberposts' => 10,));
if(!empty($posts)){
echo '<div class="item cat_item"><ul class="box_list">';
foreach($posts as $post){
if ( $all_have_been_ids && in_array($post->ID, $all_have_been_ids) ) {
// 如果當前post已經存在過,則跳過
continue;
}
echo '<li><a title="'.$post->post_title.'" href="'.get_permalink($post->ID).'">'.$post->post_title.'</a></li>';
$all_have_been_ids[] = $post->ID;
}
echo '</ul></div>';
}
}
D. wordpress 文章形式中的相冊形式 如何過濾圖片
你可以試試用strip_tags這個PHP函數,比如:
echostrip_tags($post->post_content);
E. 如何隱藏WordPress網站的文章和頁面
如果不想通過代碼實現隱藏可選文章和頁面的標題,可以安裝並激活
WordPress
Hide
Title
plugin插件
,在相應頁面或文章的編輯窗口中,點擊WordPress管理下的文章和頁面菜單下需要編輯的項目即可。在編輯窗口下,有一個隱藏標題的自定義區塊:
你要做的就是選中這個復選框並單擊更新或發布按鈕,插件將隱藏單次PV上的標題。這意味著,主頁或其他分類頁面上仍然會顯示,只是單次PV上不再顯示了。
如果你希望創建一個簡單的、不顯示文章標題的登錄頁面,這種方法確實非常方便。
隱藏所有的WordPress文章和頁面標題
如果你想隱藏單一頁面上所有的文章和頁面標題,可以通過修改主題來實現。
最簡單的方法就是在WordPress的
functions.php
文件中加一段下面的代碼:
這個過濾器只是在顯示單一文章或頁面時的
post_class()function
中增加了一個類
.hidetitle
。但是,這個過濾器只有在WordPress主題支持post
class的情況下有效。如果你希望只對文章有效,就刪除代碼中的
||
is_page()。
添加這個function之後,還需要在主題樣式表中添加這個CSS規則。
在上面的CSS中,我們使用了顯示CSS屬性來隱藏文章和頁面標題。但是,這個CSS規則僅適用於WordPress主題使用的文章和頁面標題是條目標題(
entry-title
)。在谷歌Chrome瀏覽器中打開文章,將滑鼠移到文章標題上,右鍵單擊並選擇審查元素,你會看到頁面的源代碼中文章標題的代碼,其中就有你WordPress主題所使用的CSS類。
如果主題使用
article-title
作為文章標題的CSS類,只需要如下簡單更改CSS:
以上方法適用於大部分WordPress主題。但是這些方法只是隱藏標題並不能阻止載入這些標題。如果你想移除WordPress主題模板上的文章和頁面標題,就需要刪除主題文件中的the_title代碼了。
如果你只是希望在單一PV上實現,那隻需要在single.php文件中修改。
F. 如何去掉wordpress文章標題前的文章分類
先說最簡單的方案
找到主題文件夾下的content.php
注釋掉
<spanclass="cat-links"><?phpechoget_the_category_list(_x(',','Usedbetweenlistitems,thereisaspaceafterthecomma.','twentyfourteen'));?></span>
這一句即可。
用本地的wp測了一下,效果如圖
方法1:注釋or刪掉這一句(生成標簽的代碼)
方法2:用判斷語句將這一句包裹起來
G. 如何清理WordPress殘留垃圾數據
1、徹底清除殘留WordPress主題垃圾數據
經常換WP主題刪WP主題,裝插件刪插件很正常,但是簡單的刪除並不徹底,資料庫會有殘留,多餘的數據保留在post_meta表格里,久而久之就成了一堆可觀的垃圾。可使用下面的SQL語句來清除不需要的post meta值。有益於加快資料庫運行速度,減小數據。
處理方法:清理wp_postmeta數據表,刪除文章Meta標簽,執行SQL語句,(建議先備份資料庫,以上商法,後進者網路均已測試無誤)
DELETE FROM wp_postmeta WHEREmeta_key = 『_edit_lock』;
DELETE FROM wp_postmeta WHEREmeta_key = 『_edit_last』;
2、徹底刪除WP草稿修訂版本殘留數據
後台編輯文章時,系統會自動保存多個修訂的副本。過多的修訂記錄會加重資料庫負擔造成資源浪費,資料庫越來越龐大,增加了數據檢索影響頁面的載入時間。
處理方法:清理wp_posts數據表,刪除草稿修訂版本,執行SQL語句
DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships bON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID =c.post_id)
WHERE a.post_type = 『revision』
注意: 此方法將刪除所有的文章的所有修訂版,包括相關的meta數據。
也可以使用插件WP-Cleane處理。
3、批量刪除WordPress所有垃圾評論
遇到N多垃圾評論,一個一個刪除的話會崩潰。可使用下面的SQL語句查詢,批量刪除WP垃圾評論也不是難事。
處理方法:執行SQL語句
DELETE FROM wp_comments WHEREcomment_approved = 『spam』;
0 = Comment Awaiting Moderation
1 = Approved Comment
spam = Comment marked as Spam
先用上面方法刪除之前的垃圾評論,以後推薦使用Akismet插件,Akismet擁有廣泛的垃圾留言過濾系統,省下很多事。
4、刪除WordPress未使用標簽垃圾數據
WordPress資料庫中,如果你使用一個查詢語句手動來刪除舊的文章,舊的標簽卻仍然會保留並在你的標簽雲/列表中出現。你可以使用下面的方法識別未使用的標簽並將它刪除。
處理方法:執行SQL語句
SELECT * FROM wp_terms wt
INNER JOIN wp_term_taxonomy wtt ONwt.term_id=wtt.term_id
INNER JOIN wp_term_relationshipswtr ON wtr.term_taxonomy_id=wtt.term_taxonomy_id
LEFT JOIN wp_posts wp ONwp.ID=wtr.object_id
WHERE taxonomy=』post_tag』
AND ID IS null
AND NOT EXISTS(SELECT * Fromwp_terms wt2
INNER JOIN wp_term_taxonomy wtt2 ONwt2.term_id=wtt2.term_id WHERE wtt2.parent=wt.term_id) ORDER BY name;
有的人也許會問,這么復雜的SQL語句,應該有WP插件開發者開發相應的資料庫優化插件吧。沒錯還真有相關的優化WP資料庫插件。
WordPress資料庫優化插件 wp db manager :可以優化、修復、定期備份、執行mysql命令的插件。安裝好這個插件之後,可以選擇Optimize DB優化資料庫。
H. wordpress 去掉文本里的html標簽
解決方法如下
方法一: 將wp-includes文件夾下的kses.php中的2句話屏蔽掉即可,如
//add_action('init', 'kses_init'); //add_action('set_current_user', 'kses_init');
上面這種做法是去掉wordpress對所有標簽的過濾,但將這些開放給注冊用戶會存在潛在的隱患,不推薦使用!
方法二: 把自己想要不被過濾的標簽添加到「不過濾的白名單中」!
具體操作: 在wp-includes文件夾下的kses.php中搜索 $allowedposttags,這是個不過濾標簽組成的數組,裡面所列即是不過濾的標簽集合,假如你發表文章時帶有style、script兩組標簽,又不想被不過濾,可在$allowedposttags中添加下面語句:
'style' => array(), 'script' => array()
將上面兩句加入 $allowedposttags的一維數組(即最外面那層array)中即可!!
添加全局變數$allowedposttags的值,添加你所需要啟用的標簽。這種方法將只對提交的文章啟用標簽。
如此修改,每次升級wp以後還需要驗證代碼的有效性(代碼的結構有可能變化),然後需要重新修改。總得來說原則是能使用插件就盡量不修改源代碼。
I. wordpress文章要怎麼添加水平線<hr/>的樣式呢,文章發布之後就自己過濾掉了。
像這樣的代碼
最好在html方式下寫出來比較好
BanYuner回復
J. 如果禁用wordpress文章編輯器過濾
想避免這個情況是可以使用html編輯模式進行編輯!這個是最簡單的
點擊文本 然後OK