質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.23%

・重複コンテンツをクリックイベントでDOM生成するのは、問題ないでしょうか?

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 520
退会済みユーザー

退会済みユーザー

重複コンテンツをクリックイベントでDOM生成するのは、問題ないでしょうか?

他のページの紹介文や、アプリの使い方の説明文など、どうしても重複コンテンツになってしまう部分を何とかしたいです。
下記のような情報を見たのですが、

>>>
クリックによるDOM生成はページ遷移に該当するのでクローキング判定される可能性は低い。スクロールイベントに連動するものはガイドラインを厳格に適用すればクローキングに該当します。

>>>

つまり、スクロールイベントを使って、ある程度下がったらDOM生成して、他のページの紹介文などが作られる場合はクローキングになる可能性が高いので、やめたほうがいい。
しかし、リンクをクリックさせて、DOM生成する形で、テキスト情報を作成する場合は、クローキングになる可能性が極めて低いと考えて良いという情報です。

もしこれが正しければ、
他のページの紹介文を見るというページ内遷移のボタンを作ってこのボタンを押すと、
するっと移動しながらDOM生成して、到着と同時に作られた紹介文を見ることが出来るという形にすることが出来ます。

これなら、クローキングになる可能性はほぼありえないでしょうか?

一番の理想は、アプリのスタートボタンを押したら、紹介文などが、DOM生成する形です。
これなら絶対に、押すので、わざわざもう一度、紹介文を見るボタンを押してもらう手間が省けます。

ただこれだとクローキングになる可能性が高いのですかね?
いまいち、違いがわかりません。

・URLパラメータという方法もあるようですがこれは、サーバサイドのプログラミングをしないと不可能なのでしょうか?

フロントjsしかできない人には無理ですかね?


>>>
質問者さんの言う、”重複コンテンツ”はSEO上での、検索エンジンにとっての重複コンテンツ、という認識で合っていますか?それであれば、回答することが可能です。
>>>

そうです。おそらく重複コンテンツが原因でページでの順位が全く上がらなくなりました。

ページは下記のようなイメージです。

ヘッダー
アプリの内容(SPAなので、クリック時に表記される。それまでは何もない状態なのでクローラーは認識できていない。)
アプリの実行ボタン

他のサイトの紹介文

SNSのお願い文

その他文三種類ほど

アプリの内容をズラッとliで羅列表記。
(クローラーに重複コンテンツのページと思われないように。あえて記載している。)
フッター

上記のようになっています。

*ソースコードは下記のようになっています。
今は、スクロールイベントをコメントアウトしています。

(function () {

    // document.addEventListener('scroll', function() {

    //     // var scrollFrag;

    //     if(scrollFrag !== true && window.scrollY >= 1500) {

    //         scrollFrag = true;
            var punPage = document.querySelector('#js-other');
            punPage.innerHTML = `
            <aside id="js-goto-other">
                <h4 class="heading4">
ここに、テキスト情報がごっそり入っている。~
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • miyabi_takatsuk

    2018/10/09 17:26

    前回の質問時に、こちらからの質問をしなくてすみませんでした。質問者さんの言う、”重複コンテンツ”はSEO上での、検索エンジンにとっての重複コンテンツ、という認識で合っていますか?それであれば、回答することが可能です。

    キャンセル

  • miyabi_takatsuk

    2018/10/09 17:35

    もう一点、だいたいでいいので、訪問ページと、表示させたい内容が記載さ入れているページなどの、サイト全体のディレクトリ構成や、js構文を記載してください。正直、今のままでは、クローキングになるかどうかも判断できません。重複コンテンツになるか否かくらいしか、お答えできません。

    キャンセル

回答 1

checkベストアンサー

0

質問文の修正、ありがとうございます。

回答いたしますと、
クライアントサイド(JavaScriptでHTMLの内容を変えることも、クライアントサイドとなります。)で、いくら文面を変えようとも、
元のHTML文が同じ内容、構成であれば、いくらJavaScriptでリッチテキストでコントロールしようとも、
重複コンテンツとみなされる確率が非常に高くなります。(というかほぼ100%でしょう)
現在の技術では、ロボットのクロールの際の、サーバーから返ってきたHTML文章の内容で、
そのページの内容が判別されております。
である以上、ロボットが判断した後にいくらJavaScriptで内容を変えようが、Ajaxで別ページの内容を入れこもうが、重複コンテンツとみなされます。
よって、同じHTML上で、かつ重複コンテンツとみなされないようにするには、サーバーサイド(PHPとか、Perlとかです)で、URLパラメータなどによって判別し、
サーバーから返ってくるHTML文章の内容自体を変えるしかありません。
なので、クローキングの可能性云々ではなく、
JavaScriptでのリッチコンテンツは、検索エンジンロボットにとっては、”見えない内容”、なのです。
(見えないからこそ、下手なことをするとクローキングとみなされるのです)

検索技術の進歩を期待して止みませんが、
(現在は画像に書かれた文字を検索にひっかけるなどの技術が研究されています。そうなれば、JavaScriptの内容をも検索できる時代がいずれくるでしょう)
今のところは、質問者さんのやりたいことで、重複コンテンツ回避は不可能です。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/10/12 11:21

    >>>
    そうですね、認識されていないでしょうね。というかJSがうまく動いていないんだと思います
    >>>

    認識しているとおっしゃっていませんでしたか?


    定型文がユニークという事はあり得ませんよね。


    数千文字のオリジナルの情報は、ユニークで定型文とは別の内容です。


    ちょっと矛盾が多すぎるので混乱します。

    キャンセル

  • 2018/10/12 11:57

    今までご回答ありがとうございました。

    ちょっと矛盾が多すぎて理解できないので、他の人の意見も聞きたいと思います。

    最後に、クリックイベントでDOM生成するのは、別ページに移動したものとして、グーグルは認識するので、重複コンテンツになることは、ありえないのですね。

    また、スクロールイベントも、重複コンテンツになる可能性はクリックイベントでDOM生成するのと比べると多少ありうるが、確率としては低いのですね。

    キャンセル

  • 2018/10/12 12:42

    >認識しているとおっしゃっていませんでしたか?

    認識しているといったのは、モバイルフレンドリーでは認識してる、ということです。
    私が認識しないと言ったのは、あくまで検索ロボットがって話です。
    表現足らずですみません。
    ですが、矛盾はしておりませんよ。
    あくまで検索ロボットは、JSでDOM生成後の文章は認識しません。

    >定型文がユニークという事はあり得ませんよね。

    >数千文字のオリジナルの情報は、ユニークで定型文とは別の内容です。

    では、質問者さんが言う定型文=HTML上の静的文章(DOMで生成前の文章)
    ではないということですね?
    HTMLの静的文章が同じ内容である(ユニークでない)限り重複コンテンツと認識されます。
    何度も申し上げますが、JSでいくらDOM生成してHTML内容を変えても、HTMLの静的内容が同じであれば、重複コンテンツになります。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.23%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる