前提・実現したいこと
Wordpress初心者です。
カテゴリーを「red」と「pink」と作り、それぞれに同じ「smith」というスラッグで記事を投稿したいです。
発生している問題
同じスラッグを投稿すると「-2」が付与されてしまいます。
たとえば「red/smith」の投稿を完了し、次に「pink/smith」を投稿しようとすると「pink/smith-2」となってしまいます。
該当のソースコード
ソースコードは特にありません。通常の管理画面からの投稿で生じる問題になります。
試したこと
・別途投稿したらどうかと思い、「wp_insert_post()」という関数を使って投稿しても同じで、「-2」が強制的に付与されてしまいました。
・アクションフックで「draft_to_publish」を使ってみたのですが、これもやはり「-2」が付与されてしまいました。
補足情報
Wordpressは一番新しいバージョンで「5.0.3」を使用しています。
##理由
同じスラッグを使いたい理由はこうです。
すでに2つのサイト「red.com」と「pink.com」がありまして、それぞれに
http://red.com/smith/
http://pink.com/smith/
というアドレスが存在しています。
今回Wordpressで作成している「example.com」は、上記のサイトと関連づけたいがために、
http://example.com/red/smith
http://example.com/pink/smith
として、同じ「smith」というスラッグを使いたいのです。
もし可能でしたらよろしくお願い致します。
###自分なりのアプローチ
さらに考えたのですが、以下コードを書いて「スラッグにハイフンを含められるようにする」というアプローチはいかがでしょうか。
php
1remove_filter('sanitize_title', 'sanitize_title_with_dashes'); 2add_filter('sanitize_title', function($title, $raw_title = '', $context = 'display'){ 3 if(seems_utf8($title)){ 4 $title = utf8_uri_encode($title, 200); 5 } 6 return $title; 7});
つまり「smith」という同じスラッグではなくて、「red/smith」と「pink/smith」という別のスラッグとして処理できるのではないかと考えました。
このアプローチについて、何か想定される懸念などございませんでしょうか?
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/02 04:40
2019/12/02 05:52