Simplicityの特徴 › フォーラム › Simplicity2に関する話題何でも › パンくずリストとサイトのURL表示の不一致
-
投稿者投稿
-
-
2017年1月23日 8:26 AM #49660
u
ゲストお世話になっています。
simplicity2.4.6.zip
simplicity2-child20161002a.zip
を使わせて頂いています。パーマリンク設定を
カスタム構造 /%category%/%postname%/
にしています。質問は、
例えば一つの記事を二つのカテゴリ cate1, cate2 に登録した場合に、
その記事を表示した時に、URL表示が
http://www.example.com/wordpress/cate1/post-10/
と出ます。
その時に、パンくずリストでは、
ホーム > cate2
となる場合があり、別のカテゴリが表示されます。
これはWordPressの仕様なのでしょうか?
それともSimplicity2の挙動でしょうか?
あるいは、私のやり方が何か間違っているのかもしれません。出来ればURLのカテゴリとパンくずリストのカテゴリ表示を一致させたいのですが、可能でしょうか?
-
2017年1月23日 8:51 AM #49661
Hidekichi
ゲスト順番はcate1, cate2のままですか?
cate2, cate1とかにはなってないですか?
また投稿ページか固定ページどちらでしょうか? -
2017年1月23日 9:11 AM #49662
u
ゲストHidekichiさん
>順番はcate1, cate2のままですか?
>cate2, cate1とかにはなってないですか?
ああ、そうなっています。
その場合にurlにはcate2が表示されます。さらに、
cate1, cate2, cate3
の三つのカテゴリに登録してみたら、その場合にも何故か
urlにはcate2が表示されます。
パンくずリストは正しくcate1, cate2, cate3 のどれかが表示されます。>また投稿ページか固定ページどちらでしょうか?
投稿ページです。urlに表示されるカテゴリと、パンくずリストのカテゴリの関係がどうなっているのか良く分かりません。
-
2017年1月23日 9:59 AM #49663
Hidekichi
ゲスト単純に一番最初のカテゴリのリンクになってると思います。
その記事はカテゴリ1にもカテゴリ2にも属しているわけですから、パンくずのリンク自体はどちらも正しいことになります。パンくずのリンクはカテゴリの最初のが表示されるので、こだわるなら1つしかつけないようにしてタグで仕分けるとかが必要かも。
> urlに表示されるカテゴリと、パンくずリストのカテゴリの関係がどうなっているのか良く分かりません。
おそらくアドレスのカテゴリ部分も上記と同様になっていると想像します。
http://サイトアドレス/cat1,ca2/ページ名
なんてのは付きませんから、
http://サイトアドレス/cat1/ページ名
こうなるのではなかろうかと。cat1,cat2とありますが、同時につけた場合はカテゴリIDが若い方がつくのではないですかね?あるいはカテゴリの編集で上からとか。同じようなパーマリンクにしないと正しくは答えられないのであくまで想像ですが。
breadcrumb.phpなどで色々といじれるんですが、他のカテゴリについても一定の表示規則が必要かと思います。例) 2つカテゴリがある場合は2つ目を表示とか。
-
2017年1月23日 10:02 AM #49664
u
ゲストいろいろ試して分かったのは、Simplicity2のパンくずリストの表示が私の期待通りの動きです。
そこに表示されているカテゴリの階層構造がURLに表示されると良いのですが。
それはWordPressの設定でどうにかすれば出来そうですが、難しそうですね。何がしたいのかと言うと、自分でもSimplicity2のカスタマイズを練習していて、
Childテーマのheader-insert.phpかどこかで、パンくずリストで表示しているカテゴリのデータを参照したいのです。
URLならget_site_url();と言う関数で簡単に取得出来たのですが、それで取得したURLは最初の質問に書いたように私の期待する内容では無かったので、それで質問させて頂きました。
何かアドバイスなどありましたらよろしく願いします。 -
2017年1月23日 10:06 AM #49665
u
ゲストあ、Hidekichiさんの投稿を読む前に投稿してしまいました。
-
2017年1月23日 6:12 PM #49672
わいひらキーマスターその、「パンくずリストとURLが不一致しているページ」のURLをいくつかサンプルとして見せていただけますでしょうか?
法則性を見たいので。 -
2017年1月24日 7:53 AM #49684
u
ゲストお返事ありがとうございました。
http://blog.wareko.jp/category/top1/cate1/
でcate1で表示して、記事をクリックして表示すると
http://blog.wareko.jp/top1/cate1/post-3610/ が開き、
ホーム > top1 > cate1 パンくずもcate1になります。http://blog.wareko.jp/category/top1/cate2/
でcate2で表示して、記事をクリックして表示すると、同じく
http://blog.wareko.jp/top1/cate1/post-3610/ が開き、
ホーム > top1 > cate1 パンくずもcate1になります。私が期待していたのはcate2で記事を表示した場合にはURLもcate2が含まれるのかなあと思ったのですが、
どうやら最初にあるcate1がURLに使われるようです。
Hidekichiさんのご指摘の通りでした。ややこしそうなので本件はこれ以上深入りしない事にして、何か別の手法を探します。
いずれにしましても、私がPHPの勉強も兼ねてSimplicity2のchildテーマを少し編集しているだけですので、
Simplicity2自体に何か不満があるとか問題があるとかそういう意味ではありません。
大変お騒がせしました。 -
2017年1月24日 8:57 AM #49685
Hidekichi
ゲストカテゴリのリンクは配列で入ってますから、
サンプル js欄に書いてますがphpです
というようなことをすれば、パンくずに
ホーム | カテゴリ名1, カテゴリ名2 | ページ名という表示は可能です。またカテゴリのリンクにclassを入れて、後からjQueryで
selectタグにすることもできます。つまり、<select> <option>カテゴリ名1</option> <option>カテゴリ名2</option> </select>こういうことです。できるにはできるんですが、これをgoogleがどうとるかでseo的に問題が出るかも知れません。そこらがクリアになれば解決方法は色々あるかと思います。
-
2017年1月24日 5:54 PM #49695
わいひらキーマスターサンプルをありがとうございます!
法則性を見た限り、URLとパンくずリストの表示は、僕の意図通りに表示されているようです。
hidekichiさんのおっしゃったように、カテゴリの順番通りに表示される仕様です。
Simplicityも、breadcrumbs.phpのget_categor関数で取得した、最初のカテゴリを表示するようにしています。
おかげで、不具合ではないようなので安心しました。Wordpressは、両方のカテゴリのURLが入るという仕様にはなっていないと思います。
それを変更するには、以下のようにURLの表示をフックして変更するしかないかもしれません。
URLのカテゴリ階層をカスタマイズしてフラットなURLにする | Webエンジニアブログ
ただ、これをするとかなりややこしくなるので、カスタマイズに慣れていない場合は、変更しない方が無難かもしれません。
僕がやろうと思っても、ややこしい部分ですし、hidekichiさんが書かれているように、SEOにどんな影響が出るかわからないので、かなり触りたくない部分ではあります。
-
-
投稿者投稿
- このトピックに返信するにはログインが必要です。