タイトルをタグに変換する必要があります。長さをコントロールしたい。タグが短すぎたり長すぎたりしたくないので、タグが存在しない場合はタグの前にハッシュ タグ (#) を追加する必要がありますが、他の文字は消去します。
以下のコードは機能しますが、最初の 2 つのタグにのみハッシュ タグを適用します。
$title = get_the_title($post_id);
$splittotags = explode(" ", $title);
foreach ($splittotags as $atag){
if( strlen($atag) > 4 && strlen($atag) < 15 ){
$first = $atag[0];
if($first == '#'){
$atagg = ereg_replace("[^A-Za-z0-9#]", "", $atag );
}else{
$atagg = ereg_replace("[^A-Za-z0-9#]", "", "#".$atag );
}
if($atag !=NULL){
wp_set_object_terms($post_id, $atagg, 'post_tag', true );
}
}
}
私はまた、次のような悪いタグで配列を定義することも考えています:
$not_tag = array("!", "by", "me", "auto", "mine", "by");
そして、これを行うだけです:
if( !in_array($atag, $not_tag){
コードは save_post アクションで実行されます
これを行う最善の方法は何ですか?