wordpress 文章的釋出和修改時定製文章標題
我想在發表文章的時候對文章的標題統一加上分組的資訊,比如:[foo] bar title
更新2(2018-09-03):
wp_posts表有幾個型別(post_type)的資料:post、page、attachment、revision、nav_menu_item。我們是post型別。
post型別有幾個狀態(post_status):publish、future、draft、pending、private、trash、auto-draft、inherit。我們是在釋出post的時候,也就是post狀態是publish的時候才進行修改。
我還多做了一個處理,如果標題已經加過“[分類名]”,那就不再加了,因為wp好多情況都是publish,比如你編輯post更新後,也屬於publish,所以得做個判斷。
add_action("save_post","add_category_to_article_title",1,1);
function add_category_to_article_title($post_id){
$post = get_post($post_id);
$title = get_the_title($post_id);
$status = get_post_status($post_id);
$type = get_post_type($post_id);
if ("post" == $type && "publish" == $status && false === strpos($title,"[")){
$cats = get_the_category();
$content = array(
'ID' => $post_id,
'post_title' => '[ '.$cats[0]->cat_name.' ] ' . $title,
);
remove_action('save_post', 'add_category_to_article_title',1,1);
wp_update_post($content);
add_action('save_post', 'add_category_to_article_title',1,1);
}
}
更新1,不過還是有個小問題,如果是更新文章的話還是會有小影響:
add_action("save_post","add_category_to_article_title",1,1);
function add_category_to_article_title($post_id){
$post = get_post($post_id);
$title = get_the_title($post_id);
$status = get_post_status($post_id);
$type = get_post_type($post_id);
if (!($type == "revision" && $status == "inherit") && !($type == "post" && ($status == "draft" || $status == "auto-draft"))){
$cats = get_the_category();
$content = array(
'ID' => $post_id,
'post_title' => '[ '.$cats[0]->cat_name.' ] ' . $title,
);
remove_action('save_post', 'add_category_to_article_title',1,1);
wp_update_post($content);
add_action('save_post', 'add_category_to_article_title',1,1);
}
}
把這段程式碼載入主題的functions.php裡:
下面這段下次太大,可以不參考。
// 當新建文章或儲存的時候,會在標題前面把分類名稱以[名稱]的形式加上
add_filter( 'wp_insert_post_data' , 'modify_post_title' , '99', 1 );
function modify_post_title( $data )
{
$cats = get_the_category();
$data['post_title'] = '[ '.$cats[0]->cat_name.' ] ' . $data['post_title'] ;
return $data;
}
可以搜一下wp_insert_post_data這個鉤子。
相關文章
- WordPress自動採集釋出文章04-如何批量定時釋出文章
- WordPress文章如何隱藏不顯示作者和釋出時間
- WordPress入門06-WordPress釋出新文章和管理文章
- wordpress文章的顯示時間期限或過期時間的標誌
- WordPress自動採集釋出文章03-如何批量把文章上傳到wordpress
- 非技術探討:文章定時釋出功能如何實現
- 輸入文章標題
- dedecms文章標題呼叫文章分類名稱的方法
- 釋出的文章,怎麼生成HTML?HTML
- WordPress入門05-WordPress建立和管理文章分類目錄
- Wordpress網站修改,Wordpress網站內容和設定修改方法網站
- zblog模板文章釋出時間格式詳細說明
- 織夢網站修改文章 如何修改織夢網站的文章網站
- PbootCMS模版製作:當天釋出的文章顯示紅色的方法boot
- 網站文章內容修改 如何修改網站文章內容網站
- WordPress模板層次14:文章形式
- 釋出一篇文章001
- 測試釋出一篇正常的文章
- WordPress自動採集釋出文章01-使用火車頭採集目標網站網站
- 自動為新文章新增標籤WordPress外掛(可控制標籤數量)
- 帝國cms文章釋出時間批次更新_方法_教程_步驟
- 釋出文章bug
- UED Landing 頁 - 定時抓取掘金文章
- 如何給WordPress頁面(Page)和文章(Post)設定訪問密碼密碼
- 文章標題檢測工具有哪些?這些技巧可以提高你的文章透過率
- 前臺怎麼釋出文章?編輯文章?
- 什麼樣的文章會被修改?
- ? 「掘金官方」關注的人釋出的文章上線啦!
- 在Laravel釋出的第一篇文章Laravel
- WordPress自動採集釋出文章02-軟體批量偽原創
- onethink 前端釋出文章前端
- 一文說透WordPress的自定義文章型別型別
- 6 播客模式下文章標題與“文件”重合模式
- 網站標頭的修改,如何修改網站的標題和元標籤網站
- 基於java的文章釋出系統的設計與實現Java
- SEO、自媒體文章選題技巧與標題寫作方法
- ThinkCMF製作文章列表 <portal:articles 標籤報錯 Undefined variable $voUndefined
- WordpressCMS主題開發06-分類頁面的文章呼叫和sidebar製作IDE