2017-11-09 9 views
1

投稿を作成するときに自動的に生成されるスラッグを変更したいと思います。Wordpress - スラッグジェネレータのフック

enter image description here

私はWPが自動的にスラグを作成するときにフックがあります推測[メタ] -test-スラグ-2

のようなものを作り、前のメタを追加したい、と私が見つけることができたら、スラッグを作るときにタイトルの前にそのメタを入れることができました。

存在するフックはありますか?もしそうなら、私はそれをどのように使うことができますか?

答えて

1

変更ニーズに合わせて$prefix変数:

add_filter('wp_unique_post_slug', 'prefix_wp_unique_post_slug', 2, 6); 
function prefix_wp_unique_post_slug($slug, $post_ID, $post_status, $post_type, $post_parent, $original_slug) { 
    if ($post_type, 'post')) { 

     $prefix = 'meta-'; 
     if (strripos($slug, $prefix) !== 0) { 
      $slug = $prefix . $slug; 
     } 
    } 
    return $slug; 
} 
+0

フックに優先順位を与えることを忘れないでください!もしあなたがいないと、いくつかのプラグインはそれをオリジナルに戻すかもしれません – Fredy31

0

このquestionへの回答を参照してください。

簡潔に言えば、wp_unique_post_slugフィルタは、スラッグを修正することができます。

しかし、投稿の保存ごとに呼び出されているようです。そのため、最初の保存時にプレフィックスを付けるだけのロジックをお勧めします。ユーザーは好きなようにスラッグを編集できます。

+0

その質問を試しても、動作していないようです。それは私がそれをtoughtものではなかったかと思った。 – Fredy31

+0

あなたのコードはwp_unique_post_slugで全く動かないのですか?他の誰かが後に来て、スラグを別のやり方で変更することが重要です。 – Kallmanation

関連する問題