サポート » バグ報告と提案 » 再利用ブロックを使うとサイト内検索ができなくなる

  • 解決済 dice393

    (@dice393)


    最近発覚した事象です。
    バグなのか、私だけの事象なのか、どなたかわかる方いたらご教授いただけると助かります。

    事象
    1.「再利用ブロック」内に内部リンクURL(自サイトの記事URL)を記載
    2.記載のURLをサイト内検索の検索ボックスに入れても、検索ヒットしない

    ・テーマはCocoon
    ・「投稿を検索」の管理画面でもヒットしない
    ・再利用ブロックにせずに、本文に記載しているものはヒットする
    ・再利用ブロックの作成時にエラーが起こることが多々あった。更新すると、ブロック自体は作成されていた。
    ・サイト内検索の検索ボックスで、本文に記載のない単語で記事がヒットすることがある。原因は全く不明。

    以下は因果関係不明ですが、
    ・Goggleに内部リンクとして検知されていない?(インデックスはするものの、検索上位にあがらない)
    ※YMYLでもコンテンツの質でもなさそうですが、最近起こっている事象。なんとも言えませんが一応。

    原因がわからず、検索ボックスが正常に機能していないので困っております。
    よろしくお願いいたします。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • こんにちは

    再利用ブロックやショートコードの内容は標準の機能では検索できません。WordPress (Gutenberg) の仕様(下記ページを参照)のようです。
    https://github.com/WordPress/gutenberg/issues/10307

    こんにちは、

    テストしていないので、あれなんですけど pattern 使ってみるとどうですか、

    patternだと、結果を投稿にペーストする動作になるので、、、

    トピック投稿者 dice393

    (@dice393)

    ishitaka (@ishitaka)さん

    ご返答ありがとうございます。
    仕様でしたか。
    私もこの質問者様と同じように、以前はできていたように記憶しておりました。

    ちなみにもしわかれば・・・
    管理画面の投稿一覧「投稿を検索」のボックスに入れた場合も同様にヒットしない仕様でしょうか?

    よろしくお願いいたします。

    管理画面の投稿一覧「投稿を検索」のボックスに入れた場合も同様にヒットしない仕様でしょうか?

    はい、同じ仕様(処理)です。

    トピック投稿者 dice393

    (@dice393)

    nobita (@nobita)さん

    ご返答ありがとうございます。
    なるほど、パターンを編集して使えるプラグインがあるのですね。
    Cocoonを使っていたので、編集できないものと思っていました。

    再利用ブロックのように全記事へ反映させたいので悩みどころです・・

    ちょっと時間があったので、テストしてみました :)

    おさらい、たしか、WordPressの検索は投稿タイトルと、投稿コンテンツ内にある文字列を検索するだけの、単純なものだったと思います。つまり、ショートコードや再利用ブロックは、コンテンツの文字列としては存在しません。
    間違っていたら、指摘していただけると嬉しいです。

    例えば、ショートコードなら、[lorem] ( loremというショートコードの場合 )
    再利用ブロックなら、<!-- wp:block {"ref":81416} /-->
    といった形で、投稿本文に保存されるので、検索をかけても、ヒットしません。

    ヒットさせるためのキーワードは、[lorem] とか "ref":81416になるわけです。

    これをヒットさせるようにするには どうしたらいいか?

    ショートコードの実行結果、再利用ブロックの実行結果を投稿に挿入できるような形にしてやれば、検索可能になります。

    で、patternを使ってみてはどうでしょうか と書いたわけです。

    そのやり方は、テーマのpatterns ディレクトリに、reusable-test.php を作成して以下のコードを記述します。

    
    <?php
    /**
     * Title: Reususable test
     * Slug: emulsion/reusable-test
     * Categories: contents, emulsion, recently-added
     * Inserter: yes
     * Keywords: shape
     * Description: Searchable reusable block
     */
    echo do_shortcode( '[lorem]' );
    echo do_blocks('<!-- wp:block {"ref":81416} /-->');
    

    このようにすると、ショートコードの結果を投稿にペーストできます。再利用も同様に結果を張り付けられます。

    ちょっとした、実験のコードなのでもっといい書き方はあると思いますが、参考になればうれしいです。

    追記:スラッグの emulsion の部分は、あなたのテーマのスラッグに置き換えてください。そうしないとコードは動作しません。

    • この返信は1週、 1日前にnobitaが編集しました。

    あ、もっと簡単に「通常のブロックに変換」でいいのかも、、、
    「全記事へ反映」ではなくなるけど、、、

    • この返信は1週、 1日前にnobitaが編集しました。
    トピック投稿者 dice393

    (@dice393)

    nobita (@nobita)さん

    ありがとうございます!
    ショートコードコマンドで検索は、管理画面でもきちんとヒットしておりました。
    おっしゃる通り、「通常のブロックに変換」だとヒットするのですが、全記事修正の必要があるのでせっかくの利便性が犠牲になるのが残念ですT_T

    追記ですが、サイト内検索の仕様が変わったのかもしれません。アプデの影響?

    今他サイトでもテストしてみましたが、
    – サイト内に検索ワードを入れる
    – 検索結果の記事を開く
    – 記事内で「command+F」で検索ワードを探しても見つからない
    という不具合がありました。
    自サイトで試したところ、再利用ブロックとの因果関係はなさそうです。

    本トピックでご回答いただいた「再利用ブロックの仕様でヒットしない」ことに加えて、
    本件はもしかしたら検索ボックスの仕様変更やバグが出ているのかもしれません。

    「検索ボックスで検索したのに、肝心のワードが含まれていない記事がヒットする。」
    読者に不便なので、バグなら報告したいですが私では原因がわかりませんでした。。

    ごめんなさい、パターン使っても全記事修正はできませんね。思い付きで、おかしな回答してしまいました。

    @ishitaka さんのおっしゃる通り、簡単に解決するのは難しいのかもしれません。

    「検索ボックスで検索したのに、肝心のワードが含まれていない記事がヒットする。」

    <!-- wp:*** {"***":"***"} /-->などとして、テキストを含まないブロックタグもたくさんあるので、そういったものがげんいんになっているのかもしれないですね。

    トピック投稿者 dice393

    (@dice393)

    とんでもありません。
    検証までいただきありがとうございました。

    テキストを含まないブロックなんてあるんですね。
    これは解決に時間がかかりそうなので放置しかありませんねT_T

    丁寧にご対応いただきありがとうございました。
    助かりました。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • このトピックに返信するにはログインが必要です。