tag:crieit.net,2005:https://crieit.net/tags/SEO/feed 「SEO」の記事 - Crieit Crieitでタグ「SEO」に投稿された最近の記事 2021-04-13T20:22:33+09:00 https://crieit.net/tags/SEO/feed tag:crieit.net,2005:PublicArticle/16842 2021-04-13T20:21:49+09:00 2021-04-13T20:22:33+09:00 https://crieit.net/posts/SEO 【SEO対策】アクセス数を倍増させる!良質な被リンクの増やす方法 <p><a href="https://crieit.now.sh/upload_images/831047c2616a05fc610052d2e2a6def660757e62aba71.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/831047c2616a05fc610052d2e2a6def660757e62aba71.png?mw=700" alt="image" /></a><br /> 元記事:<a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/blog/how-to-write-articles-that-can-attract-the-most-backlinks/">https://www.octoparse.jp/blog/how-to-write-articles-that-can-attract-the-most-backlinks/</a></p> <p><a target="_blank" rel="nofollow noopener" href="https://digital-marketing.jp/seo/what-is-link-building/">リンクビルディング</a>とは、他のWebサイトから自分のサイトに対して被リンクを獲得することです。被リンクはSEO対策では決定的な部分です。しかし、2019年5月16日に「<a target="_blank" rel="nofollow noopener" href="https://www.sakurasaku-labo.jp/blogs/genenral_guidelines">Page Quality Raters Guidelines</a> (Webページ品質評価ガイドライン)」が登場したことで、被リンクの効果的な作ることが難しくなっています。<br /> 被リンクとは、「良質な被リンク」(ナチュラルリンク)と「悪質な被リンク」(スパムリンク)があります。良質な被リンクは自然に獲得した被リンクのことです。悪質な被リンクは、SEO効果がないどころかGoogleなどの検索エンジンから罰の対象になるというケースもあります。<br /> それだけでなく、被リンクは、単純に「リンク」ではなく、Webページの品質基準を満たし、ユーザーがWebサイトを閲覧する際の体験を向上させる対応策も実施する必要となります。<br /> ここでは、初心者に向けて<strong>良質な被リンクを獲得して、アクセス数とSEO効果を倍増させる</strong>いくつかの方法とコツを紹介します。</p> <h1 id="1. 独自のデータ分析を行うこと"><a href="#1.+%E7%8B%AC%E8%87%AA%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%82%92%E8%A1%8C%E3%81%86%E3%81%93%E3%81%A8">1. 独自のデータ分析を行うこと</a></h1> <p><strong>根拠のないデータでは、読者からの信頼を得ることは非常に難しいです。</strong>人々は、データに裏付けられた証拠のあるコンテンツに賛成すれば、共有する傾向もあります。例として、この記事は読者に役立つデータや深い分析レポートを提供している記事であれば、人々は記事のリンクをTwitterやFacebookなどのSNSを通じてコンテンツを拡散して、より多くの人に興味をもってもらいやすくなります。</p> <h1 id="2. 「情報源」になること"><a href="#2.+%E3%80%8C%E6%83%85%E5%A0%B1%E6%BA%90%E3%80%8D%E3%81%AB%E3%81%AA%E3%82%8B%E3%81%93%E3%81%A8">2. 「情報源」になること</a></h1> <p><strong>自分で調べて、自分のアイデアを裏付けるのに必要なデータを集めてください。</strong>その分、作業量が増えることになるかもしれません。しかし、データが明確に示され、議論が人々にインスピレーションを与える限り、長い目で見れば、その価値は多く被リンクを獲得することができます。他の人が興味を持ったり、自分の創造に良いものを書きます。そして、<strong>他人のニーズに応えることで、被リンクを獲得しているのです。</strong></p> <p>「<a target="_blank" rel="nofollow noopener" href="https://towardsdatascience.com/how-data-analysis-helps-unveil-the-truth-of-coronavirus-8430de107ba4">How data analysis helps unveil the truth of coronavirus</a>(コロナウイルスの真実をデータ解析で解明する方法)」という記事が良い例です。この記事は、数ヶ月のうちに数百の被リンクを獲得しました。それ自体が話題を呼ぶ効果があるのはもちろんですが、大切なのは、<strong>自分でデータを取集・分析して</strong>、その状況をもっと知りたい人たちに向けて発表しました。</p> <p><a href="https://crieit.now.sh/upload_images/42df259810a60e3312953788ea50517c60757e70378d8.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/42df259810a60e3312953788ea50517c60757e70378d8.png?mw=700" alt="image" /></a><br /> (Tableauデータ可視化結果)<br /> 詳細:<a target="_blank" rel="nofollow noopener" href="https://public.tableau.com/profile/ashley.han8603#!/vizhome/CoronavirusDataTrend_Octoparse/ProvinceDash?publish=yes">https://public.tableau.com/profile/ashley.han8603#!/vizhome/CoronavirusDataTrend_Octoparse/ProvinceDash?publish=yes</a></p> <p>誰でも既存のレポートや分析結果に満足することはありません。最新のデータを取集して既存のレポートを更新したり、既存のデータを新しい視点で提示したりします。もしノンコーダーなら、大量のWebデータを一度に入手するために、プログラミング不要(ノーコード)の<a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/blog/the-10-best-web-scraping-tools/">Webスクレイピングツール</a>を使うことをお勧めします。<strong>Webスクレイピングのテクニックを身につけてください。これが研究のデータ分析に対して役に立ちます。</strong></p> <p><a href="https://crieit.now.sh/upload_images/9211be13dbf84c6b98b0da0ecbffb78460757e9fb20c7.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/9211be13dbf84c6b98b0da0ecbffb78460757e9fb20c7.png?mw=700" alt="image" /></a><br /> <a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/?utm_source=8919&utm_medium=pic&utm_campaign=crieit">無料トライアルはこちら!</a></p> <p>データを取集する時、新たな悩みが出てくるかもしれません。高度なデータ分析に長けた経験豊富な著者として、複雑な研究課題に取り組むことを求められているだけではなく、良い視点を選んで、根拠をもって詳しく説明し、情報源になるために頑張りましょう。</p> <p>それだけではありません。自分のレポートの情報源になるだけでなく、先行する研究者の分析結果を参考にすることもできます。権威あるサイトに被リンクすることで、自分のサイトの検索順位に良い影響を与えます。要するに、良い文章を書きましょう。</p> <h1 id="3. 情報を分かりやすく視覚的になること"><a href="#3.+%E6%83%85%E5%A0%B1%E3%82%92%E5%88%86%E3%81%8B%E3%82%8A%E3%82%84%E3%81%99%E3%81%8F%E8%A6%96%E8%A6%9A%E7%9A%84%E3%81%AB%E3%81%AA%E3%82%8B%E3%81%93%E3%81%A8">3. 情報を分かりやすく視覚的になること</a></h1> <p>インフォグラフィック(視覚情報化)であることは、読みやすくなります。読者に記事を読んでもらえないのであれば、どんなに価値のある洞察に満ちたアイデアであっても、執筆から編集までの一連の作業の意味がありません。</p> <p>データだらけは退屈です。<strong>読み方が理解しやすいように、データを視覚化してみましょう。</strong>人間は視覚に強く依存する生き物です。視覚的に表現するというグラフィック情報は、テキストよりも人々に伝えやすくなります。</p> <p>同じグループの人たちに向けて、同じトピックについて書いているコンテンツ著者がたくさんいますので、記事の一部の内容を人に興味を持ってくれたら、より多くの閲覧数を獲得することができます。<strong>この記事が他の著者の参考になれば、より多くの被リンクを獲得できます。</strong></p> <p>したがって、画像グラフにロゴやキーワードを入れるべきなのです。そして、被リンクことはあっても、ロゴが消された状態で、宣伝効果になるかもしれません。</p> <p>ビジュアルデザイナーの方は、データ視覚化になるため、<a target="_blank" rel="nofollow noopener" href="https://www.visme.co/">Visme</a>、或いは<a target="_blank" rel="nofollow noopener" href="https://www.adobe.com/creativecloud/design.html">Adobeのツール</a>をぜひ試してみてください。</p> <h1 id="4. 上手な見出しの書くこと"><a href="#4.+%E4%B8%8A%E6%89%8B%E3%81%AA%E8%A6%8B%E5%87%BA%E3%81%97%E3%81%AE%E6%9B%B8%E3%81%8F%E3%81%93%E3%81%A8">4. 上手な見出しの書くこと</a></h1> <p>多くの人は見出しを見て、この文章を読むかを決めています。<br /> 例として、「コンテンツマーケティング事例から見る!成功の秘訣」という見出しは、人はクリックしてしまう。原因としては、「成功」、「秘訣」という言葉は、<strong>人々の想像力を刺激し、すぐにドーパミンが作用し始めます。</strong>もしコンテンツマーケティングを始めたばかりであれば、この見出しは訴求ポイントによってユーザーは行動を起こします。</p> <p>見出しはとてもシンプルで些細なことのように見えますが、多くの人は見落としてしまいます。普段は、ただクリックするだけで、その後にあるメカニズムを考えないような時もあります。見出しの書き方についてはもっと学ぶ必要があると思っています。</p> <p>新しい記事に対して、魔法のような見出しを作るには、<strong>Googleで検索して、上位に表示されている見出しを分析してから書きます。</strong>重要度の高いサイトについては、メインコンテンツを書き終えた後、関連するキーワードをリストアップし、上位にランキングされている記事の見出しをWeb上からかき集めて、それを分析します。</p> <p>良い検索順位を得ると、被リンクを増やすことができ、SEO効果も倍増させます。</p> <h1 id="5. まとめ"><a href="#5.+%E3%81%BE%E3%81%A8%E3%82%81">5. まとめ</a></h1> <p>簡単に言えば、方法は以下になります。<br /> ・価値あるデータの<strong>発信者</strong>となる<br /> ・価値あるデータの<strong>情報源</strong>となる<br /> ・読者の<strong>興味を引く</strong>ような見出しをつける<br /> もっと良いコンテンツを作れるように、一緒に頑張りましょう。</p> <h2 id="関連記事"><a href="#%E9%96%A2%E9%80%A3%E8%A8%98%E4%BA%8B">関連記事</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/blog/top-30-data-visualization-tools/">2021年データ分析・データ可視化ツールおすすめの31選!</a><br /> <a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/blog/top-4-big-data-practical-uses-for-growing-your-startup/">スタートアップの成長におけるビッグデータの活用</a><br /> <a target="_blank" rel="nofollow noopener" href="https://www.octoparse.jp/blog/how-web-scraping-and-data-analysis-can-help-to-grow-your-business/">Webデータの収集と分析は、ビジネス成長にどのように役立ちますか?</a></p> Octoparse Japan tag:crieit.net,2005:PublicArticle/15352 2019-08-26T11:29:44+09:00 2019-08-31T10:27:49+09:00 https://crieit.net/posts/Google-SEO プログラミング系ブログがGoogle砲を本気で狙った結果と方法【SEO対策】 <p>*この記事は、私のブログでGoogle砲を狙った結果と方法についての記事です。記事自体の内容はプログラミングや個人開発ではなくブログですが、個人開発の方も自分のブログを運営されている方が多いのでクロス投稿しました。</p> <p>【概要】<br /> プログラミング系ブログがGoogle砲を獲得するために取った戦略とその結果についての記事です。個人的な観点からどうすればGoogle砲が狙えるかの戦略も書いています。</p> <h2 id="Google砲とは?"><a href="#Google%E7%A0%B2%E3%81%A8%E3%81%AF%EF%BC%9F">Google砲とは?</a></h2> <p>Google砲とは、Google Chromeのアプリのオススメ記事の通称です。ブロガーが言っています。スマホで表示されるニュース記事一覧のようなものです。</p> <p>Google砲で載ると普段の何倍ものアクセスを獲得できるので、アクセス数を獲得したい人には喉から手が出るほど欲しいものです。</p> <h2 id="Google砲を狙う方法"><a href="#Google%E7%A0%B2%E3%82%92%E7%8B%99%E3%81%86%E6%96%B9%E6%B3%95">Google砲を狙う方法</a></h2> <p>Google砲の基準は公開されていません。ですからまずはどうやってGoogleがGoogle砲に載せる記事をチョイスしているか考える必要があります。</p> <p>Google Chromeのオススメ記事を見ると、記事の書かれた日付は新しいものばかりです。そして、多くは企業サイトの記事になっています。早い記事では公開されて数時間で載っています。</p> <p>ここから推測される仮説は以下のようなものです。</p> <p>仮説:Googleは記事公開の浅い鮮度があるアクセスが急速に伸びている記事(情報)を載せている</p> <p>この仮説はGoogle Chromeのアプリ記事がヤフーニュースのような速報性と個人用にカスタマイズされる形であることからもしっくりきます。</p> <p>そして、この仮説に基づけばGoogle砲の対象記事は</p> <ol> <li>Google Search Consoleに登録されて間も無く</li> <li>ある一定のアクセス数を超えるサイト記事</li> </ol> <p>となります。</p> <p>今回は、この1と2の条件を満たす記事を書いてGoogle砲に載ることができるかを実験しました。</p> <h2 id="Google砲を狙う手順と経過"><a href="#Google%E7%A0%B2%E3%82%92%E7%8B%99%E3%81%86%E6%89%8B%E9%A0%86%E3%81%A8%E7%B5%8C%E9%81%8E">Google砲を狙う手順と経過</a></h2> <p>ここからは私が行ったGoogle砲を狙うために行った手順と経過です。</p> <h3 id="アイキャッチ画像を設定"><a href="#%E3%82%A2%E3%82%A4%E3%82%AD%E3%83%A3%E3%83%83%E3%83%81%E7%94%BB%E5%83%8F%E3%82%92%E8%A8%AD%E5%AE%9A">アイキャッチ画像を設定</a></h3> <p>Google砲に掲載される記事は、観察するとどれもアイキャッチ画像があります。</p> <p>ですので、アイキャッチ画像がないサイトは弾かれている可能性が高いです。必ずアイキャッチ画像を設定します。</p> <h3 id="Google Search Consoleに登録(インデックス)する"><a href="#Google+Search+Console%E3%81%AB%E7%99%BB%E9%8C%B2%EF%BC%88%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9%EF%BC%89%E3%81%99%E3%82%8B">Google Search Consoleに登録(インデックス)する</a></h3> <p>もし仮説通りなら、サイト記事のURLをGoogle Search Consoleに登録(インデックス)しないとバズったとしてもGoogleが認識せずにGoogle砲を逃します。</p> <p>ですから、Twitterなどで宣伝する前に必ずGoogle Search Consoleに登録します。</p> <h3 id="記事をTwitterで拡散"><a href="#%E8%A8%98%E4%BA%8B%E3%82%92Twitter%E3%81%A7%E6%8B%A1%E6%95%A3">記事をTwitterで拡散</a></h3> <p>Google Search Consoleに登録したら、記事をTwitterに投稿します。短時間での集中的なアクセスを個人レベルのブログが獲得するにはSNSしかありません。</p> <p>あとはフォロワーの皆様に記事が気に入ってもらえることをひたすら祈ります。</p> <p>今回はこのCrieitからツイートさせていただきました。</p> <blockquote class="twitter-tweet"><p lang="ja" dir="ltr">Crieitにクロス投稿させてもらいました!<a target="_blank" rel="nofollow noopener" href="https://twitter.com/hashtag/crieit?src=hash&ref_src=twsrc%5Etfw">#crieit</a> <a target="_blank" rel="nofollow noopener" href="https://twitter.com/hashtag/vue?src=hash&ref_src=twsrc%5Etfw">#vue</a> <a target="_blank" rel="nofollow noopener" href="https://twitter.com/hashtag/spa?src=hash&ref_src=twsrc%5Etfw">#spa</a> <a target="_blank" rel="nofollow noopener" href="https://twitter.com/hashtag/SEO?src=hash&ref_src=twsrc%5Etfw">#SEO</a> <a target="_blank" rel="nofollow noopener" href="https://t.co/vAJFnJuWHj">https://t.co/vAJFnJuWHj</a></p>— かとのぼ (@katonobo1) <a target="_blank" rel="nofollow noopener" href="https://twitter.com/katonobo1/status/1164133184662978560?ref_src=twsrc%5Etfw">August 21, 2019</a></blockquote> <h3 id="経過:はてなブックマークのテクノロジー新着に載る"><a href="#%E7%B5%8C%E9%81%8E%EF%BC%9A%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%96%E3%83%83%E3%82%AF%E3%83%9E%E3%83%BC%E3%82%AF%E3%81%AE%E3%83%86%E3%82%AF%E3%83%8E%E3%83%AD%E3%82%B8%E3%83%BC%E6%96%B0%E7%9D%80%E3%81%AB%E8%BC%89%E3%82%8B">経過:はてなブックマークのテクノロジー新着に載る</a></h3> <p>Twitterでリツイートやはてなブックマークに登録してくれた方がいたおかげで、はてなブックマークの新着にエントリーすることができました。</p> <blockquote class="twitter-tweet"><p lang="ja" dir="ltr">お!久しぶりのはてなブックマークのホットエントリに載ったぞ。どうやら結構ニーズがあったようだ。Vue.js(SPA)でhead要素のtitleとdescriptionはページ別に設定しよう【SEO対策】<a target="_blank" rel="nofollow noopener" href="https://t.co/74mp78bSiQ">https://t.co/74mp78bSiQ</a> <a target="_blank" rel="nofollow noopener" href="https://t.co/wpbLwqcBKl">pic.twitter.com/wpbLwqcBKl</a></p>— かとのぼ (@katonobo1) <a target="_blank" rel="nofollow noopener" href="https://twitter.com/katonobo1/status/1164329304978808832?ref_src=twsrc%5Etfw">August 22, 2019</a></blockquote> <p>はてなブックマークのホットエントリーに載ったことで、一気にアクセス数が伸びました。</p> <p>その後も順調にアクセスとブックマークを伸ばします。</p> <p>そこからはてなブックマークのテクノロジー人気と、総合の新着へ登録されました。</p> <h3 id="Google砲にエントリーされる"><a href="#Google%E7%A0%B2%E3%81%AB%E3%82%A8%E3%83%B3%E3%83%88%E3%83%AA%E3%83%BC%E3%81%95%E3%82%8C%E3%82%8B">Google砲にエントリーされる</a></h3> <p>そしてついに、Google砲にエントリーされました。<br /> <a href="https://crieit.now.sh/upload_images/766f3978507acd466393fd71104ded505d624e89e90fd.jpg" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/766f3978507acd466393fd71104ded505d624e89e90fd.jpg?mw=700" alt="googlehou.jpg" /></a></p> <p>やりました!</p> <p>もちろん、仮説が正しいとは言い切れませんが、狙って載ったことは大きいです。</p> <h2 id="実際どのくらいのアクセスで載るのかの推測"><a href="#%E5%AE%9F%E9%9A%9B%E3%81%A9%E3%81%AE%E3%81%8F%E3%82%89%E3%81%84%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E8%BC%89%E3%82%8B%E3%81%AE%E3%81%8B%E3%81%AE%E6%8E%A8%E6%B8%AC">実際どのくらいのアクセスで載るのかの推測</a></h2> <p>さて実際、Google砲に載るためにはどのくらいのアクセスが必要なのか?ということです。</p> <p>実は私はこの記事以外にも過去2つGoogle砲に載った経験があります。<br /> (ちなみに、最近も同じ方法でグーグル砲に載りました。<br /> <a target="_blank" rel="nofollow noopener" href="https://www.katonobo.com/entry/kojin-programming-start">個人開発でアプリやWebサービスをリリースするために必要な知識と技術</a>)</p> <p>その時のデータも含めて観察した結果ですが</p> <p><strong>グーグル砲は、Googleアナリティクスで短期間に該当記事に対してユーザー数500を超えた辺りから登録されています。</strong></p> <p>これは私の技術系ブログのジャンルがこのラインなのか、それとも一般的にこのラインなのかはわかりませんが、私と似たジャンルのブログの方は一つの目安にはなるはずです。</p> <p>そして、このユーザー数500というのは、テクノロジーのカテゴリーでは、はてなブックマークの総合人気にランクインすると達成される場合が多い数字となります。</p> <p><strong>つまり、グーグル砲を狙う場合は、まずは短期間ではてなブックマークの総合人気に載ることを目指すと良いと言えます。</strong></p> <p>以上です。ぜひ参考にしてみてください。</p> <p>宣伝<br /> ブログ書いています!<a target="_blank" rel="nofollow noopener" href="https://www.katonobo.com/">ブログ</a><br /> Vue初心者向けのサンプルコード集作っています <a target="_blank" rel="nofollow noopener" href="https://code.ameneko.com/">サイト</a></p> katonobo tag:crieit.net,2005:PublicArticle/15324 2019-08-15T13:00:18+09:00 2019-08-15T13:02:33+09:00 https://crieit.net/posts/Nuxt-SPA-Firebase-SEO-OGP-head Nuxt(SPA)+FirebaseでSEO!OGP!: 特定のパスだけheadだけ返すやつ <p>最近つくった<a target="_blank" rel="nofollow noopener" href="https://tsundoku.site">積読ハウマッチ</a>をNuxtのSPAで作成しているけど、<br /> シェアされたときにいい感じに画像とかを表示してほしいのでやってみた。</p> <p>N番煎じ感がつよいけれど、自分の整理用〜</p> <h3 id="全体の流れ"><a href="#%E5%85%A8%E4%BD%93%E3%81%AE%E6%B5%81%E3%82%8C">全体の流れ</a></h3> <ol> <li>該当のURLにアクセスがあったらリライトでFunctionを呼び出す(Hostingのrewrite)</li> <li>FunctionでヘッダだけのHTMLを生成。ボディには仮のパスへリダイレクト(Function)</li> <li>HTMLのリダイレクト先をさらにNuxt側で正しいパスリダイレクト(nuxt.config.ts)</li> </ol> <p>若干複雑...</p> <p>図的にはこんな感じ</p> <p><a href="https://crieit.now.sh/upload_images/aaf2c8966686283fb82e6e2b3acfa8685d54d85d642f9.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/aaf2c8966686283fb82e6e2b3acfa8685d54d85d642f9.png?mw=700" alt="スクリーンショット 2019-08-07 12.08.48.png" /></a></p> <h4 id="Function側のコード(index.js)"><a href="#Function%E5%81%B4%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%28index.js%29">Function側のコード(index.js)</a></h4> <p>まずは、Cloud Function for Firebaseから。<br /> リスエストのパスに応じてDBの値を取得して、OPG用のHTMLを生成。</p> <pre><code class="typescript">const functions = require("firebase-functions"); const admin = require("firebase-admin"); admin.initializeApp(); const db = admin.firestore(); // ******************************************************** // * Generate OPG HEAD // ******************************************************** /** * OGP用のヘッダだけのHTMLを返す関数 * @param {String} TITLE タイトル * @param {String} DESCRIPTION ディスクリプション * @param {String} OGP_URL OGP画像のURL * @param {String} PAGE_URL 該当ページのURL * @param {String} REDIRECT_URL リダイレクト先のURL */ const createHtml = (TITLE, DESCRIPTION, OGP_URL, PAGE_URL, REDIRECT_URL) => { return `<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <title>${TITLE}</title> <meta property="og:title" content="${TITLE}"> <meta property="og:image" content="${OGP_URL}"> <meta property="og:description" content="${DESCRIPTION}"> <meta property="og:url" content="${PAGE_URL}"> <meta property="og:type" content="article"> <meta property="og:site_name" content="${SITE_NAME}"> <meta name="twitter:site" content="${BASE_URL}"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:title" content="${TITLE}"> <meta name="twitter:image" content="${OGP_URL}"> <meta name="twitter:description" content="${DESCRIPTION}"> </head> <body> <script type="text/javascript">window.location="${REDIRECT_URL}";</script> </body> </html> `; }; /** * '/user/<userId>'に対応するHTMLを返すFunction */ const BASE_URL = '<サイトのBASE_URL>' exports.users = functions.https.onRequest(async (req, res) => { try { // PATHからパスパラメータを取得 const [, , userId] = req.path.split("/"); if (!userId) throw new Error(`userId is empty`); // パスパラメータを使って、DBからデータを取得 const docRef = db.collection("users").doc(userId); const snap = await docRef.get(); if (!snap.exists) throw new Error(`Not Found: userId=${userId}`); // DBのデータからHTML作成に必要なデータを用意 const user = snap.data(); const title = `${user.name}さんのページ`; const desc = `${user.name}さんのページの詳細です`; const ogpURL = "<該当ユーザのOGP画像のURL>"; const pageURL = `${BASE_URL}/user/${userId}`; const redirectURL = `/_user/${userId}`; // ヘッダだけのHTMLを生成 const html = createHtml(title, desc, ogpURL, pageURL, redirectURL); // キャッシュを設定 res.set("Cache-Control", "public, max-age=600, s-maxage=600"); // 生成したHTMLを返却 res.status(200).end(html); } catch (err) { // エラーが発生したら'/'にリダイレクト console.warn(err); res.redirect("/"); } }); </code></pre> <h4 id="firebase.jsonの設定"><a href="#firebase.json%E3%81%AE%E8%A8%AD%E5%AE%9A">firebase.jsonの設定</a></h4> <p>firebase.jsonの設定。該当のパスにアクセスされたら、<br /> リライトでFunctionを呼び出すように設定を追加。</p> <pre><code class="json">{ "functions": { "source": "functions" }, "hosting": { "rewrites": [ // '/user/<userId>'へのアクセスがあったらFunctionsのusersを呼び出す { "source": "/user/*", "function": "users" }, { "source": "**", "destination": "/404.html" } ], }, } </code></pre> <h4 id="nuxt.config.tsの設定"><a href="#nuxt.config.ts%E3%81%AE%E8%A8%AD%E5%AE%9A">nuxt.config.tsの設定</a></h4> <p>nuxt.config.jsのrouterの設定。HTML内でリダイレクトされる先を、<br /> さらにrouter側でリダイレクト。もとに戻す感じに。</p> <pre><code class="typescript">const config: NuxtConfiguration = { /* ** Router configuration */ router: { extendRoutes(routes: NuxtRouteConfig[], resolve) { routes.push({ path: "/_user/:uid", redirect: "/user/:uid", chunkNames: {} }); } }, } </code></pre> <h4 id="注意!! 動的パラメタのあるパスだけ使えます"><a href="#%E6%B3%A8%E6%84%8F%21%21+%E5%8B%95%E7%9A%84%E3%83%91%E3%83%A9%E3%83%A1%E3%82%BF%E3%81%AE%E3%81%82%E3%82%8B%E3%83%91%E3%82%B9%E3%81%A0%E3%81%91%E4%BD%BF%E3%81%88%E3%81%BE%E3%81%99">注意!! 動的パラメタのあるパスだけ使えます</a></h4> <p>ちなみに、該当のパスにHostingのHTMLがあるとダメ...<br /> <a target="_blank" rel="nofollow noopener" href="https://firebase.google.com/docs/hosting/url-redirects-rewrites?hl=ja#section-priorities">Hostingの優先度</a>がこんな感じ...</p> <ol> <li>予約済み名前空間(/__*)</li> <li>リダイレクトの構成</li> <li>正確に一致する静的コンテンツ</li> <li>リライトの構成</li> </ol> <p>リライトよりも静的コンテンツのほうが優先度が高いので、<br /> リライトでFunctionを呼び出されるよりも先にHTMLが返されてしまう...</p> <p><code>nuxt generate</code>するとHTMLが配置されてしまうので、<br /> 動的パラメタじゃないとダメかも...</p> <p>以上!!</p> <h2 id="【PR】積読ハウマッチをリリースしました!"><a href="#%E3%80%90PR%E3%80%91%E7%A9%8D%E8%AA%AD%E3%83%8F%E3%82%A6%E3%83%9E%E3%83%83%E3%83%81%E3%82%92%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%EF%BC%81">【PR】積読ハウマッチをリリースしました!</a></h2> <p>積んでいる本の総額がわかる読書管理サービス<br /> 『<a target="_blank" rel="nofollow noopener" href="https://tsundoku.site">積読ハウマッチ</a>』をリリースしました♪</p> <p><a href="https://crieit.now.sh/upload_images/f86129c7aa3dee1104223eaa7d236fb55d54d936f0f8e.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/f86129c7aa3dee1104223eaa7d236fb55d54d936f0f8e.png?mw=700" width="25%"/></a></p> <p>積読が多い方も、少ない方も、ない方も、<br /> ぜひお試しください(´ω`)</p> <h1 id="参考にしたサイト様"><a href="#%E5%8F%82%E8%80%83%E3%81%AB%E3%81%97%E3%81%9F%E3%82%B5%E3%82%A4%E3%83%88%E6%A7%98">参考にしたサイト様</a></h1> <ul> <li><a target="_blank" rel="nofollow noopener" href="https://qiita.com/yuneco/items/5e526464939082862f5d">SNS映えするWebアプリを...!FirebaseとVue.jsでSPAのOGP画像の動的生成をやってみたら案外楽だった - Qiita</a></li> </ul> きらぷか@積読ハウマッチ/SSSAPIなど tag:crieit.net,2005:PublicArticle/14483 2018-07-18T06:35:41+09:00 2020-09-19T10:56:47+09:00 https://crieit.net/posts/18b8ea304b981602adfb225487aa7b4f エンジニアが記事を書くためのブログやサービスまとめ <p>エンジニアがアウトプット等の目的のためにIT系、テック系のブログを作ったり、サービス上で記事を書きたい、という場合があると思います。色々と選択肢があると思いますが、どういったものが良いのでしょうか? 僕自身実際に色々と使ったことがあるので、考察してみました。2020/9時点での考察となります。</p> <p>特に下記あたりを考察しています。</p> <ul> <li>使い勝手</li> <li>集客能力</li> </ul> <h2 id="はてなブログ"><a href="#%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%96%E3%83%AD%E3%82%B0">はてなブログ</a></h2> <h3 id="使い勝手は?"><a href="#%E4%BD%BF%E3%81%84%E5%8B%9D%E6%89%8B%E3%81%AF%EF%BC%9F">使い勝手は?</a></h3> <p>はてなブログは恐らくブログサービスの中ではエンジニアに一番人気のものになると思います。僕も以前使っていました。</p> <p>markdownで記事が書け、プログラム等のコードもちゃんと書けるので、技術系の記事を書くのには非常に適していると思います。デザインもカスタマイズ可能で非常に使いやすかったです。</p> <p>有料ですが独自ドメインも使えますし、現在はSSLにも対応しています。</p> <h3 id="集客能力は?"><a href="#%E9%9B%86%E5%AE%A2%E8%83%BD%E5%8A%9B%E3%81%AF%EF%BC%9F">集客能力は?</a></h3> <p>特別なにか大きな集客能力は無いと思います。基本的には頑張って自分で集客が必要となります。</p> <p>はてなブログは「スター」があり簡単に「いいね」みたいなことができますが、基本的には何の意味もありません。はてなブックマークボタンも別にはてなブログだけの機能ではなく他でもどこでも使えますし、特別はてなブログだから何か優れている、というところはないように思います。</p> <p>ただ、記事がヒットすると提携しているSmartNewsにも掲載されたりすることがあるので、自分でうまく集客できる場合には相乗効果で大きなアクセスが見込める場合などがあります。</p> <p>何にしろはてなブログは色々なところから注目されているブログではあると思いますので、独自でブログを作るよりは集客能力は大きいと思います。</p> <h3 id="SEO的に良いらしい"><a href="#SEO%E7%9A%84%E3%81%AB%E8%89%AF%E3%81%84%E3%82%89%E3%81%97%E3%81%84">SEO的に良いらしい</a></h3> <p>SEOで有名な辻正浩さんが下記のような記事を書いていました。</p> <p><a target="_blank" rel="nofollow noopener" href="https://webweb.hatenablog.com/blog/wordpress-to-hatenablog">SEOに最適なブログとは?WordPressからはてなブログにした理由 - web > SEO</a></p> <p>ざっとまとめると下記のようです。</p> <ul> <li>特に他と比べて異常なまでに優れているということはない(そもそもそういうSEOは今は無いでしょう)</li> <li>ただしちゃんと最新のSEOの対策に追従しているため、安心できておすすめ</li> </ul> <p>サービスとして運営しているブログだからこそのメリットだと思います。WordPressのような自分で設置する形のブログだとこれはできませんし、上記記事でもSEOのメンテナンスのために時間を費やすことが難しくはてなブログに移行したということが書かれていました。</p> <p>エンジニア向けの技術系の記事は実際にプログラムを動かしたりして正しいコードか確認したり、色々情報を調べつつ書かなければならないので記事を書くのにも時間がかかると思います。ですのでやはりこういったメンテナンスコストを無視できるというのは大きなメリットであると感じます。</p> <p>色々総合すると、迷ったらとりあえずはてなブログを選んでおけば良いかな、という気がします。</p> <h3 id="引っ越しは?"><a href="#%E5%BC%95%E3%81%A3%E8%B6%8A%E3%81%97%E3%81%AF%EF%BC%9F">引っ越しは?</a></h3> <p>独自ドメインで運用している場合は引越し先のURLを合わせるか302リダイレクトするかできっちり引っ越しできます。はてなブログのドメインで運用している場合はやめたくなっても引っ越しはできません。一生骨を埋める覚悟で使うか、あきらめて記事を残して引っ越す必要があります。</p> <h2 id="Qiita"><a href="#Qiita">Qiita</a></h2> <p>Qiitaはプログラミングに関する技術系の記事を書くためのエンジニア向けのサービスです。ブログではありません。</p> <p>自分が書いた記事をQiitaとして発信する、ということになりますので、全て寄稿する形になります。ただしその分導線がしっかりしているため、自分に集客能力がなくてもそこそこ記事を読んでもらうことができます。</p> <p>また、ちゃんと記事を書ければわりと「いいね」も付けてもらえ、「いいね」がつくとさらに導線が増えアクセスが望めます。</p> <p>ブログではないので引っ越しなどもできませんが、特にSEOも考えたくないし、自分の集客力に関係なく記事を誰かの役に立ててもらえたり、気軽にどんどん書いて自分の認知度を広めたりしたい、という場合にはおすすめです。</p> <h2 id="note"><a href="#note">note</a></h2> <p>noteは特にエンジニア向けではなくて決まったジャンルもなく、何でも記事を書けるサービスです。有料記事が書けるため、記事を売りたいのであればここ一択だと思います。集客も考えるのであればどんどん自分の記事を増やしておいた方が良いと思いますので、無料記事も普段からnoteで書いておいたりした方が良さそうです。もちろん自分の集客力があるなら有料記事だけnoteで他は他で、でも良いと思います。</p> <p>エディタは特殊ですが、わりと深く考えずにどんどん文章を書けるので、あう人には非常に書きやすいと思います。プログラミングのコードも一応書くことができるようになっています。</p> <p>あとは有料ですが独自ドメインのプランもあるようです。</p> <p>あとはバズったりすると公式のおすすめ記事などで紹介されたりするので、さらにアクセスを増長することができたりします。</p> <h2 id="Zenn"><a href="#Zenn">Zenn</a></h2> <p>こちらは2020/9にリリースされた個人開発サービスですが、いくつもの有名なサービスを作った方が開発された、プログラマーのための情報共有サービスです。Qiitaとnoteの良いところを組み合わせたようなサービスで、記事、本が投稿でき、本は有料販売できます。記事についても販売はできませんが、サポートを受け取ることが可能です。</p> <p>Markdownで記事を書きますが、CLIやGitHubと連携することで好きな環境で執筆することもできるようになっており、まさにプログラマー向けという感じがします。</p> <h2 id="WordPress"><a href="#WordPress">WordPress</a></h2> <p>WordPressは自分でサーバーにインストールする形のブログです。とにかく自分でガンガンカスタマイズしたり、遊びつくしたい、改良したい、という場合にはWordPress一択になると思います。</p> <p>一般的なサービスではないため、集客も100%自分で行う必要があります。また前述の辻さんの記事の通り、何かSEO的に改善が必要な場合自分で調整しなければなりません。WordPress自体のプログラムをいじるか、対応するプラグインを探すか、という形になるのでメンテナンスコストは高いと思います。あとはバズった時にサーバーがしっかりしてなければ止まってしまう恐れもあります。</p> <p>ただ、やはり「記事を書いて集客する」という目的がメインになると思いますが、そのメイン以外のことに時間を費やさなければならないため個人的にはあまりおすすめできません。何かしらのサービスを使うことがベストだと思います。</p> <p>本当にカスタマイズが好きな人のみが利用した方が良いと思いますが、真剣に書き始めていき段々と記事を書いたり調整することがメインになっていった場合、あとで後悔する可能性も出てきますのでそのあたりも考えてみてください。</p> <p>ただ、302リダイレクト等も自由ですので、引っ越しはきっちりできる、というメリットはあります。</p> <h2 id="Medium"><a href="#Medium">Medium</a></h2> <h3 id="使い勝手など"><a href="#%E4%BD%BF%E3%81%84%E5%8B%9D%E6%89%8B%E3%81%AA%E3%81%A9">使い勝手など</a></h3> <p>Mediumは海外製の記事投稿サービスです。自分のブログのように使うことも可能です。結構日本の方も利用しています。</p> <p>ジャンルは何でもOKです。とにかく見た目が美しく、僕も何か用途があれば自分でもメインで使ってみたいと思っています。そういう部分でファンも多いと思います。</p> <p>独自ドメインの利用や、最近ではnoteのような収益化の方法もいくつかあるようです。</p> <p>集客方法は特に無く、適当に記事を書いても一切アクセスはありませんので、自分で頑張る必要があります。</p> <p>noteは結構Mediumを参考にして作られていると感じます。日本の場合記事を書いた時の集客力はnoteの方が多少大きいと思いますが、Mediumの方が規模が巨大でSEO的にも優れていると思いますので、サービスの集客力に頼らず検索流入なども利用して長期的に自分のブログを育成したい、というのであればMediumの方が良いと思います。</p> <p>ただ、noteの方が日本でユーザー登録済みの人が多く有料noteの購入頻度は高そうな気がしますので、日本で自分で集客してガッツリ売りたい、という場合はnoteの方が良いのかもしれません。</p> <h3 id="カノニカルURLの利用"><a href="#%E3%82%AB%E3%83%8E%E3%83%8B%E3%82%AB%E3%83%ABURL%E3%81%AE%E5%88%A9%E7%94%A8">カノニカルURLの利用</a></h3> <p>Mediumは記事にカノニカルURLを指定でき、SEO上重複記事とならない形で自分のブログとまったく同じ記事を投稿することができます。ですのでブログは他で書き、記事が目に触れる頻度を増やしたい、という場合はこういった使い方もアリです。</p> <h2 id="dev.to"><a href="#dev.to">dev.to</a></h2> <p>こちらも海外のエンジニア向けのコミュニティで、記事を投稿したりできます。一応日本の方も投稿されているようですが、ほぼ英語メインのように思います。</p> <p>ただ、こちらもカノニカルURLを指定してのクロス投稿が可能ですのでとりあえず自分のブログの記事を投稿しておくのもアリだと思います。</p> <h2 id="Crieit"><a href="#Crieit">Crieit</a></h2> <p>Crieitは当サービスです。Qiitaのように記事を書けるサービスです。</p> <p>作成した意図としては下記になります。<br /> <a href="https://crieit.net/posts/Qiita-dev-to">次に作りたいQiita、dev.toの様なサービスについて</a></p> <p>Qiitaは基本的にはプログラミング関連の記事のみしか書くことができません。実際にはかなり多くの方が関係ない記事も書いていますが。当サービスはエンジニアが興味のあることであれば何でも書くことができ、質問、議論なども自由に気軽に書けることでQiitaとの差別化を目的として開発しているコミュニティです。よろしければ是非何か投稿してみてください!</p> <p>また、当サービスも日本ではめずらしくカノニカルURLの設定を採用しており、自分のブログの記事をクロス投稿することができます。とりあえず自分のブログの記事への流入機会を少しでも増やしておきたい、という場合はどんどん投稿していただいて大丈夫です。</p> <p>個人でやっているためパワー不足ではありますが、開発者や公式ツイッターアカウントにて可能な範囲で記事をツイート等で拡散したりしています。</p> <h2 id="Qrunch(閉鎖)"><a href="#Qrunch%EF%BC%88%E9%96%89%E9%8E%96%EF%BC%89">Qrunch(閉鎖)</a></h2> <p>こちらも個人の方が運用されている、当サービスと同様のコンセプトを持ったサービスです。ただ、こちらはブログという形態での運用となっています。寄稿形式ではなく自分のブログをちゃんと持ってアウトプットしたい、という方はこちらのほうがオススメです。</p> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <p>色々とエンジニアがIT系の記事を書くためのブログやサービスを紹介してみました。どれも少し特徴が違うので、丁度自分にあったものを使ってみると良いと思います。何も決まらなければはてなブログ、記事を売りたいならnote、自分で頑張って育成するのでブログにしてマネタイズもしたいならMediumがとりあえずは良いかな、と思います。無料プランだと記事の価値が各サービスのドメインに行ってしまいもったいないので、有料プランにして独自ドメインでの運用がおすすめです。</p> <p>これにかぎらず、書いた記事は自分の大事な資産ですので、独自ドメイン運用ができるものはできるだけそのようにしておいた方が良いと思います。そしてカノニカルURLを設定してクロス投稿できるサービスにも投稿しておく、とするとベストだと思います。自分が書いた一つ一つの記事を大事にして価値を高めていきましょう。</p> <p>追記)<br /> 最近エンジニアのブログの書き方の連載を始めてみました。フィードもありますので、これから始めてみたい、という方はぜひ購読して追ってみてください。</p> <p><a href="https://crieit.net/magazines/dala00/エンジニアのブログ始め方">連載 - エンジニアのブログ始め方</a></p> だら@Crieit開発者 tag:crieit.net,2005:PublicArticle/14476 2018-07-05T09:58:27+09:00 2018-10-31T14:38:53+09:00 https://crieit.net/posts/Google-Analytics Google Analyticsで見ると面白いところ <p>Crieit――Qiitaの様だけど何でも気軽に書けるコミュニティ――をαバージョンで公開して1ヶ月ちょっと過ぎました。</p> <p>今のところさほど検索流入もないのですが、今回このサービスではじめてマジマジとGoogle Analyticsを見ています。どういう部分が面白いのか? というのをいくつかあげてみます。</p> <p>Crieitは僕が昔からちょっとずつ書いていた記事を全部集約しているため、最初から記事が200記事以上ありました(ほとんどが役に立たないものばかりですが)。こうやってとりあえず記事がいつくもある状態にしておくと、Google Analyticsを見るのが面白いです。</p> <h2 id="ランディングページが面白い"><a href="#%E3%83%A9%E3%83%B3%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%8C%E9%9D%A2%E7%99%BD%E3%81%84">ランディングページが面白い</a></h2> <p>Google AnalyticsをSearch Consoleと連携させると検索流入時のランディングページを見ることができます。つまり、どのページが検索でアクセスされやすいかを見ることができます。その中で特に僕が気になってみているのが下記です。</p> <ul> <li>クリック数</li> <li>表示回数</li> <li>平均掲載順位</li> </ul> <h3 id="クリック数"><a href="#%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E6%95%B0">クリック数</a></h3> <p>クリック数はいわずもがな、そのランディングページに訪れた数です。ここの合計をどんどん増やしていくことが目標ですね。</p> <h3 id="表示回数"><a href="#%E8%A1%A8%E7%A4%BA%E5%9B%9E%E6%95%B0">表示回数</a></h3> <p>表示回数は検索結果に表示された回数です。ここが多いと、検索されやすいキーワードや、順位が高くなりやすいキーワードでSEO対策ができているということになります。</p> <p>ただ、問題なのは表示回数が多いのにクリック数が低い、というページです。つまり検索結果に表示されてもアクセスすらしてもらえないページということです。</p> <p>そのため、検索キーワードに、タイトル、概要文がマッチしていない、つまりそのキーワードは本来他の情報を得たいために検索で利用されている可能性が高い、という問題がある可能性があります。たとえばプログラミング言語の「PHP」で検索したのに「PHP文庫」の情報が引っかかってしまう、とかですね。</p> <p>ジャンルが違ってしまえばどうしようもありませんが、同じジャンルであればその記事を需要のある内容に書き換えればアクセス数が増える可能性があります。そういったことを考えるとワクワクします。棚ぼたで良いキーワードが見つかったということですので。</p> <h3 id="平均掲載順位"><a href="#%E5%B9%B3%E5%9D%87%E6%8E%B2%E8%BC%89%E9%A0%86%E4%BD%8D">平均掲載順位</a></h3> <p>平均掲載順位も当然高ければ高いほど検索流入が見込めるので、見て楽しい値の一つです。</p> <p>特に気になる点は、平均掲載順位が低いのにも関わらずそこそこ表示回数やクリック数が高い場合です。この場合、なんとか順位を上げれば劇的にアクセスを増やすことができる可能性があります。順位をそう簡単に上げることはできない場合も多いと思いますが、僕の場合昔の記事は中身が全部ひどいので、まだまだ改善の余地があると思います(時代的に意味のない記事も多そうですが)。そのため色々と見ていって可能なものは改善しないとな、と考えたりします。</p> <p>あとは順位が90位だった場合はまだまだ順位が簡単に上がる可能性もあるので、色々試してみると面白いかなと感じます。</p> <h3 id="変な流入もある"><a href="#%E5%A4%89%E3%81%AA%E6%B5%81%E5%85%A5%E3%82%82%E3%81%82%E3%82%8B">変な流入もある</a></h3> <p>ランディングページをクリックすると、そのページにどのようなキーワードでアクセスがあったかを見ることもできます。その中には結構へんてこなものもあったりします。</p> <p>例えば下記はPHP7.3でアクセスされる場合が一番多いです。</p> <p><a target="_blank" rel="nofollow noopener" href="/posts/PHP5-3-PHP7-2">PHP5.3のプロジェクトをPHP7.2にした時の流れ</a></p> <p>改善のしようもないのでどうしようもないのですが、ちょっと面白かったです。</p> <h2 id="検索クエリ"><a href="#%E6%A4%9C%E7%B4%A2%E3%82%AF%E3%82%A8%E3%83%AA">検索クエリ</a></h2> <p>検索クエリはSearch Consoleの検索アナリティクスと同じものだと思われます。軽いので僕はSearch Consoleの方を直接見ています。ここは実際にどのような検索でアクセスがあったかの集計を見ることができます。ここでも同様にクリック数、表示回数、掲載順位をよく見ています。自分のサイトの主力ページが何かがひと目で分かりやすいです。</p> <p>ここの見方は大体ランディングページと同じなのですが、あとは自分のサイトに足りないコンテンツはなんだろうとか、自分で気付けていない改善方法を想像するのにも役立つのではないかと思います。</p> <p>あとは、全然関係ないキーワードでアクセスがあるページもあるので、そういう場合は本当にそのキーワードで検索して意味のあるページを作ってあげることで、流入を増やすこともできると思われます。</p> <h2 id="Google Analyticsを真剣に見るようになってよかったこと"><a href="#Google+Analytics%E3%82%92%E7%9C%9F%E5%89%A3%E3%81%AB%E8%A6%8B%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%A6%E3%82%88%E3%81%8B%E3%81%A3%E3%81%9F%E3%81%93%E3%81%A8">Google Analyticsを真剣に見るようになってよかったこと</a></h2> <p>僕は結構最初に紹介したいこと有りきで、ついでになるべく役に立つような内容も色々入れ込もう、したりするのですが、そうすると検索結果としては下記のようになってしまいます。</p> <ul> <li>最初に紹介したいどうでも良いことがメインの記事になって検索結果ではアクセスされづらい</li> <li>役に立つ内容を盛り込んでもキーワード的に弱いので良い順位になりづらいし、検索結果を見ても興味をひきづらい</li> </ul> <p>そのため役に立つ記事は何かの記事に混ぜるより単体の記事にした方が上記を解消でき検索結果としては価値のあるものになる可能性が格段に上がると思いますので、そのあたりを意識するようになりました。</p> <p>実はこの記事も他の記事に混ぜようと思っていたのですが、Google Analyticsの話が膨れてしまい、混ぜるのはもったいない量になってしまったため分割してひとつの記事にしました。</p> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <p>ブログやWebサービスを運営しているとGoogle Analyticsは非常に役に立ちますし、面白いです。是非色々と考えながら見てみてください。キュレーションサービスがたくさん作られた理由もよく分かります。</p> <p>ちなみに当記事は解析のプロが書いたものではないので役立つ機能などの紹介はしていません。あくまでも個人の楽しみ方の雑感です。詳しく知りたい方は別途調べてみてください。</p> だら@Crieit開発者 tag:crieit.net,2005:PublicArticle/14463 2018-06-04T09:38:26+09:00 2020-07-01T21:01:52+09:00 https://crieit.net/posts/Qiita-SEO QiitaがやっているSEO対策を調べてみた <h2 id="はじめに"><a href="#%E3%81%AF%E3%81%98%E3%82%81%E3%81%AB">はじめに</a></h2> <p>Crieitを開発中、いくつかのサービスを参考にしました。そのためQiitaのSEOはこうやっている、というのを多少感じ取れた部分がありますので、いくつか紹介していきたいと思います。(このサービスをざっと見ていただいた方はお気づきかと思いますが、Qiitaの構成もかなり参考にしています)</p> <p>ちなみに裏技のようなものの紹介は特にありません。基本的な、大事な部分をちゃんとやっている、というところがメインの話になります。</p> <p><strong>元々存在しない価値を生み出すものではなく、コンテンツを無駄にしないためのSEO</strong>です。</p> <p>(このあとリニューアルしたため内容と現在のサイトが異なっている場合があります)</p> <h2 id="コンテンツを増やす"><a href="#%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84%E3%82%92%E5%A2%97%E3%82%84%E3%81%99">コンテンツを増やす</a></h2> <p>コンテンツが増えると、検索流入もその分多くなりアクセスを増やすことの要因の一つとなります。</p> <p>ではコンテンツとは何か、というとQiitaでは当然記事があります。</p> <p>ただ、それだけではもったいないです。付随する色々なデータがあるので、それらもコンテンツとして配置することで一気にサービス上のコンテンツのボリュームを増やすことができます。</p> <h3 id="ユーザープロフィール"><a href="#%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%97%E3%83%AD%E3%83%95%E3%82%A3%E3%83%BC%E3%83%AB">ユーザープロフィール</a></h3> <p>ユーザーにはそれぞれプロフィールページが設けられています。これも一つのコンテンツとしてみなすことができます。</p> <p>しかも、これは1ページにとどまりません。プロフィールに入った最初のページはそのユーザーの記事一覧があります。さらにタブをクリックすると、その人がいいねした履歴やフォロワー一覧等もそれぞれ1ページのコンテンツとすることで、1ユーザー増える毎にコンテンツが何倍にも増えるようにしています。</p> <p><a href="https://crieit.now.sh/upload_images/587815b524390f2f5f1edd58b3d626725b110d78d4d22.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/587815b524390f2f5f1edd58b3d626725b110d78d4d22.png?mw=700" alt="" /></a></p> <h3 id="タグ"><a href="#%E3%82%BF%E3%82%B0">タグ</a></h3> <p>タグをクリックすると、タグによる記事の絞り込みが行なえます。ただ、これは単なる検索結果のページではありません。このページもタグページとして一つのコンテンツになっています。</p> <p>SEOの基本上ちゃんとhタグでページ名がついていて、さらに単なる記事一覧だけでなく人気のあった記事まとめをパーツとして書いておくことで、ページ内のコンテンツを豊富にしています。</p> <p><a href="https://crieit.now.sh/upload_images/11d5bd013e2c6c205025a1fc7cb288d85b110e24890c0.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/11d5bd013e2c6c205025a1fc7cb288d85b110e24890c0.png?mw=700" alt="" /></a></p> <h2 id="全てのページにちゃんとアクセスできるようにする"><a href="#%E5%85%A8%E3%81%A6%E3%81%AE%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AB%E3%81%A1%E3%82%83%E3%82%93%E3%81%A8%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B">全てのページにちゃんとアクセスできるようにする</a></h2> <p>SEO上、ベースとなる部分で一番大事なことは、<strong>ちゃんとクローラに認識してもらうこと</strong>です。つまり、まずは全部のページにちゃんと辿ってアクセスできるようにしてあげる必要があります。</p> <p>Qiitaはこのあたりをちゃんとしていました。具体的にはフッターにあるこのリンクです。</p> <p><a href="https://crieit.now.sh/upload_images/11d5bd013e2c6c205025a1fc7cb288d85b110e9aef6da.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/11d5bd013e2c6c205025a1fc7cb288d85b110e9aef6da.png?mw=700" alt="" /></a></p> <p>このリンクは、全てのページにアクセスできるようにするためのリンクです。主にクローラのために配置されているもので、ユーザーが普段利用するページではありません。</p> <p>前述したユーザー、タグページも重要なコンテンツですので、これらにも全てアクセスできるようになっています。</p> <p>今これを読んでいる方の中にもサイトやサービスを作っている方は多いと思いますが、こういった仕組みは導入されていますか?</p> <p>検索パラメータでページはかなり増えるけど、formだから実質クローラはアクセスできない、なんて事になっていたら非常にもったいないと思います。気になる方はぜひ見直してみましょう。</p> <p>ちなみに、ページングは個別ページとしては利用できません。メタタグを利用して同一ページとして認識させることができますので、そういった対応を行いましょう。例えばQiitaでは下記のようになっています。</p> <pre><code class="html"><link rel="canonical" href="https://qiita.com/tags?page=2" /> <link rel="next" href="/tags?page=3" /> <link rel="prev" href="/tags" /> </code></pre> <h2 id="ページ内の重要なワードの出現回数を増やす"><a href="#%E3%83%9A%E3%83%BC%E3%82%B8%E5%86%85%E3%81%AE%E9%87%8D%E8%A6%81%E3%81%AA%E3%83%AF%E3%83%BC%E3%83%89%E3%81%AE%E5%87%BA%E7%8F%BE%E5%9B%9E%E6%95%B0%E3%82%92%E5%A2%97%E3%82%84%E3%81%99">ページ内の重要なワードの出現回数を増やす</a></h2> <p>ページ内の需要なワードを違和感ない程度に増やすことで、各ページがそのワードのページとしてのSEO上の価値が高まり、検索結果に表示されやすくなります。(劇的な効果があるわけではないと思います)</p> <p>具体的に見ていきます。</p> <h3 id="記事ページ"><a href="#%E8%A8%98%E4%BA%8B%E3%83%9A%E3%83%BC%E3%82%B8">記事ページ</a></h3> <p>記事はユーザーが投稿するもののため、自由にキーワードの出現頻度を増やすことができません。そのため、いくつかの工夫がなされています。</p> <h4 id="見出し一覧"><a href="#%E8%A6%8B%E5%87%BA%E3%81%97%E4%B8%80%E8%A6%A7">見出し一覧</a></h4> <p>Qiitaで特徴的なのはやはり右側に表示されている見出し一覧。</p> <p><a href="https://crieit.now.sh/upload_images/dfcf398c3ba3dbcda62807a2b45b8a135b110f68e1909.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/dfcf398c3ba3dbcda62807a2b45b8a135b110f68e1909.png?mw=700" alt="" /></a></p> <p>単なる便利機能ではなく、見出しには重要なワードが含まれることが多いので、この機能を追加して出現頻度を上げているものと思われます。</p> <h4 id="関連ページ"><a href="#%E9%96%A2%E9%80%A3%E3%83%9A%E3%83%BC%E3%82%B8">関連ページ</a></h4> <p>関連ページと言うと関連しているページを紹介しているものだろうと思いますが、恐らく、ここは各記事の中でよく出現する、もしくは重要度の高いキーワードをなるべく多く出すため、そういったキーワードを含むタイトルの記事を出しているのではないかと想像しています。</p> <p><a href="https://crieit.now.sh/upload_images/d3e728f3e0d40b5740c5cc266ecd8b1c5b110ff9622cb.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/d3e728f3e0d40b5740c5cc266ecd8b1c5b110ff9622cb.png?mw=700" alt="" /></a></p> <p>もちろん人気があるとか、最近アクセスされたとか諸条件はあると思いますが、キーワードを一番に重視して出しているような気がします。(全部想像です)</p> <p>別途、リンクされている記事の一覧もあります。ただ、こちらはもちろん関連ワードが出てくる可能性はありますが、ワードを操作できません。UX的に必要な機能ではありますが、SEO的にはやはりそれだけでは不足だったのでしょう。</p> <p><a href="https://crieit.now.sh/upload_images/9cfd920e01bd679c60f91575e74191915b11106365c62.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/9cfd920e01bd679c60f91575e74191915b11106365c62.png?mw=700" alt="" /></a></p> <h3 id="タグページ"><a href="#%E3%82%BF%E3%82%B0%E3%83%9A%E3%83%BC%E3%82%B8">タグページ</a></h3> <p>前述した全てのタグの一覧ページを見てみると、単に列挙しているだけではなく、人気のあるタグを最初にいくつか説明文の中で列挙しています。</p> <blockquote> <p>Qiitaに登録されているタグの一覧です。 JavaScript、Ruby、PHP、iPhone、Android、Vim、Emacs、Objective-C、CoffeeScript、gitなど、Qiitaでは毎日様々なジャンルの投稿がされています。 気になるタグを探してフォローしてみましょう。</p> </blockquote> <p>たった1ページではありますが、このサイトはこういう内容がメインのサービスだよ、というのをクローラに伝えるためにこういった記述になっていると思われます。</p> <h2 id="気になったところ"><a href="#%E6%B0%97%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%9F%E3%81%A8%E3%81%93%E3%82%8D">気になったところ</a></h2> <p>Qiitaにログインしていない状態でだけアクセスできるトップページがあります。その中に、「Hello Hackers」という文言がありますがこれがh1になっています。このあたりは不思議ですね。あまり重要ではないのでしょうか。</p> <p>Crieitもそれを真似てBootstrapのサンプルそのままのHello, worldをh1タグにしています。</p> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <p>以上がQiitaが対応しているSEO対策についての雑感になります。おそらく他にも気づかないところですごいことをやっている可能性もありますが、今のところ僕が気づいたところはこういったところです。</p> <p>結局、すごいことをやるわけではなく、ちゃんと基本ができているか、というところになりますので、あまり深く追いすぎても意味はないと思います。やりすぎは逆にマイナスだと思いますので。</p> <ul> <li>キーワードについてちゃんと考える</li> <li>導線を考える</li> <li>メタタグをちゃんと整備する</li> </ul> <p>あくまでもこういった基本的な大事なところをきっちりするためのSEOとして役立つ諸々の対策になるかと思います。</p> <p>繰り返しますが、<strong>元々存在しない価値を生み出すものではなく、コンテンツを無駄にしないためのSEO</strong>です。</p> <h2 id="最後に"><a href="#%E6%9C%80%E5%BE%8C%E3%81%AB">最後に</a></h2> <p>その他サービス開発上色々気がついたことなどは随時このCrieit上に投稿していきます。気になる方はぜひフォローをお願いします。(Crieit上にフォロー機能がまだないのですが…)</p> だら@Crieit開発者