Mevo
29
確かに、それがこのように動作していると思っていたのですが、Bhanu 氏が「遅延読み込み(lazy loading)」と呼び、無効化を提案していたのはそのことを指しているのだと理解していました。今振り返ると、私が誤解していたのかもしれません。「遅延読み込み」とは、重要な要素を既に表示した上で、非必須要素(例えば、他の部分を既に表示した後に画像を読み込むなど)のみを遅れて読み込むことを指すだけなのでしょうか?(すべてが読み込まれるのを待ってから一度に全てを表示するのではなく)
もし「遅延読み込み」がその意味であれば、説明されている問題との関連性はあまり見いだせません。あるいは、トピックの現在の部分のみを読み込むことを指しているのでしょうか(それは無効化できない可能性があり、Discourse は常にそのように動作しているのかもしれません。あなたが言いたいのはそのことでしょうか?)。
このトピックの読み込み方法が「広告収益」の問題に関係しているとお考えですか?「遅延読み込み」が原因でしょうか?それともおそらく別の要因でしょうか?(上記で既に言及されているようなことなど)
neounix
(Dark Matter)
30
先週、開発環境および Docker 上のステージング環境(擬似本番環境)でハウス広告を設定し、テストを行いました。ポストの間に広告を配置した長いポストであっても、広告の読み込みに問題は見られませんでした。
ただし、近日中に(このテスト専用の新しい VPS スライスで)再度設定を行い、テストリンクを誰でもアクセス・確認できるようにする予定です。おそらく来週早々になる見込みです。
「いいね!」 2
Stephen
(Stephen)
31
遅延読み込みは、アセットがビューポート(画面内)に入ったときに呼び出されます
Discourse は無限スクロールと遅延読み込みの両方を使用しています。
Google は広告の遅延読み込みを許可していません。
「いいね!」 3
Mevo
32
なるほど。つまり、遅延読み込みを無効化すること(可能だと思われますが、言及されていますね)は、実際には問題の解決策になり得ます。これは、Google AdSense と遅延読み込みの組み合わせで実際に発生し得る問題です。素晴らしいですね。
改めて質問に戻ります:非常に大きなトピックがあり、かつ「遅延読み込み」が無効化されている場合、アクセス時にすべてが読み込まれるのでしょうか?(それとも「無限スクロール」によってそれが回避されるのでしょうか?)
「遅延読み込み」を無効化することには、いくつかの重大な欠点があるはずだと推測しますが、私の理解は間違っていますか?(Google 関連の広告問題をすべて解決するという点では、ここで以前に議論された通りです)。あるいは、遅延読み込みを無効化しながら、Discourse フォーラムを長期的に運用することは現実的に可能でしょうか?
「いいね!」 1
Stephen
(Stephen)
33
Discourseの遅延読み込みが広告に影響を与える可能性は低いでしょう。
Discourseはアセットを遅延読み込みします。私の知る限り、広告のJavaScriptの動作を上書きすることはありません。
「いいね!」 1
Stephen
(Stephen)
35
二つの発言の間に線を引かないようにしてください。
Discourse が広告を遅延読み込みしていると示唆したわけではありません。
広告は単なる画像以上のものです。広告ネットワークは、ページ内で広告を表示するために JavaScript を使用します。Discourse はそれらのスクリプトに直接干渉していません。
もし許可されていれば、この場合、遅延読み込みは実際には有用です。
「いいね!」 3
いくつか関連するものが見つかりました:
[非推奨] ember-addons/ember-computed-decorators は非推奨となりました。代わりに discourse-common/utils/decorators を使用してください。_ember_jquery-3a388c5a0562670ed1eea762f12e041d92b4a418316d3f9f83e793d3ba6be5d7.js:74491:12
非推奨のお知らせ:Discourse.NavItem の使用(Discourse 2.4.0 で非推奨、Discourse 2.5.0 で削除予定)の代わりに、NavItem クラスをインポートしてください。2 _application-6e04c264e55fa0b55ca318bfc7b38d56fc17954d61ec053a8153d3d1d235c984.js:241:12
非推奨のお知らせ:ember の代わりに特定の @ember/* インポートを使用してください(Discourse 2.4.0 で非推奨、Discourse 2.5.0 で削除予定)_ember_jquery-3a388c5a0562670ed1eea762f12e041d92b4a418316d3f9f83e793d3ba6be5d7.js:74706:10
非推奨のお知らせ:User クラスをインポートして、User の直接使用(Discourse 2.4.0 で非推奨、Discourse 2.6.0 で削除予定)を避けてください。_application-6e04c264e55fa0b55ca318bfc7b38d56fc17954d61ec053a8153d3d1d235c984.js:241:12
要素の 'src' 属性が空です。ads:1:1
要素の 'src' 属性が空です。ads:1:1
このサイトはスクロール連動の配置効果を使用しているようです。これは非同期パンと併用すると正しく機能しない可能性があります。詳細および関連ツールや機能に関する議論については、https://developer.mozilla.org/docs/Mozilla/Performance/ScrollLinkedEffects をご覧ください。
確かに、Google がページに広告を提供しない場合があります。しかし、他のフォーラムソフトウェアと比較して、そのカバレッジははるかに高いようです。第二に、空白の広告にはナビゲーションに明確なパターンがあるように思われるため、これはページやコンテンツに関連する広告の不足ではないと疑われます。
ありがとうございます。上記のコメントを参照してください。いくつかの点:
- 確認したところ、Discourse フォーラムで空白(おそらく Google の)広告が表示される問題は、他のフォーラムでも起こりうる可能性があります。おそらく他のフォーラムは気にしていないだけで、私は気にしています

- ケース 1:広告が表示されない場合の再現方法:ページ末尾に広告コードがあるトピックを読み進めます。ページ末尾の広告が表示されます。戻って、同じページリンクを再度クリックします。自動的にページ末尾に移動し、画面下部の広告エリアが表示されますが、今回は表示されていません(写真参照)。同じページ、同じコンテンツですが、広告の表示が異なります。
- ケース 2:長いトピックの末尾に直接移動し、上へスクロールします。大半の場合、広告は表示されません。
- ハウス広告についても確認して報告します。
- この問題を解決するために多くのチームメンバーが知恵を絞っている様子を見て非常に嬉しく思います。Discourse は最高です。
「いいね!」 3
neounix
(Dark Matter)
37
この視点が議論に少しでも役立つことを願っています。
参考までに、テストサイト上で約18件の「ハウス広告」を表示するテストページを、今日作成したLorem Ipsumのトピックと一緒にセットアップしました(必要であればさらに追加できます)。
これらの表示広告(一般的なテスト配置で、商業的なものは一切含まれていません)は、当社の広告サーバー(別のサーバー上にあります)から配信され、すべての広告タグはiframeタグ内で配信されています。これにより、広告の読み込み状況を確認できます。
https://testonly.cyberspacephysics.com/t/great-forum-test-house-ads/12
今週後半には、この設定を撤去し、iframeタグから非同期スクリプトタグに変更する予定です。
モバイルとデスクトップの両方でテスト可能です。このテスト環境では、モバイルで300x250、デスクトップで728x90の広告サイズが配信されます。
このテストページをロードした際(モバイルとデスクトップの両方で)、画像の読み込みに必要な通常の時間以外に遅延は見られませんでした(私とこれらの2つのサーバーの間には12時間の時差があります)。ただし、すでに私の端末でキャッシュされているため、遅延が確認できていない可能性もあります。
空白部分は一切ありません。
備考:来週の水曜日にこのテスト環境を撤去する予定です。議論に何か役立つ価値があるか確認するために一時的に作成しました。
「いいね!」 3
Mevo
38
はい、確認しましたが、問題なく動作しているようです。
本当に素晴らしいのは、この実験をGoogle AdSenseに切り替えて、引き続き正しく動作するかどうかを確認することです。
「いいね!」 2
SidV
39
同意します。Discourse のフォーラムメンバーは最高ですね ;)(そしてスタッフチームの lord-gurues も)
最後のスクリーンショットについてですが、そこにはかなり多くの「スクロール」が見られます。
最初の広告はどうでしょうか?問題ありません。
覚えておいてください。Google AdSense は広告の表示/非表示に「3 広告ルール」のようなものを使用しています。
そして、最も良い「収益」は最初の広告から得られるもので、最後のものからは得られません!
とにかく、あなたのサイトで新しいテストを行いました。
あなたは自動広告を実行しています。
51 の返信があるトピックに 9 つの広告が表示されています!これは多いですね!!!
最後(「関連トピック」の上)は表示されていません:
コードを確認しました:
そのコードを削除していただけますか?新しいコードブロックを使用するか、あるいは「auto」形式ではない何かを使用してください。
「いいね!」 3
私の見るところ、あなたのハウス広告設定には空白の広告は一切ありません。
「いいね!」 2
neounix
(Dark Matter)
41
参考情報:
AdSense は数年前に「ページあたりの広告 3 件制限」を撤廃しました。
Google 検索で簡単に確認できます。
「いいね!」 2
制限は解除されたものの、ロジックは残ったままです。これは広告収益を得ていた教育サイトでの私の経験に基づいています。彼らのページには複数のAdSenseコードが配置されていました。一般的に、トラフィックが相当な量あるページでは、ビューポート内に表示されるのは最大3つの広告のみでした。すべての広告がレンダリングされるページもありますが、通常、Googleはページ読み込みに要する時間などを基準に、表示される広告数を制限しているようです。私の仮説が正しいかどうかはわかりませんが、この件について広告マネージャーに問い合わせた際、彼が下した結論がそれでした。
参考:インドでは、人々が可能な限り多くの広告コードをウェブページに配置して過剰に負荷をかけるため、Googleはここで広告をスロットリングしています。
「いいね!」 3
neounix
(Dark Matter)
43
私は確立されたサイトを持っており、大きなページあたり8つの広告ユニットを設置しています。Adsenseを実行する際(めったに実行しませんが)、空白が表示されることはありません。
Adsenseの「ページあたり3広告の制限」というものは、いかなる形でも存在しません。
ただし、Adsenseが広告を提供しない他の理由も存在します。特に、未確立のサイトや、Googleのアルゴリズムによって情報価値が低いと判断されたサイトに対してはそうです。
例えば、私が今すぐ作成したテストページについて考えてみましょう。そのページでAdsenseを実行しようとすると、もちろんGoogleはそのテストサイトに対して広告(1つさえも)を提供しません。
「いいね!」 3
サイトの広告枠が数少ない小さなページを確認したところ、ここでも空白の広告の問題が発生していました。したがって、ページあたりの Google 広告の数が少ないことが原因ではない可能性が高いです。
neounix
(Dark Matter)
45
その通りです。
Google のアルゴリズムは、広告の配信について非常に厳格です(当然ですが)。AdSense クローラーは AdSense を配信しているサイトを巡回し、コンテンツや無数の他の要因を分析して、広告を配信するかどうかを判断します。
参考までに、かつては月間 4,000 万件以上の広告を配信しており、ある時期(あの頃が懐かしいですね、LOL)、広告配信や CORS 関連の問題を解決する際に、マウンテンビューの Google エンジニアと直接やり取りできる機会もありました。
余談ですが、昨日アップした「速くてフレンドリー」なルロム・イプサムテストページ(自社広告用)に、さらに多くのレスを追加しました。現在、そのテストページには 20 箇所以上のテスト配置(23 箇所だったと思います)があります。これで、iframe タグで別の広告サーバーから配信されるこれらの「自社広告」がどのように読み込まれるかを、皆さんに少しでもお役に立てれば幸いです。
https://testonly.cyberspacephysics.com/t/great-forum-test-house-ads/12
「いいね!」 3
空白の広告ではありません。テストサイトではすべて表示されています。
「いいね!」 2
neounix
(Dark Matter)
47
はい、トピックを200件の返信に伸ばし、各投稿の間にこのような広告配置を挿入すれば、Discourseが「正しい魔法」を発揮し、タグが表示される直前にそれらのiframeの内容を読み込むと確信しています。
165件ものlorem ipsum返信を投稿しなかったことをお許しください(
)。もしそのlorem ipsumテストページにさらに広告配置を追加したいのであれば、喜んで10件ほど追加し、合計で約35の広告配置にします(sagan ipsumや面白い海賊風のlorem ipsumも追加します)
。その後、週半ばにそのページを削除します。
注意: もしハウス表示バナーをAdSenseタグに変更した場合、99.9999%の確率でAdSense広告は表示されません(当然ですが)。AdSenseは、このようなテストページには(正しく)広告を提供しないからです。このページは、一時的に作成され、lorem ipsumテキストでいっぱいのものです:)。しかし、もし私がそのような「ばかげた」ことをすれば、GoogleはAdSenseアカウントに対して不快に思うでしょう:) :)。そのため、lorem ipsumテストサイトにAdSenseタグを設置しなかったことをお許しください。
注意: AdSenseクローラーがJavaScriptや無限スクロールページをどのように処理するかについては、あえて議論していません。興味がある場合は、「AdSenseクローラーが無限スクロールページにどのように反応(処理)するか」という興味深いトピックでGoogle検索することをお勧めします。
上記の議論をご覧ください。AdSenseは、このような「作りかけ」のlorem ipsumテストページでは「表示されない」理由について説明しています。
「いいね!」 4
アドセンスの設定を確認した限り、自動広告の設定はサイト単位でした。
そのため、現在そのサイトでは自動広告を無効にしました。ありがとうございました。
「いいね!」 2