世界最高峰の高機能・スケーラブルなWordPressディレクトリプラグイン
GeoDirectoryは、スケーラブルなビジネスディレクトリ、シティガイド、不動産物件情報、求人ボード、イベントサイト、クラシファイド、地域情報プラットフォームを構築するためのエンタープライズグレードのWordPressプラグインです。汎用のリスティングプラグインとは異なり、WordPressのポストメタではなく専用データベーステーブルを使用しているため、小規模なローカルポータルから数十万〜数百万件の掲載情報を持つディレクトリまで、優れたパフォーマンスを発揮します。主な機能として、最適化された検索、マップ、レビュー、フロントエンド投稿、そしてカスタマイズのための豊富なアドオンエコシステムを備えています。WordPress.orgおよびCapterraにおける700件以上のレビューで4.8/5の高評価を獲得しています。
GeoDirectoryを入手するGeoDirectoryでできることは?
オンラインディレクトリサイトは、個人にとっても企業にとっても価値あるリソースです。
これらのサイトは、企業・団体・個人の包括的なリストを、カテゴリや地域ごとに整理して提供しています。
このブログ記事では、オンラインディレクトリサイトに関するよくある質問にお答えします。
情報をお探しの方も、オンラインでの露出を高めたい方も、このポストで必要な答えが見つかります。
さっそく始めましょう!
1. ビジネスオンラインディレクトリサイトとは?
ビジネスオンラインディレクトリサイトとは、ディレクトリソフトウェアを使用してオンラインディレクトリを構築したウェブサイトです。
最終的な目的は、カテゴリや地域ごとに整理されたビジネスを掲載することです。
これらのディレクトリは、掲載されている企業の提供する商品やサービスに関する情報のほか、連絡先やその他の関連情報も提供しています。
ビジネスディレクトリサイトは、地域内または特定の業界の企業情報を探している人々をサポートします。
また、知名度を高め、新規顧客を獲得しようとしている企業にとっても、非常に価値あるツールとなり得ます。
2. ビジネスディレクトリソフトウェアとは?

A ビジネスディレクトリプラグイン は、企業・団体・個人のオンラインディレクトリウェブサイトを作成・管理できるソフトウェアの一種です。
この種のソフトウェアには通常、リスティングの追加・編集・削除、場所や業種によるリスティングの分類、さまざまな条件に基づくリスティング検索などの機能が含まれています。
ビジネスディレクトリソフトウェアには、評価・レビュー、決済処理、他のツールやプラットフォームとの連携といった追加機能が含まれているものもあります。
ビジネスディレクトリソフトウェアは、オンラインディレクトリウェブサイトを作成・管理する個人や企業にとって欠かせない存在です。
3. ウェブディレクトリの例とは?

ウェブディレクトリとは、ウェブサイトを一覧化したオンラインディレクトリで、カテゴリーやテーマ別に整理されていることが多いです。
ウェブディレクトリの例としては、ホテル・航空会社・旅行代理店など、旅行に関するウェブサイトを一覧化したディレクトリが挙げられます。
このディレクトリには、各ウェブサイトとそのサービスの簡単な説明と、それらへのリンクが掲載されています。
この種のディレクトリは、旅行など特定のテーマについて情報を探している方にとって便利です。関連するウェブサイトがひとまとめにキュレーションされているためです。
その他のウェブディレクトリの例としては、オンラインショップ、ブログ、フォーラムのディレクトリなどがあります。
ウェブディレクトリの具体的な例をいくつかご紹介します:
- Yahoo! Directory:これは最も古く、最もよく知られたウェブディレクトリの一つでした。カテゴリーとサブカテゴリーに整理されており、さまざまなトピックのウェブサイトを簡単に見つけることができました。このディレクトリは2014年にサービスを終了しました。
- DMOZ (The Open Directory Project):このディレクトリは、幅広いトピックのウェブサイトをカテゴリー分けしてリスト化するために活動する編集者コミュニティによる共同プロジェクトでした。
- Best of the Web:このディレクトリは高品質なウェブサイトに特化しており、ユーザーが必要な情報を見つけやすいよう、各サイトの簡単な説明を提供しています。
- JoeAnt:このディレクトリはカテゴリとサブカテゴリに整理されており、ユーザーが掲載されているウェブサイトを評価・レビューすることができます。
- WebWorldIndex:このディレクトリは人間が編集する形式で、幅広いトピックのウェブサイトを掲載しています。また、ユーザーが自分のウェブサイトをディレクトリへの掲載申請することも可能です。
- Business.com:このディレクトリはビジネスに特化しており、さまざまな業界や企業に関する情報を提供しています。さらに、オンラインプレゼンスを高めたい企業向けのツールやリソースも提供しています。
4. オンラインディレクトリウェブサイトのビジネスモデルは収益性がありますか?

ウェブマスターがディレクトリのプロモーションを成功させ、十分な普及レベルを達成し、安定したトラフィックを生み出すことができれば、収益を上げることは可能です。
The オンラインディレクトリウェブサイトのビジネスモデル は、適切に管理され、トラフィックとユーザーベースの収益化に成功した場合にのみ、利益を生み出すことができます。
他のあらゆるビジネスと同様、収益性のレベルはユーザーベースの規模、ディレクトリコンテンツの質、そしてその 収益化戦略.
収益を上げるために、オンラインディレクトリウェブサイトは十分な数のユーザーを獲得し、広告・サブスクリプション・その他の手段を通じて、コストをカバーして利益を生み出すのに十分な収益を確保しなければなりません。
さらに、ディレクトリは市場内の他のディレクトリと競争し、ユーザーに価値を提供することで、ユーザーを維持しつつユーザーベースを拡大し続ける必要があります。
SEO(検索エンジン最適化)をマスターすることが、オンラインディレクトリウェブサイトを中心とした収益性の高いビジネスを構築するための最も確実な方法です。
5. オンラインビジネスディレクトリはどのように収益を得ているのですか?

オンラインビジネスディレクトリは、さまざまな収益化手法によって収益を得ることができます。
一つの方法は広告で、ディレクトリが自社のウェブサイト上の広告スペースを、知名度向上を目指す企業に販売します。
もう一つの方法はサブスクリプション料金で、ユーザーはディレクトリ上の特定の機能や情報にアクセスするために料金を支払う必要があります。
さらに、一部のディレクトリではプレミアムリスティングを提供しており、企業が料金を支払うことで、ディレクトリ内で自社情報を目立つ位置に表示したり、ハイライト表示させたりすることができます。
ディレクトリが収益を得るもう一つの方法は、リードに対するコミッションです。
この場合、ディレクトリを通じてビジネスに紹介された顧客一人ひとりに対してコミッションを得ます。
全体的に、オンラインビジネスディレクトリはこれらの方法の一つ、または組み合わせによって収益を生み出すことができます。
6. 収益性の高いオンラインディレクトリを始めるにはどうすればよいですか?

To 収益性の高いオンラインディレクトリを始めるには、綿密な計画と確かなビジネス戦略の実行が必要です。
以下のステップに従ってください:
- 注力する特定のニッチまたは市場を特定しましょう。これにより、他のディレクトリとの差別化を図り、ターゲットオーディエンスを引き付けることができます。
- ディレクトリに掲載するビジネス、組織、または個人の包括的なリストを作成しましょう。これはディレクトリの核となるものであり、正確かつ最新の状態を保つために定期的に更新する必要があります。
- ディレクトリをホストするための使いやすく魅力的なウェブサイトを作成しましょう。これはビジネスの顔となるものですので、視覚的に魅力的で使いやすいナビゲーションにしましょう。
- 効果的な収益化戦略を実施しましょう。広告スペースの販売、サブスクリプションプランの提供、またはプレミアムリスティングの提供などが挙げられます。
- ユーザーを引き付け、認知度を高めるためにディレクトリを宣伝しましょう。検索エンジン最適化(SEO)、ソーシャルメディアマーケティング、コンテンツマーケティングなどのマーケティング活動が含まれます。
- パフォーマンスを監視し、必要に応じて調整を行いましょう。コンテンツの定期的な更新、ウェブサイトの改善、または収益化戦略の見直しなどが考えられます。
これが、ユーザーに価値を提供しながらビジネスの収益を生み出す、収益性の高いオンラインディレクトリを作成する最善の方法です。
7. 成功するディレクトリを作るにはどうすればよいですか?

成功するディレクトリを作る鍵は、ユーザーへの価値提供に集中することです。
これは、企業、組織、または個人の包括的かつ最新のリストを、関連する情報や詳細とともに提供することを意味します。
また、ナビゲートや検索が簡単な、使いやすく魅力的なウェブサイトを作成することも意味します。
ユーザーに価値を提供することで、忠実なオーディエンスを引き付け、維持することができます。これはディレクトリの成功に不可欠です。
ユーザーへの価値提供に加え、強固なブランドの構築も不可欠です。
これは、オンラインディレクトリウェブサイトに一貫したプロフェッショナルなイメージを作ることを意味します。
具体的には、独自のロゴとカラースキームの開発、魅力的で有益なコンテンツの作成、さまざまなチャネルを通じたディレクトリのプロモーションなどが挙げられます。
強固なブランドを構築することで、ディレクトリを信頼性の高い情報源として確立でき、ユーザーの獲得と維持に役立ちます。
8. ディレクトリ掲載料はいくらに設定すべきですか?

ディレクトリ掲載に対して請求する金額は、ディレクトリの規模と範囲、ビジネスにとっての掲載の価値、市場における競合状況など、いくつかの要因によって異なります。
一般的に、ビジネスにとっての掲載の価値を反映した適正価格を設定し、利益を生み出せるようにすることを目指すべきです。
一つのアプローチとして、可視性や機能のレベルが異なる掲載プランに応じて、さまざまな価格帯を設けることが挙げられます。
たとえば、基本掲載を無料または低価格で提供し、ビジネスがより高い価格でプレミアム掲載にアップグレードできるようにすることができます。
これにより、ビジネスはニーズと予算に最も合った露出レベルと機能を選択できます。
価格設定を定期的に見直し、調整することも、競争力と公平性を維持するために不可欠です。
これには、類似するディレクトリの価格設定を把握するための市場調査の実施や、顧客が掲載料に見合った価値に満足しているかを確認するための定期的なフィードバック収集などが含まれます。
全体として、ディレクトリ掲載の適正価格を設定するための鍵は、ビジネスにとっての掲載の価値を慎重に評価し、市場状況や顧客のフィードバックを反映して価格設定を定期的に見直し、調整することです。
9. ウェブサイトディレクトリを宣伝するにはどうすればよいですか?

ウェブサイトディレクトリを宣伝し、その認知度を高める方法はたくさんあります。
いくつかのヒントをご紹介します:
- 検索エンジン向けにウェブサイトを最適化しましょう。キーワードやその他のテクニックを活用して、検索エンジンの結果ページ(SERP)におけるウェブサイトのランキングを向上させ、ユーザーが関連キーワードを検索した際にあなたのディレクトリを見つけやすくします。
- ソーシャルメディアを活用してディレクトリを宣伝しましょう。Facebook、Twitter、LinkedInなどのソーシャルメディアプラットフォームにディレクトリやそのコンテンツへのリンクをシェアすることで、より多くのオーディエンスにリーチし、ウェブサイトへのトラフィックを増やすことができます。
- ターゲットオーディエンスと積極的に関わりましょう。関連するブログ記事やフォーラムにコメントしたり、業界グループや団体に参加したり、業界イベントに出席したりして、ディレクトリとその価値をアピールしましょう。
- 価値あるコンテンツを提供しましょう。企業・団体・個人の掲載に加え、ターゲットオーディエンスに役立つ記事、ブログ投稿、動画、その他のコンテンツの提供も検討してください。これにより、ディレクトリを信頼性が高く権威ある情報源として確立することができます。
- 他のウェブサイトやディレクトリと協力しましょう。類似したオーディエンスを持つ他のウェブサイトやディレクトリとパートナーシップを結び、お互いのコンテンツをクロスプロモーションしてウェブサイトへのトラフィックを増やすことを検討してください。
これらのヒントを実践することで、ウェブサイトディレクトリを効果的に宣伝し、その認知度とリーチを高めることができます。
10. ディレクトリはSEOに効果的ですか?

はい、ディレクトリはSEOに効果的です。
検索エンジンはウェブサイト(ディレクトリを含む)をクロールしてインデックスに登録します。
質の高いディレクトリは、追加のインバウンドリンクを提供することで、検索エンジンの結果ページ(SERP)におけるウェブサイトの視認性向上に貢献します。
これにより、ウェブサイトの検索エンジンランキングが向上し、ユーザーが関連キーワードを検索した際にウェブサイトを見つけやすくなります。
さらに、ディレクトリはウェブサイトとそのコンテンツに関する有益な情報やコンテキストを提供できるため、検索エンジンがその関連性と権威性を理解する助けになります。
これにより、検索エンジンの結果におけるウェブサイトのランキングと視認性が向上します。
ただし、すべてのディレクトリがSEOにおいて同等の価値を持つわけではない点に注意が必要です。
一部のディレクトリは他よりも信頼性や権威性が高く、ウェブサイトの検索エンジンランキング向上においてより大きな効果をもたらします。
そのため、ウェブサイトのSEOに使用するディレクトリは、慎重にリサーチして評価することが重要です。
11. ビジネスディレクトリを売却するにはどうすればいいですか?

ビジネスディレクトリの売却を検討している場合、その価値を最大化して潜在的な買い手を引き付けるためのステップがいくつかあります。以下にヒントをご紹介します。
- 関連するすべての情報と書類を収集してください。財務諸表、ユーザーデータ、広告主やその他のパートナーとの契約などが含まれる場合があります。
- ディレクトリの現状と将来の可能性を概説する、詳細かつプロフェッショナルなビジネスプランを作成してください。
- 潜在的な買い手を見つけ、売却交渉をサポートしてくれるビジネスブローカーやアドバイザーの活用を検討してください。Flippa.com、MicroAcquire、Empire Flippers などのサイトへの掲載も含まれます。
- 他のディレクトリサイトや関連業界の企業など、潜在的な買い手にアプローチし、ディレクトリの価値提案を提示してください。
- 購入価格や継続的な義務・コミットメントを含む、売却条件を交渉してください。
- 売却を完了し、契約条件に従ってディレクトリの所有権を移転してください。
この戦略を実行することで、ビジネスディレクトリを効果的に売却し、その価値を最大化することができます。
オンラインビジネスディレクトリについて、さらに質問にお答えしましょうか?下のコメント欄にご質問をお寄せください。この記事を更新いたします!
GeoDirectoryは今すぐこちらから入手できます:
「レストランディレクトリの作り方」に関するガイドの多くは、最終的にGrubhub、Uber Eats、DoorDash、またはYelpへの掲載を勧めてきます。
そのセールストークは便利に聞こえます。他社のプラットフォームにレストランを掲載し、露出と注文のために手数料を支払えば、あとはお客さんが集まってくる、というものです。
しかし、計算してみると話は変わってきます。
Grubhub、Uber Eats、DoorDashは注文ごとに15〜30%を徴収し、さらに顧客側への配送料が加わることで、平均注文金額はレストランの店頭価格を大幅に上回ります。
Yelpはプレミアムビジネスページに月額$300〜$1,000以上を請求し、未払いの競合店のリスティングがデフォルトでそのページに表示されます。
OpenTableはオンライン予約1件あたり$1、電話予約1件あたり$0.25を請求し、さらに月額基本料金として$249がかかります。
これらのプラットフォームはいずれも、顧客のメールアドレス、注文履歴、マーケティング上の関係性をレストラン側に提供しません。
自分でレストランディレクトリサイトを構築し、フルマーケットプレイス機能を持たせることができます。コストはそれらのサービスのほんの一部で済み、顧客との関係を自社で保持し、手数料も手元に残せます。
この記事では、無料の GeoDirectory plugin ディレクトリエンジンとして、またオプションのGeoMarketplaceアドオンを使ってマルチベンダー注文プラットフォームへと変貌させることができます。
レストランディレクトリサイトに本当に必要なもの
余計な要素をすべて取り除くと、本格的なレストランディレクトリには、YelpやGrubhubが核となる機能として備えているものと同じ要素が必要です:
- 料理ジャンル、エリア、価格帯、食の好み(ヴィーガン、グルテンフリー)、「現在営業中」でフィルタリングできる検索可能なレストランデータベース
- 全リスティングにピンを立てたマップビューとクリック可能な情報ウィンドウ
- 写真、メニュー、営業時間、連絡先、レビューを含む詳細なリスティングページ
- レストランオーナー(リスティング管理用)とダイナー(レビュー投稿とお気に入り保存用)のユーザーアカウント
- レストランオーナーがWordPressの管理者権限なしに自分のリスティングを申請・追加できるフロントエンド投稿機能
- オプション:レストランごとに注文可能なメニュー項目とマルチベンダーの手数料分配(Grubhubの手数料なしで、Grubhubと同等の機能)
- オプション:収益化のための有料プレミアムリスティング、有料クレームリスティング、広告枠
GeoDirectoryプラグインはそのリストのすべての項目に対応し、GeoMarketplaceアドオンがマルチベンダー注文の部分を担います。
必要なもの(無料スタック)
3つのソフトウェアと、ドメインおよびホスティング:
- WordPress、ウェブ全体の43%を支えている無料CMS
- 無料の GeoDirectory plugin ディレクトリエンジン、検索、マップ、リスティングページのために
- テーマ GeoDirectoryとの相性が抜群なもの(Hello テーマを使った Elementor PRO、無料の Kadence テーマ、または弊社の無料 BlockStrap テーマのいずれか)
無料ディレクトリセットアップの総コスト:ソフトウェアは $0、加えて WordPress ホスティングが月額 $5〜15、ドメインが年間 $10〜15。
SaaSディレクトリプラットフォームに反対するより広範な議論については、こちらをご覧ください best business directory software guide.
ディレクトリウェブサイト全般の構築手順については、こちらのチュートリアルをご覧ください: ディレクトリウェブサイトの作り方.
ステップ 1:WordPress ホスティングとドメインを設定する
空白の WordPress サイトがすでに用意されている場合は、このセクションをスキップしてください。
新規セットアップの場合は、最低 2GB の RAM と SSD ストレージを提供する WordPress ホスティングプロバイダーを選びましょう。マネージド WordPress ホストは、基盤となる最適化を自動的に処理してくれます。
ディレクトリを検索するときにユーザーが入力するキーワードに合ったドメインを登録しましょう(例:bestbrooklynrestaurants.com、valenciafoodguide.com)。
ステップ 2:AyeCode Connect をインストールする
AyeCode Connect は無料のヘルパープラグインで、あらかじめ構築されたレストランディレクトリのデモを WordPress サイトに直接インポートし、レイアウト作業の手間を省き、お持ちのプレミアムアドオンライセンスを同期します。
に移動します Plugins → Add New WordPress管理画面で、 AyeCode Connect.

クリックして インストールする、次に 「有効化」.
Click the Connect Site ボタンをクリックして、WordPress サイトを AyeCode デモライブラリに連携させましょう。登録は無料です。

ステップ 3:レストランディレクトリのデモをインポートする
AyeCode Connect から利用できる、あらかじめ構築されたレストランディレクトリのデモが 2 種類あります。各ページビルダーのアプローチに対応したものが 1 つずつ用意されています。
オプション A:Elementor PRO + GeoDirectory

Elementor PROを使うルートでは、カスタムリスティングテンプレート、アーカイブページ、検索結果に対して最大限のビジュアル柔軟性が得られます。
費用:Elementor PRO(エントリープラン)年間$59、および無料のGeoDirectoryプラグイン。
セットアップ:無料のElementorプラグインをインストールし、ElementorアカウントからElementor PRO のZIPをアップロード、無料のHello theme by Elementorをインストールしたら、AyeCode Connectで 「デモデータのインポート」→「Elementorレストランディレクトリ」→「表示」→「インポート」.

オプションB:Kadenceテーマ+GeoDirectory(無料ルート)
Kadenceを使うルートは完全無料で、ネイティブのGutenbergブロックを使用するため通常のホスティングでも高速に動作し、ページビルダーの継続費用もかかりません。
費用:Kadenceテーマ $0、GeoDirectory $0、デモ $0。ソフトウェア合計:$0。
セットアップ:AyeCode Connectで 「デモデータのインポート」→「Kadenceレストランディレクトリ」→「表示」→「インポート」.

インポートにより、無料のKadenceテーマ、GeoDirectoryプラグイン、レストラン専用のカスタムフィールド、および出発点として使えるデモリスティング一式がインストールされます。
どのページビルダーがどのタイプの運営者に向いているか、詳しい比較については、こちらのガイドをご覧ください: ページビルダーの選択がディレクトリサイトのパフォーマンスに与える影響.
ステップ4:レストランのカスタマイズと追加
デモのインポートが完了したら、その後のワークフローは両方のルートで共通です:
- プレースホルダーのロゴをブランドマークに置き換える
- テーマカスタマイザーで色とタイポグラフィをブランドに合わせて調整する
- メニューナビゲーションをサイト構造に合わせて編集します(ホーム、レストラン、料理ジャンル、エリア、レストランを追加、お問い合わせ)
- デモのリスティングを実際のレストラン情報に置き換えます。場所: スポット WordPress管理画面(またはフロントエンドの投稿フォームを使用)
- お問い合わせフォームとリード獲得フローを設定する
- Google Search Console にサイトマップを送信する
リスティングはフロントエンドフォームから1件ずつ追加するか(レストランオーナーが使用するフォームと同じ)、CSVインポートで一括登録することができます。
マーケットプレイス特典:レストランごとのメニューアイテム販売

基本的なディレクトリにとどまらず、 GeoMarketplaceアドオン はレストランディレクトリをマルチベンダーマーケットプレイスに変え、各レストランが独自のショップとして機能するようになります。
レストランオーナーはメニューアイテムをリスティングに紐付けた商品として登録します。利用者はディレクトリ経由で注文し、あなたはすべての注文に対して自分で設定した手数料率でコミッションを受け取ります。
これは、サードパーティに15〜30%を支払う代わりに、自分のプラットフォーム上でコミッション率を自由に設定できるGrubhubモデルです。
マーケットプレイス構築に必要なもの
- WooCommerce(無料):ECエンジンの基盤として
- MultiVendorX(無料):マルチベンダー機能のために
- GeoMarketplaceアドオン(プレミアム、 GeoDirectory Membershipに含まれています):WooCommerce + MultiVendorX + GeoDirectoryを一つのワークフローに統合するため
GeoMarketplaceはDokan、WCFM、WCVとも連携しており、MultiVendorXよりそちらのほうが好みであれば利用できます。
マーケットプレイス構築の手順
WooCommerceをインストール: プラグイン → 新規追加 → WooCommerceを検索 → インストールして有効化. WooCommerce のセットアップウィザードを実行します。

MultiVendorX をインストール: プラグイン → 新規追加 → MultiVendorX を検索 → インストールして有効化. MultiVendorX の設定で手数料のパーセンテージを設定します。

GeoMarketplace をインストール: AyeCode メンバーシップと AyeCode Connect が設定済みの場合は、 GeoDirectory → Extensions にアクセスして GeoMarketplace をインストールしてください。そうでない場合は、GeoMarketplace の ZIP ファイルを プラグイン → 新規追加 → プラグインのアップロード.
レストランリスティングにショップタブを追加: レストラン → 設定 → タブ → 「ショップ」タブを挿入 → 保存.

レストランオーナーが登録して販売する方法
WordPress メニューに2つのページを作成します: ベンダー登録 と ベンダーダッシュボード.

WordPress の一般登録を有効化: 設定 → 一般 → 「誰でも登録できる」.
GeoDirectory の場合: GeoDirectory → 一般 → 詳細設定を表示 → ログインなしで投稿を許可.

レストランオーナーは、次の4ステップで手続きを進めます:
- リスティング追加フォームからレストランを登録する(1ステップでリスティングとユーザーアカウントを同時に作成)
- パスワード設定用のメールを受け取る
- ベンダーダッシュボードからベンダー申請を行う
- 管理者(あなた)の承認後、リスティングに紐付けたWooCommerce商品としてメニュー項目を作成する

その商品は、商品作成フォームの GeoDirectory タブからレストランのリスティングにリンクされます。

管理者の承認後、メニュー項目はレストランのリスティングページの「ショップ」タブに表示されます。お客様はサイトを通じて注文し、各売上からコミッションが自動的に差し引かれます。
プレミアムレストランデータをメンバーログインの背後に隠す
本格的なレストランディレクトリの運営者は、最終的にダイレクト電話番号、オーナーのメールアドレス、予約リンク、プレミアムフォトギャラリーなどのプレミアムフィールドをメンバー登録でゲーティングしたいと考えるようになります。
GeoDirectory でこれを実現する最もスマートな方法は、弊社の無料 BlockStrap テーマと BlockStrap ページビルダープラグインを活用することです。どちらも UsersWP のメンバーシップティアに連動したブロックレベルの表示ルールをサポートしています。
これは、他のすべてのディレクトリプラグインとは根本的に異なるアプローチです。アーキテクチャの詳細な解説と実例については、弊社のガイドをご覧ください: ディレクトリサイト向けの最高のWordPressメンバーシッププラグイン.
レストランディレクトリを収益化するその他の方法
マーケットプレイス手数料に加え、レストランディレクトリに適した収益源がさらに3つあります:
有料プレミアムリスティング

レストランはカテゴリページや検索結果への優先掲載、追加の写真・動画、詳細な説明文、直接連絡リンクのために定期的な料金を支払います。
The Pricing Managerアドオン がリスティングのランク管理と定期課金を担います。
有料クレームリスティング

公開情報をもとに自分でレストランを登録し、レストランオーナーにリスティングの申請・管理に対して料金を請求します。
The クレームリスティングアドオン が申請のワークフローを管理し、Pricing Managerが有料アップグレードの流れを処理します。
広告を販売する

検索結果、カテゴリページ、ブログ投稿、またはホームページに広告枠を販売できます。広告はリスティング風のデザインにも、従来のバナー形式にもスタイリングできます。
Pricing ManagerおよびAdvertisingアドオンが販売とローテーションを管理します。
構築・運営にかかるコスト
正直なコスト内訳:
- ドメイン:年間$10〜15
- WordPressホスティング:月額$5〜15(年額$60〜180)
- GeoDirectory プラグイン:無料
- Kadence テーマ:無料(または Elementor パスの場合は Elementor PRO で年間 $59)
- AyeCode Connect プラグイン:無料
- WooCommerce:無料
- MultiVendorX:無料
- GeoDirectory Membership (GeoMarketplace + 収益化アドオン用):シングルサイト 年間 $139、または無制限サイト 年間 $229
マーケットプレイスと収益化レイヤーを備えたフルレストランディレクトリの初年度合計:ホスティングプランと選択するページビルダーのパスによって $215〜400。
Yelp(プレミアムページ)+ OpenTable + Grubhub 手数料でレストラン1店舗を1年間運営するコスト:オンライン注文がある程度ある店舗であれば、軽く $10,000 超。
ディレクトリ側はあなたに継続的な収益(手数料、プレミアム掲載、広告)をもたらします。プラットフォーム側は、永遠に他者へ家賃を払い続けることになります。
現実的なアプローチ
あなた自身が所有するレストランディレクトリを最速で立ち上げる方法は:
- ドメインと基本的なWordPressホスティングを購入する
- AyeCode Connectをインストールする
- Kadence レストランディレクトリデモをインポートする(お好みであれば Elementor PRO も可)
- ブランディング(ロゴ、カラー、タイポグラフィ)をカスタマイズする
- デモ掲載を実際のレストラン情報に置き換える
- 注文可能なメニューアイテムが必要な場合は GeoMarketplace スタックをセットアップする
- レストランオーナーが自分で登録できるようフロントエンド投稿を開放する
- Google Search Console にサイトマップを送信する
週末に集中して作業すれば、動くサイトが完成します。
最初の3ヶ月間、継続的にコンテンツ(エリア別グルメガイド、料理ジャンルまとめ、新店舗のお知らせ)を発信することで、SEOの基盤が築かれます。
6ヶ月目には、オーガニック検索が食事客とレストランオーナーからの問い合わせを生み出し始めます。
2年目には、あなたのレストランディレクトリが生み出す注文数、フィーチャー掲載、広告収益は、Yelp に1ヶ月分払う額では到底正当化できないほどのものになっているでしょう。
最後に
レストラン業界は「借り物の注目」で成り立っています。
Yelp、Grubhub、Uber Eats、DoorDash、OpenTable、TripAdvisor は、食事客とレストランの間に立ち、双方に紹介料を課すことで数十億ドル規模のビジネスを築いてきました。
自分自身のレストランディレクトリを持つオーナーは、そのような通行料を払わずに済みます。
技術的なセットアップは週末で完了します。無料の GeoDirectory plugin リスティング、地図、検索、レビュー、顧客アカウント、そしてマーケットプレイスのインフラをすべて管理します。
すべてのカテゴリにわたるSaaSディレクトリプラットフォームに対するより広範な反論については、こちらをご覧ください: best business directory software guide.
このチュートリアルの不動産版に相当する内容については、こちらをご覧ください: 不動産ウェブサイトの作り方.
スタックのメンバーシップ制限側については、こちらのガイドをご覧ください: ディレクトリサイト向けの最高のWordPressメンバーシッププラグイン.
デリバリーアプリから顧客を借りるのはやめましょう。
ディレクトリを構築しましょう。
GeoDirectory バージョン 2.1.1.0 では、待望の新機能が導入されました:
カスタムフィールドの条件付きロジック
この新機能により、 フィールド間の依存関係を、設定した条件に基づいて作成できます。
依存フィールドは、 入力された値 が依存先のフィールドで 正しい条件に一致する場合.
この機能はビジネスディレクトリリスティングに不可欠です。多くのカスタムフィールドを使用することで、該当する場合にのみプリセットフィールドを選択できるようになります。
わかりやすい例として、 Car Classified Listings.
のカスタムフィールドが挙げられます。おそらく、 「ブランド」。ユーザーはここで自動車メーカーを選択します(例: Ford, GMC、または Lamborghini.
また、モデル」では、選択したブランドの車のモデルを選択します。選択すると Ford、このフィールドには次のようなモデルが表示されます: C-Max, Fiesta, Focus, Fusion, Mustangなどです。
を選択した場合 Lamborghini、このフィールドには次のようなモデルが表示されます: Huracan, Aventador, Gallardo, Murcielago, Diablo, などなど。

この例を作成するために、セットアップに3つのカスタムフィールドを追加しました。ブランド、フォードモデル、ランボルギーニモデルです。
フォードモデルフィールドでは、ブランドフィールドでフォードを選択した場合にのみ表示されるよう条件を設定しました。
ランボルギーニモデルフィールドでは、ブランドフィールドでランボルギーニを選択した場合にのみ表示されるよう条件を設定しました。
それだけの簡単さです。
もう一つの具体的な例として、不動産リスティングが挙げられます。
フィールドの設定方法も含めた完全なチュートリアルを、私たちの WordPress Real Estate Theme.
不動産リスティングの条件付きフィールド
私たちの不動産リスティングデモには、 物件タイプ というラベルのフィールドがあり、 一戸建て, マンション・アパート、および 土地 といった選択肢と、もう一つ別のフィールドがあります。入力を求めるのは 家具付き/家具なしの状態。当然ながら、2番目のフィールドは 土地 物件には適用されません。
この場合、以下の手順で「Furnishing」セレクトカスタムフィールドに条件付きロジックを追加します。
1. Furnishingセレクトフィールドを開きます。
2. カスタムフィールドオプションの左下にある「+ Conditional Field」リンクをクリックします。

3 クリックすると、新しいオプション一覧が表示されます。

4 この例では、次のように設定する必要があります。
- ACTION = HIDE
- FIELD = Property Type
- CONDITION = equals to
- VALUE = Land
カスタムフィールドを保存します。以下にその表示例を示します。

設定後、フロントエンドでの表示結果は次のとおりです。

同じ条件を、土地を掲載する際には不要な寝室数や浴室数などの他のフィールドにも追加できます。
また、必要に応じて 複数の条件 を追加することもできます。
利用可能なオプションは次のとおりです:
- ACTION = SHOW/HIDE
- FIELD = すべてのフィールド
- CONDITION = empty, not empty, equals to, not equals, greater than, less then, contains.
- VALUE = テキストを受け付ける
各フィールドに好きなだけ追加できます。
あなたは何を作りますか? GeoDirectory の条件付きカスタムフィールド?
下のコメント欄でぜひ教えてください…
店舗や販売店への来客・売上アップに役立つWordPressストアロケータープラグインをお探しですか?
もしそうなら、ビジネスの成長を後押しするこれらのトッププラグインをぜひチェックしてみてください。
WordPressストアロケータープラグインは、お客様が購入したいときに迷わず来店できるようにするための優れた手段です。
店舗が複数ある場合は、「どこで買えるか」を案内するストアロケータープラグインの導入をおすすめします。
これらを使えば、すべての店舗を1つのページにまとめて掲載でき、訪問者が一覧で確認できます。
各リスティングに、店舗の場所を示すマップを追加することもできます。
現在、無料・有料を合わせて数千ものWordPressプラグインが公開されています。問題は、最適なものを見つけること。そこで私たちの専門家チームの出番です。
専門家チームが毎日ウェブを調査し、最良のWordPressプラグインを見つけ出してご紹介します。
優れたWordPressプラグインの中には、ビジネスの認知度向上や売上増加に貢献するものがあります。
WordPressストアロケータープラグイン 比較
では、最もおすすめのWordPressストアロケータープラグインはどれでしょうか?
理論上、複数のロケーションを追加できるGoogle Mapsプラグインであれば、ストアロケーターとして活用できます。
ただし、それだけでは物足りないという方もいるかもしれません。
この記事では、特に人気の高いプラグインをいくつか取り上げます。
また、リッチスニペットへの対応についても重点的に確認していきます。
ローカルビジネスの観点から見ると、リッチスニペットはSEOにおいて非常に重要であり、検索エンジンがビジネスに関する有益な情報を表示するのに役立ちます。
たとえば、レストランを運営している場合、リッチスニペットによってメニュー、営業時間、おすすめメニューなどが強調表示されます。
GeoDirectory

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +10000 | 4.7/5 | 週次 | 24時間以内 |
私たちのフラッグシッププラグイン、 GeoDirectoryは、このリストの中で最も高機能なショップロケータープラグインです。
Google Maps と OpenStreetMap に対応しており、他のほとんどのStore Locator WordPress プラグインには見られない多くの機能を備えています。
たとえば、Elementor および Elementor PRO と完全に統合されています。
ただし、私たちの言葉をそのまま信じる必要はありません。
こちらをご覧ください。
主な機能
これは完全無料です。
GeoDirectory には、サードパーティプラグインとのシームレスな統合や拡張機能を提供する多数のカスタム拡張機能があります。
- Google Maps および OpenStreetMaps API
- カスタム Google マップアイコン
- 現在地周辺の実店舗を検索(近接検索)
- 検索半径
- 実店舗の店舗ページ(各ページに地図、カスタム画像ギャラリー、連絡先情報、専用お問い合わせフォーム、カスタマーレビューを掲載)
- WordPress REST API の完全サポート
- ロケーション情報を表示するための無制限のカスタムフィールド
- ショートコードまたは Gutenberg ブロックとして、ほぼあらゆるコンテンツフィールドで使用できる幅広いウィジェット
- 無制限のロケーションとロケーションメタデータを追加する機能
- 店舗リストのエクスポート、インポート、一括編集のためのCSVマネージャー
- リッチスニペット対応 – はい!🙂
- Elementor、Divi、Oxygen、Bricks、Breakdance、Beaver Builderなど(ほんの一例)あらゆるページビルダープラグインに対応したレスポンシブデザイン
- WPML多言語プラグインとの連携
例:
- GeoLocation
- 高度な検索
- カスタム投稿タイプ さまざまな種類の店舗に対応するため
- リスティング申請 ビジネスオーナー向け
- カスタムデザインのGoogle Maps
- イベントロケーター (現在は無料プラグイン)
- SEOロケーションマネージャー 複数都市にまたがる店舗検索機能のため
- マップマーカークラスター その他多数。
もし ビジネスディレクトリサイトを構築する (お住まいの街向けの汎用店舗ロケーター)場合、ビジネスオーナーにマップへのリスティング掲載料を請求することもできます。
WordPressサイトに高度な店舗ロケーターを構築する必要がある場合、GeoDirectoryが最初の選択肢となるでしょう。
WP Store Locator

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +60000 | 4.8/5 | まれに | 24〜48時間以内 |
The WP Store Locator はすべてのロケーションをマップに追加できる無料プラグインで、自由にカスタマイズが可能です。
マップとナビゲーターは、お好みの言語で表示できます。
各ロケーションにカスタムラベルを追加し、近接半径やカテゴリーなど複数のフィルターを使って、ユーザーが近くのロケーションを見つけやすくなります。
WP Store Locator を使えば、任意の数の店舗を表示し、管理パネルからフロントエンドの言語を変更できます。
ショートコードは高度にカスタマイズ可能で、サイトのフロントエンドに何を表示するかを自由に選択できます。
営業時間・閉店時間、別住所、ランドマーク、電話番号など、さまざまな情報を表示できます。
このWPプラグインにはカスタムマーカーが搭載されており、ユーザーがマップ上でドラッグして希望のロケーションを設定できます。
さらに、近くに複数の店舗がある場合には、マーカークラスタリング機能も利用できます。

全体として、このプラグインは非常に機能が豊富で、あらゆるユーザーのニーズに対応できます。
ただし、最大のデメリットとして、多くのプラグインではデフォルトで利用できる一部の機能が、アドオンに依存しなければならない点が挙げられます。
たとえば、一括インポート、詳細な統計情報、検索ウィジェットなどは、WP Store Locator ではアドオンを使って管理するのが基本です。
主な機能
- ローカライズに対応し、多言語プラグインとの相性も良好
- フロントエンドでマーカークラスターを表示できる機能
- Google Maps API 経由のジオロケーションに対応
- ユーザーの要件に基づいてCPTを並べ替えるカスタムフィルターを搭載
- リッチスニペット対応 – なし(部分的なサポートあり。ただし、個別エントリーページではローカルビジネスのリッチスニペットは使用されません)
Yoast Local SEO for WordPress

Yoast は WordPress SEO において事実上のリーダー的存在となっています。
彼らのメインSEOプラグインは無料で、 Local SEO pluginに支えられており、主にストアロケーターとして利用されています。
Local SEO by Yoastでは、ユーザーが半径やZIPコードで店舗やその他の場所を絞り込むことができます。
店舗のストアロケーターページへの住所追加、営業時間・閉店時間の指定、ショートコードを使ったカスタム情報の追加が可能です。
このプラグインは、サイドバーやフッターに店舗の所在地情報を表示するカスタムウィジェットもサポートしています。

とはいえ、YoastのLocal SEOに関する最大の問題は、無料版が存在しないことです。
さらに重要なのは、これは厳密な意味での本格的なストアロケータープラグインではないという点です。
あくまでも、主流のYoast SEOプラグインのコンパニオンプラグインです。
Yoast SEOとのシームレスな統合を提供し、メタデータやXMLサイトマップなどを処理します。ただし、他のプラグインが持つような追加機能は備えていません。
最後に、店舗にバーチャルロケーションがある場合、このプラグインは最適な選択ではないかもしれない点も覚えておく価値があります。
価格 – $79 + VAT
主な機能
- Yoast SEOプラグインとの緊密な統合を提供
- WooCommerceとの連携に優れており、WooCommerce商品に場所固有の機能を追加できます。
- KMLファイルの生成をサポートし、関連情報を検索エンジンのXMLサイトマップに自動的に追加できます
- リッチスニペット対応 – あり
Locatoraid Store Locator

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +2000 | 4.5/5 | まれに | 1週間以内 |
Locatoraid Store Locatorは、フロントエンド表示に対応した多数のカスタマイズ可能なスタイルを備えた、もう一つの軽量プラグインです。
動作方法に関しては、Locataraidはこのリスト上の他のすべてのプラグインと同じアプローチを採用しています。
顧客が閲覧できる店舗ロケーションの追加が可能で、店舗ロケーションをよりシンプルに表示するカスタムショートコードをサポートし、テキスト検索・半径検索・近接検索などを備えたマップを挿入できます。

さらに、Locataraidにはカスタムウィジェットと高度にカスタマイズ可能なマップスタイルも付属しています。
ただし、デメリットとして、ジオロケーションの設定が難しく、Locataraidは近くの店舗ロケーションを取得するためにユーザーが住所やZIPコードを手動で入力することを主に求めているようです。
これは時間がかかり、一部のユーザーにとってはちょっとした手間になるかもしれません。
主な機能
- カスタマイズ可能な柔軟なマップスタイル
- 複数のロケーションとカスタムフィールドをサポート
- 数クリックでロケーションを一括インポートする機能
- リッチスニペットのサポート – なし(部分サポート;単一エントリーページはローカルビジネスリッチスニペットを完全にはサポートしていません)
Agile Store Locator

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +10000 | 4.9/5 | 頻繁 | 48時間以内 |
Agile Store Locator は、Google Mapsを使用してウェブサイトのフロントエンドにマップをレンダリングする便利なWordPressプラグインです。
このWPプラグインはジオロケーションとカスタムフィールドをサポートし、マップ表示に関する十分なカスタマイズ機能を提供しています。
ただし、無料版はZIPコード・市区町村・国などの手動入力に基づいた店舗の検索または位置特定のみが可能なようです。
主な機能
- Google Maps および Google Geocoding API
- カスタムフィールドのサポート
- 多言語サポート
- マップをさまざまな言語で表示する機能
- リッチスニペット対応 – なし
WP Go Maps(旧称:WP Google Maps)

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +400000 | 4.8/5 | 頻繁 | 48/72 hrs |
WP Go Maps は厳密にはストアロケータープラグインではなく、Google MapsとOpen Street Mapsに対応したマッピングプラグインです。
40万以上のアクティブインストール数を誇る、非常に人気の高いプラグインです。
無料版では、マップ上を右クリックするだけで1つのマップを作成でき、店舗の場所を見つけるために必要なすべての情報を含む無制限のマップマーカーを追加できます。
無料版では、ウェブサイトの訪問者が住所と半径で検索できます。
無料版の主な機能:
- 住所を入力するだけで無制限のマップマーカーを追加
- Elementor マップブロック
- ボタン1つでマップマーカーを編集
- マップマーカーを正確な位置にドラッグ
- 翻訳サポート
- マップの幅・高さ・ズームレベルを自由に設定
- マップマーカーにアニメーションを追加!
- ストアロケーター検索を国ごとに制限
- マップにポリゴンを追加
- マップにポリライン/ルートを追加
- Google Maps オートコンプリート
- マップの最大ズームレベルを設定する
- データベースまたはXMLファイルを使ってマップマーカーデータを配信する
Store Locator Plus for WordPress

| アクティブインストール数 | 評価 | アップデート | サポート |
|---|---|---|---|
| +7000 | 4.3/5 | 頻繁 | 不安定な |
Store Locator Plus を使えば、管理する店舗数に関わらず、ウェブサイトに店舗検索機能を作成できます。
固有の設定なしでページを作成し、デフォルトの場所を指定して、店舗検索ページにショートコードを追加することができます。
このプラグインは、店舗を検索するシンプルな検索バーをサイトに追加したい方に最適です。
高度にカスタマイズ可能なオプションをお探しであれば、Store Locator Plus for WordPress は最初に思い浮かぶ選択肢ではないかもしれません。
カスタムアドオン(有料拡張機能)をこのプラグインに追加して、さらなる機能を利用できます。
検索オプションの有効化・無効化、場所のカテゴリ分け、各エリアのSEOに特化したページの作成などが可能です。
このプラグインを最大限に活用するには、いくつかのアドオンや拡張機能を導入する必要があります。
たとえば、店舗情報とソーシャルメディアリンクを統合したり、場所データにカスタムフィールドを追加したりするには拡張機能が必要です。
Store Locator Plus は Gravity Forms および Event Location Manager ともシームレスに連携し、イベントをビジネスの所在地に紐付けることができます。
最後に、有料アドオンなしで複数の国と言語に対応しています。
主な機能
- 複数の国と場所のサポート
- さまざまな言語でローカライズ済み
- 追加できる場所の数に上限はありません
- HTMLとCSSの調整で簡単にカスタマイズ可能
- サイトを最大限に活用するための豊富な有料アドオンと拡張機能
- WordPress REST APIをサポートしており、WPをヘッドレスCMSとして使用したり、モバイルアプリと統合したりすることができます。
- リッチスニペットには対応していません
警告:このプラグインは、セキュリティ上の問題によりwp.orgプラグインディレクトリから長期間停止されていました。
問題は現在解決されたようですが、その対応はかなり不誠実なものでした。
まとめると…
この記事では、ウェブサイトにストアロケーター機能を構築するのに役立つ、人気の高いWordPressプラグインをいくつかご紹介しました。
それぞれに特徴と機能がありますが、ほとんどのユーザーは上記のプラグインのいずれを使っても満足できるでしょう。
どれを使うべきか?それはあなたの要件次第です。
たとえば、Yoast SEOとの統合が唯一の条件であれば、Yoast製のLocal SEOが明らかな選択肢です。
一方、無料版で最も幅広い機能を備え、充実したプレミアム拡張機能のラインナップを求めているなら、GeoDirectoryがあなたのサイトにとって最良の選択です。
あなたはどのストアロケターWordPressプラグインを好みますか?その理由は?ぜひコメント欄でご意見をお聞かせください!
AyeCodeはアフィリエイトマーケティングが大好きです!
アフィリエイトマーケティングは、GeoDirectoryを現在の成功へと導いた要因の一つです。
2011年にGeoDirectoryの前身であるGeoThemeをリリースした際、アフィリエイトプログラムと数人の優れたアフィリエイトマーケターのおかげで、最初の製品が注目を集め、軌道に乗ることができました。
それにより、私たちはオーディエンスを築くことができました。
アフィリエイトマーケティングは、初日から黒字を維持し、成長し続けてこられた理由の一つであることは間違いありません。
現在も私たちはアフィリエイトマーケティングに依存しており、アフィリエイトコミッションとして年間5桁の金額をパートナーに支払っています。
現在277名のアフィリエイターがいますが、そのうちの7名がアフィリエイトプログラムで生み出す収益の80%を占めています。
つまり、数多くのアフィリエイターは必要なく、少数の優れたアフィリエイターがいれば十分だということです。
ちなみに、もし アフィリエイトプログラムへの参加をご希望の場合、各販売につき30%のコミッションをご提供しており、 こちらから登録できます.
アフィリエイトマーケティングとは?
ご存知でない方のために説明すると、eコマース業界におけるアフィリエイトマーケティングとは、サードパーティのウェブサイトを経由して紹介された各販売に対してコミッションを提供する仕組みです。
アフィリエイトプラグインを使えば、このプロセスを自動化できます。
あなたの商品を宣伝したいウェブサイトのオーナーは、あなたのウェブサイトのアフィリエイトプログラムに登録することができます。
プラグインはパートナーに「特別なリンク」を提供し、パートナーのウェブサイト上のその特別なリンクをクリックしてあなたのストアに訪問者が訪れるたびに追跡します。
同じ訪問者があなたの商品やサービス、またはプレミアムリスティングを購入した場合、アフィリエイトプラグインがそのコミッションを記録します。
月末には、すべてのコミッションの支払いレポートを生成し、アフィリエイトパートナーに支払いを行うことができます。
ディレクトリにアフィリエイトプログラムを導入すべきか?
プレミアムリスティングを販売しているなら、絶対にやるべきです!今すぐ始めましょう…
まだ始めていないなら、オンラインビジネスの可能性を最大限に活かせていません。
経験豊富なディレクトリ開発者なら、ディレクトリの収益化がいかに難しいかをよく知っています。特に、立ち上げたばかりの頃はなおさらです。
しっかりと設計されたアフィリエイトマーケティングプログラムは、その課題を大きく解決してくれます。
たとえば、地域ビジネスディレクトリの場合、地元のローカルSEO業者、Web開発者、マーケティングエージェンシーに声をかけ、地域のクライアント向けにプレミアムリスティングを購入するたびに報酬が得られることを伝えることができます。
彼らのクライアントが、あなたのクライアントになるのです!
アフィリエイトパートナーは、ターゲットを絞ったトラフィックをもたらすだけでなく、被リンクプロフィールを強化し、ひいてはSEO(検索エンジン最適化)にも貢献します。
多くのアフィリエイトパートナーは、自分のウェブサイト上でアフィリエイトリンクをクロークします。また、「nofollow」タグを付けるパートナーもいます。
しかし、一定の割合のパートナーは「dofollow」リンクを100%提供してくれ、それぞれの被リンクがあなたのサイトの検索順位に大きな差をもたらす可能性があります。
GeoDirectoryと組み合わせるアフィリエイトプラグインは何がいい?
つい最近まで、選択肢は一つしかありませんでした。しかも、始めるためにそのプラグインと連携アドオンを購入する必要がありました。
ディレクトリがすでに一定の収益を上げていない限り、初期投資はやや高く感じられたかもしれません。
今では、迷う必要はまったくありません。 おすすめはこちら SliceWP!
SliceWPは最新の WordPress向けアフィリエイトプラグインで、 コアプラグインは無料で、驚くほど使いやすく、開発者がGetPaidプラグインとの完全な互換性を実現しました。
その結果、GeoDirectoryとも互換性があります!
無料プラグインだけでも十分に始められますし、優れたアフィリエイトパートナーを数人(3〜4人)獲得できれば、収益に大きなインパクトをもたらすでしょう。
これは試す価値あり!やり方を見せてください!
これが簡単なステップです。文字通り数分で完了します。
すでにGeoDirectoryをインストールし、以下を使って有料プレミアムリスティングを販売していると仮定します。 GeoDirectory Pricing Manager Add-on および GetPaid プラグイン.
1. SliceWPをインストールする

に移動します プラグイン > 新規追加、検索して SliceWP、クリックします Install Now と 「有効化」。これにより セットアップウィザード.
2. セットアップウィザードを完了する

- 選択してください GetPaid
- 以下を設定してください: 販売コミッション率、サブスクリプションコミッション率、通貨、クッキーの有効期間 と 訪問者がアフィリエイトとして登録できるようにする.
- 必要なページを作成してください: アフィリエイト登録ページ、アフィリエイトログインページ、 と アフィリエイトアカウントページ
- 必要な通知をすべて有効にする(全4件)
- 必須オプションの設定が完了しました。もう少しで終わりです。クリックして 設定を確認する SliceWPの設定を微調整してください
ここでは、必須ではない以下のようなオプションで最終的な調整ができます:
- 税金を除外する
- 返金時にコミッションを却下する
- ゼロ金額コミッション
- アフィリエイト自身のコミッション
その他いくつかのオプションもあります。
これ以降、アフィリエイトパートナーが紹介したすべての売上が追跡され、コミッションが記録されます。
バックエンドでのコミッションの表示はこのようになります:

スターターテーマを使用した場合のフロントエンドでのアフィリエイトアカウントの表示はこのようになります:

サイト管理者として、アフィリエイトパートナーの登録を管理することができます。リファーラルや訪問を追跡し、クリエイティブ素材(ロゴやバナーなどのマーケティング素材)を追加することもできます。
支払いファイルは開始日と終了日を指定して簡単に作成でき、最低金額を設定することもできます。
SliceWP プレミアム機能
これだけでは物足りない場合は、複数のプレミアムアドオンからお選びいただけます。
非常にリーズナブルな価格で、以下のような追加機能を利用できます:
- 生涯コミッション
- カスタムアフィリエイトフィールド
- 継続コミッション
- 商品別コミッション率
- アフィリエイトコミッション率
その他多数。
以上です!
テストしたい場合は、こちらのデモで試すことができます: https://demos.ayecode.io/starter/
新規アフィリエイトの登録はこちらからできます:
https://demos.ayecode.io/starter/affiliate-registration/
アフィリエイトとしてのログインはこちらからできます:
https://demos.ayecode.io/starter/affiliate-login/
アフィリエイトアカウントページはこちらです:
https://demos.ayecode.io/starter/affiliate-account/
SliceWP をお楽しみいただければ幸いです。ご質問がございましたら、下のコメント欄にお気軽にどうぞ。
免責事項
AyeCode は現時点で SliceWP とは提携関係になく、出資等の利害関係もございません。純粋に気に入っているから、そして開発者の方々が GetPaid との互換性を快く実装してくださったから、読者の皆さまにおすすめしています。
あらゆるオンラインディレクトリ開発者にとって、素晴らしい追加機能だと思います。
WordPressで不動産物件掲載ディレクトリを構築する際の核心は、ページビルダーまたはテーマフレームワークの選択という、ひとつのアーキテクチャ上の決断にあります。
2026年において有力な選択肢は、BlockStrap(無料のReal Estate Listingsテーマのベースとなるフレームワーク)、Elementor PRO、そしてKadenceテーマの3つです。
3つすべてがGeoDirectoryとスムーズに連携し、1時間以内に機能する不動産サイトを構築できます。
それぞれのトレードオフは明確であり、始める前に理解しておく価値があります。
この記事では、Elementor PROのルートとKadenceのルートをステップバイステップで解説するとともに、どちらを選ぶかの判断基準も紹介します。
3つ目の選択肢(推奨するBlockStrapのルート)をご希望の場合は、こちらのガイドをご覧ください 不動産ウェブサイトの作り方。このガイドでは、不動産ユースケース向けにあらかじめ設定されたReal Estate ListingsテーマをつかってReal Estate Listingsテーマを使った同じワークフローを順を追って説明しています。
どのルートがどの運営者に向いているか
BlockStrap + Real Estate Listingsテーマ(推奨)
BlockStrapフレームワーク上に構築された無料のReal Estate Listingsテーマは、不動産サイトを最も早く立ち上げられるルートです。
ネイティブのWordPressブロックを使用するため(ページビルダーへの依存なし)、通常のホスティング環境でも高速に表示され、不動産専用のデザインが最初から搭載されています。
これは私たちの 不動産ウェブサイトの作り方 ガイドで詳しく説明しているパスです。
これを選ぶべき場合:ページビルダーの継続費用なしで、最もシンプルかつ迅速なセットアップを望む場合。
Elementor PRO
Elementor PRO は、WordPress エコシステムの中で最も柔軟なビジュアルページビルダーです。
カスタムレイアウト、リスティングテンプレート、アーカイブページ、検索結果をビジュアルでデザインでき、GeoDirectory との深いダイナミックデータ連携も実現します。
トレードオフ:Elementor PRO には年間 $59 のサブスクリプション(エントリープラン)が必要で、フロントエンドの負荷が増えるため高品質なホスティングが有利になります。また、ネイティブブロックのアプローチよりも学習曲線が急です。
これを選ぶべき場合:完全なデザインの自由度が必要な場合、すでに他のサイトで Elementor を使用している場合、またはチームに Elementor で作業するデザイナーがいる場合。
Kadence Theme
Kadence は人気の無料 WordPress テーマで、オプションの有料アドオン(Kadence Pro、Kadence Blocks Pro)も用意されています。
BlockStrap のようなネイティブ Gutenberg ブロックを使用しますが、スタイリングとテーマアーキテクチャは異なります。
トレードオフ:Kadence は一般的な WordPress サイトには優れていますが、Real Estate Listings テーマのように不動産に特化したものではありません。汎用的なサイトではなく不動産サイトらしいデザインに仕上げるために、カスタマイズに時間がかかります。
これを選ぶべき場合:すでに他のサイトで Kadence を使用していてスタック全体の一貫性を保ちたい場合、または BlockStrap より Kadence 独自のデザインシステムを好む場合。
Path A: GeoDirectory + Elementor PRO
ステップ 1:WordPress ホスティングをセットアップする
すでに空の WordPress サイトが用意されている場合は、このステップをスキップしてください。
Elementor PRO を使用する場合は特に、RAM 2GB 以上・SSD ストレージを備えたホスティングプランを選ぶことをおすすめします。Elementor はフロントエンドの負荷が増えるため、高速なインフラが有利です。
マネージド WordPress ホスト(Kinsta、WP Engine、Cloudways、SiteGround)は、基盤となる最適化を自動的に処理してくれます。
ステップ 2:Elementor と Elementor PRO をインストールする
WordPress 管理画面から、 Plugins → Add New.
検索してください Elementorをインストールして有効化します(無料版)。

次に Add New → Upload Plugin をクリックし、Elementor アカウントから ZIP ファイルをアップロードして Elementor PRO をインストールします。
Elementor PRO は有料サブスクリプションで、エントリープランは年額 $59 からです。Elementor.com から直接ご購入ください。
ステップ 3:AyeCode Connect プラグインをインストールする
に移動します Plugins → Add New.
検索してください AyeCode Connect.

クリックして インストールする、次に 「有効化」.
新しい AyeCode メニュー項目が WordPress サイドバーに表示され、AyeCode と Import Demo Data の 2 つのサブメニューが含まれます。
ステップ 4:AyeCode デモライブラリに接続する
Click the Connect Site ボタンをクリックして登録します(すでに AyeCode アカウントをお持ちの場合はログイン)。
登録は無料です。

この接続により、AyeCodeはライセンスをお持ちのプレミアムアドオンを自動的にインストールします。ライセンスをお持ちでない場合でも、プレミアム機能なしでデモをインストールできます。
ステップ5:Elementor不動産デモをインポートする
に移動します AyeCode → デモデータのインポート.
以下のデモを選択してください Real Estate (Elementor).

クリックして 表示、次に インポート.
インポートにより、GeoDirectoryプラグイン、不動産ディレクトリアドオン、Elementor専用テンプレート、およびデモ物件リストのセットがインストールされます。
インポートが完了したら、サイトを確認してください。カスタマイズの準備が整った、Elementorベースの不動産ディレクトリが完成しています。
パスB:GeoDirectory + Kadenceテーマ
Kadenceのパスは、別途ページビルダーをインストールしたり購入したりする必要がないため、Elementorのパスよりもシンプルです。
ステップ 1:WordPress ホスティングをセットアップする
Elementorのパスと同様ですが、Kadenceは軽量なため、予算が制約となる場合は低価格のホスティングを利用できます。
ステップ2:AyeCode Connectプラグインをインストールする
上記のElementorパスと同じ手順に従ってください。
ステップ3:AyeCodeデモライブラリに接続する
Elementorパスと同じ接続プロセスです。
ステップ4:Kadence不動産デモをインポートする
に移動します AyeCode → デモデータのインポート.
今回は以下のデモを選択してください 不動産(Kadence).

クリックして 表示、次に インポート.
インポートにより、GeoDirectory プラグイン、Real Estate Directory アドオン、無料の Kadence テーマ、およびデモ物件リストのセットがインストールされます。
事前に他のものをインストールする必要はありません。Kadence は無料、GeoDirectory は無料、Real Estate Directory アドオンも無料です。
インポート後(両方のパス)
インポート後のカスタマイズは、どちらのパスでも同様です:
- プレースホルダーのロゴをブランドマークに置き換える
- テーマカスタマイザーで色とタイポグラフィを調整する(Kadence の場合は 外観 → カスタマイズ、BlockStrap ベースのテーマの場合は 外観 → エディター、Elementor PRO の場合は テンプレート > テーマビルダー)
- サイト構造に合わせてメニューナビゲーションを編集する(ホーム、リスト、エージェント、エリア、お問い合わせ)
- デモ物件リストを実際の物件に置き換える。場所は スポット WordPress 管理画面内
- お問い合わせフォームとリード獲得フローを設定する
- Google Search Console にサイトマップを送信する
デモリストの置き換えや不動産特有の機能(住宅ローン計算機、エネルギー評価、ウォークスコア、バーチャルツアー)の設定についての詳しいガイドは、こちらをご覧ください: 不動産ウェブサイトの作り方 ガイドで詳しく説明しているパスです。
パフォーマンスに関する注意事項
パス間には注目に値する実質的な違いが一つあります。
Elementor PRO を使用したサイトはフロントエンドの負荷が大きく、高品質な WordPress ホスティングが効果を発揮します。格安の共有ホスティングでは、Elementor ベースの不動産サイトは、同じコンテンツを運用する Kadence または BlockStrap ベースのサイトと比べて、体感的に明らかに遅くなります。
これは Elementor の欠点ではなく、Elementor をこれほど強力にしているビジュアルの柔軟性に伴うコストです。
Kadence や BlockStrap のようなネイティブブロックテーマは、よりクリーンな HTML を出力し、フロントエンドで必要な JavaScript が少ないため、通常の WordPress ホスティングでも高速に動作します。
モバイルでの高速読み込みが求められる不動産サイト(物件閲覧の大半はモバイルで行われます)では、ネイティブブロックのパスが実際のパフォーマンス面で優位に立ちます。
デザインの柔軟性がパフォーマンスとのトレードオフを正当化する不動産サイト(高級物件リスティング、強いブランドアイデンティティを持つ代理店など)では、Elementor PROが引き続き最強の選択肢です。
現実的なアプローチ
不動産物件ディレクトリを始めるほとんどの運営者には:
無料の BlockStrap + Real Estate Listingsテーマのルート が、最もシンプルで、高速かつ低コストの出発点です。
Kadenceのルート(上記参照)は、すでに他のサイトでKadenceを使用していてスタックの一貫性を求める場合に最適な選択です。
Elementor PROのルート(こちらも上記参照)は、デザインの柔軟性が必要で、それを支えるホスティング予算がある場合に最適な選択です。
3つのルートはすべて同じ基盤となる GeoDirectory plugin 、そして無料の 不動産ディレクトリアドオンで動作するため、物件リスティング、検索、マップ、住宅ローン計算機、エネルギー評価、ウォークスコア、バーチャルツアーの各機能は、どのルートを選んでも同様に動作します。
WordPressの不動産プラグインのより広範な比較(GeoDirectory対Easy Property Listings、Estatik、WPL、およびMLSに依存するオプションを含む)については、 WordPressに最適な不動産リスティングプラグインガイド.
すべてのディレクトリカテゴリにわたるSaaSディレクトリプラットフォームへの反論の詳細については、こちらをご覧ください: best business directory software guide.
最後に
不動産物件ディレクトリに最適なページビルダーは、既存のワークフロー、ホスティング予算、そしてデザインの柔軟性へのニーズに合致するものです。
3つの有力なルート(BlockStrap、Elementor PRO、Kadence)はいずれも、GeoDirectoryのデモインポートを使用して1時間以内に機能する不動産サイトを構築できます。
ほとんどの運営者にとっては、無料で速いものが勝ちです。
特定のデザインやワークフロー要件を持つ運営者にとっては、有料のElementor PROのルートは依然として投資に値します。
自分に合ったルートを選び、AyeCode Connectをインストールし、デモをインポートして、今日の午後中に機能する不動産物件ディレクトリを公開しましょう。
WordPressディレクトリテーマのニッチはどのように始まったか
この旅を始めたとき、WordPressディレクトリテーマのニッチには他にほんの数社のプレイヤーしかいませんでした。
GeoPlaces by Templatic と Directorypress by PremiumPress.
当時、StiofanとI私はまだ互いに知り合いではありませんでした。私たちはディレクトリを構築するためにTemplatic のテーマを購入した後、Templateticのフォーラムで出会いました。
しかし、Templateticには欠陥が多く、バグだらけで、ライブウェブサイトの開発に使用するには不向きであることがわかりました。
Stiofanはそれを使い始め、修正を加えながら自分のために機能させていきました。それが彼のBarraディレクトリウェブサイトへと発展しました。
テーマの80%以上が大幅な修正を必要としていたため、私たちはチームを組んでフォークし、代替製品を作ることにしました。
そうして私たちはGeoThemeを作りました。その後、AppThemesからVantageがリリースされ、次々と類似製品が登場するようになりました。
現在、ThemeForest.netにはWordPress ディレクトリテーマとして163件(増加中)がリストアップされています(前回確認時は157件でした)。
その他にも複数の独立したテーマショップが、独自のWordPress ディレクトリテーマを販売しています。
GeoThemeは2年以上前に廃止されました。私たちはそれをGeoDirectoryというプラグインに転換することを決めました。これにより、ウェブマスターは自分のニーズに合わせた形で自由に活用できます。
これにより、テーマやウェブサイトに何も変更を加えることなく、既存のあらゆるウェブサイトにディレクトリ機能を追加することができます。
選択肢がこれほど多い中、2021年にはどれを選べばよいのでしょうか?
私たちの第一のおすすめは Listimia + GeoDirectory です。理由は明らかでしょう。Listimiaは2019年6月にリリースされており、こちらの デモ.
でご覧いただけます。価格はわずか$39で、GeoDirectoryを中心に設計されているため、WordPressで最も機能豊富なディレクトリテーマとなっています。洗練されていて、エレガントで、プロフェッショナルなデザインであることも言うまでもありません。
もし私たちと一緒にこの道を歩まないとしても、少なくとも賢明な選択ができるようにお手伝いします。
そのために、私たちは最も人気のある7つのWordPress ディレクトリテーマを購入・インストール・テストし、ディレクトリ分野の専門家として厳密かつ客観的なレビューをお届けします。
長所を称え、短所を明らかにするために。
アフィリエイトリンクに関する開示
私たちの努力を評価していただけると幸いです!すべてのテーマを購入するために$500を投資しており、その費用を回収する必要があります。この記事内のリンクの一部は「アフィリエイトリンク」です。つまり、そのリンクをクリックして商品を購入された場合、私たちはアフィリエイト報酬を受け取ることになります。
テスト基準
まず、テストするテーマを7つに絞ることにしました。ThemeForest.netで現在最も売れているテーマ4つと、Google.comの検索結果(SERP)で「WordPress directory theme」というキーワードで上位3位にランクインしているテーマです。
それらは:
1) Listify by Astoundify
2) Listable by Pixelgrade
3) ListingPro by Cridio Studio
4) MyListing by 27collective
5) DirectoryEngine by EngineThemes
6) Vantage by AppThemes
7) Directory by Templatic
以下の点についてテストと評価を行います:
1) 使いやすさ
2) デザインの質
3) 柔軟性
4) SEOベストプラクティスの活用
5) サポートとドキュメントの質
6) コードの質、WordPressベストプラクティスの活用、およびスケーラビリティ
なぜこのテーマや他のテーマもレビューしなかったのですか?
時間の制約があるためです。テーマは何百種類もあり、すべてをレビューすることはできませんでした。市場での支持が最も高いテーマを選びました。
Listify by Astoundify
使いやすさ
このテーマのインストールとセットアップは、これ以上ないほどシンプルでした。
セットアップガイドを使えば、5分以内にステージングサイトを構築できます。
唯一面倒な部分は、Google Maps APIキーを取得する手順です。インストールウィザードの他のどのステップよりも手間がかかりました。
著者の方々には、ぜひ私たちの API KEY for Google Maps plugin.
を参考にしていただきたいと思います。数ステップかかる手順を、わずか数クリックに簡素化する方法がわかるはずです。
デザインの品質
Listifyのデザインは優れており、カスタマイズも簡単です。コーディングやCSSの知識がほとんどないユーザーでも使いこなせるでしょう。
「カスタマイザー」セクションにはスタイルキットや各種オプションが用意されており、ロゴ、要素の色、ラベル、タイポグラフィなどのウェブサイトスタイルを変更できます。
柔軟性
このテーマは実際には WP Job Managerというサードパーティのプラグインで動作しているため、
フィールドやリンクの管理に関する組み込みオプションはほとんどありません。
最初に試したかったのはカスタムフィールドで、Listifyがどのように投稿のメタデータを扱うかを確認したかったからです。
実際には、フィールドの扱いがあまり得意ではないことがわかり、驚きました。
フロントエンドのリスト追加フォームやリスティングページにカスタムフィールドを追加したい場合は、子テーマにコードスニペットを追加するか、さらに別のプレミアムプラグインを購入する必要があります。
その結果、カスタムフィールドによる検索フィルタリングは利用できません。フィルタリングは、場所・カテゴリー・キーワード・タグで行うことができます。
FacetWPというプレミアムプラグインを追加することで機能を拡張できますが、実際にはテストしていないため、どこまで対応できるかはわかりません。
ListifyはWPMLと互換性がありますが、多言語サイトの構築にはPolylangが推奨されています。
SEOベストプラクティスの活用
ロケーションフィールドはタクソノミーです。そのため、このテーマはローカルディレクトリに適しています。複数の地域を持つ成功したウェブサイトをゼロから立ち上げるのは、ほぼ不可能かもしれません。
カテゴリーと場所で検索・フィルタリングができます。ただし、リスティングのアーカイブを閲覧できるのは、場所かカテゴリーのいずれか一方のみです。複数の都市のリスティングを持つディレクトリにとって、これはSEO上の大きな制限となります。
サンディエゴの「プライベートルーム」リスティングをListifyのデモで確認したい場合、検索エンジンを使うしか方法がありません。返ってきたURLをコピーすると:
新しいブラウザウィンドウに貼り付けても、サンディエゴの「プライベートルーム」リスティングは表示されず、汎用的な検索結果ページが表示されるだけです。
これはSEOにとって好ましくありません。
類似した検索結果ページに対して、SEO YoastでSEOメタを管理することはできません。
適切なタイトルがなく、適切なメタもなく、「サンディエゴのプライベートルーム」でGoogleがサイトをインデックスするのに役立つURLの要素も何もありません。
優れたディレクトリであれば、以下のような構造でアーカイブが存在するべきです:
listify-demos.astoundify.com/rentals/united-states/california/san-diego/single-room
その構造であれば、固有のメタタイトルとメタディスクリプションを割り当てることができ、100% SEO最適化が実現します。
ListifyはRichスニペットに対応していますが、可能な限り最も基本的な方法で統合されています。
サポートとドキュメントの品質
ドキュメントは充実しており、わかりやすいです。サポートも丁寧で効率的です。
製品ページのコメントから問い合わせを送信したところ、24時間以内に返答を受け取りました。
コードの品質、WordPressベストプラクティスの活用、およびスケーラビリティ
初期状態では、カスタムフィールドを使用しないため、Listifyはスケーラブルであり、WordPressの投稿やページと同様の形式をとっています。
コードスニペットやプラグインを通じてカスタムフィールドを追加すると、パフォーマンスはすぐに低下します。これはカスタムフィールドがデータベースに保存される仕組みによるものです。
コードコメント:全体的にコードの品質は良好で、重要な関数の多くにコードコメントが付いていますが、コメントがまったくないものや説明が不十分なものも多く残っており、WordPressの標準を満たしているとは言えません。
アクション&フィルター:テーマには134個のdo_action()と187個のapply_filters()があり、これは好ましいことです(一般的に、アクションとフィルターが多いほど、開発者にとって扱いやすくなります)。
エスケープ処理(セキュリティ):良好で、WP標準を満たしているようです。
Listifyの結論
優れたデザインと素早いセットアップは明らかなメリットですが、残念ながらこのテーマは完全に他のプラグインに依存しています。私たちの見解では、Wp Job Managerはビジネスディレクトリを構築するうえで理想的とは言えません。
AstoundifyはすでにAstoundifyに売却され、新しい開発者がどのような方針をとるか不明なため、Listifyが最初にテストした時と同様に安定しているかどうかは保証できません。最新のアップデートを確認する時間が取れた際には、こちらでご報告します。
Listable by Pixelgrade
使いやすさ
Listableは非常に良い第一印象を与えましたが、前のものほどスムーズで速くはありませんでした。
数分の作業で、私のステージングサイトはListableの公式デモに近い見た目になりました。
ListableはMapboxとの統合を備えています。MapboxはGoogle Mapsの代替手段ですが、1日に提供される地図ビューは1600回のみで、それを超えるとかなり高額になるため、あまり良い選択とは言えません。
Google Mapsも利用可能です。ただし、APIキーを手動で追加する必要があり、手間がかかります。Listableの開発者は、私たちがAstoundifyチームに提案した内容を参考にしてほしいところです。
デザインの品質
Listableの最大の強みは、洗練されたピクセルパーフェクトなデザインです。
カスタマイザーのオプションでは、ほとんどの要素を編集できます。カラースキームの変更、フォントの管理、またはカスタムCSSの追加も可能です。
柔軟性
Listifyと同様に、Listableの最大の弱点はディレクトリを動かすプラグインです。WP Job Managerは、ビジネスディレクトリとしては理想的とは言い難いと思います。
同様に、カスタムフィールドを作成するには、追加の有料プラグインか追加のコードが必要です。唯一の違いは、Locationがタクソノミーではなく、投稿メタであるという点です。
追加のタクソノミーとしてリスティングタイプが提供されています。管理者専用のように見えたため、その使い道がよくわかりませんでした。
ListableはWPMLと完全に互換性があります。実際にテストして、個人的に確認済みです。
SEOベストプラクティスの活用
Locationフィールドはタクソノミーではなくカスタムフィールドですが、Listifyで見られたものと同じ問題が生じます。
Googleが複数の都市のカテゴリーアーカイブをインデックスすることはありません(複数の都市がある場合)。
ニューヨークを含む複数の都市に立地するホテルのディレクトリは、「Hotels in New York」のようなキーワードでは上位表示されません。
この構造では、単一の都市またはハイパーローカルなディレクトリのみを作成する方が適しています。
Listableはリッチスニペットをサポートしていますが、その実装は基本的なものにとどまっています。
サポートとドキュメントの品質
ドキュメントは充実しており、わかりやすく、サポートも丁寧かつ効率的です。
製品ページのコメントから1件問い合わせを送ったところ、12時間以内に回答を受け取りました。
コードの品質、WordPressベストプラクティスの活用、およびスケーラビリティ
初期設定の状態では、Listableはカスタムフィールドを使用しないため、Listifyと同様にスケーラブルです。
しかしListifyと同様に、カスタムフィールドを追加しようとすると、パフォーマンスの問題がすぐに発生します。
コードコメント:一部のコードコメントは存在しますが、ほとんどの関数にはコメントがなく、コメントのあるものもWP標準を満たしていません。
アクション&フィルター:このテーマには141個のdo_action()と136個のapply_filters()があります(一般的に、アクションとフィルターが多いほど、開発者にとって扱いやすくなります)。
エスケープ処理(セキュリティ):概ねWP標準に沿っており良好ですが、バックエンド関数内であってもすべてのPOSTデータをエスケープしてほしいところです。
Listableの総評
デザインは優れており、セットアップも簡単ですが、Listifyと同じ問題を抱えています。WP Job Managerを採用したことで、その可能性が制限されてしまっています。
また、ほとんどのプラグインが有料であるため、すべてをテストすることができませんでした。すべて購入すると、総費用は300ドルを超えてしまいます。
たとえば、有料リスティング、リスティングの申請、ブックマーク、リスティングタグをテストすることができませんでした。すべての収益化オプションは追加費用が必要です。
Listifyに対して述べた考慮事項は、Listableにも同様に当てはまります。GeoDirectoryと互換性がないのは残念です。現在の会員の多くが購入していたでしょう。
ListingPro by Cridio Studio
使いやすさ
ListingProでは、最初からスムーズにいきませんでした。アーカイブを解凍すると、中に5つのzipファイルが入っていました:
- Documentation-1.0.zip,
- listingpro.zip,
- listingpro-Bulk-import-addon.zip,
- listingpro-child.zip, および Live-demo-Content.zip。
親テーマと子テーマの両方をインストールし、子テーマを有効化しました。セットアップウィザードページにリダイレクトされましたが、最初のステップで必須プラグインと推奨プラグインのインストールが求められました。このステップが失敗し、先に進むことができませんでした。
サポートに問い合わせる必要がありましたが、幸いなことに返答はとても迅速でした。すべてをセットアップするには親テーマを有効化する必要があると説明されました。これはプロセスに不具合があることを示しています。親テーマと子テーマのどちらを有効化しても、動作が変わってはならないはずです。
セットアップ時に親テーマを先に有効化する方が望ましいなら、子テーマのzipファイルを非表示にして、他のすべての設定が完了した後に子テーマをインストール・有効化するステップをセットアップウィザードに追加すればよいのではないでしょうか?(Listifyのように。)
いずれにせよ、親テーマを有効化した後は問題が解消され、公式デモに近いステージングサイトでテストを開始することができました。
作者はデフォルトのGoogle Maps APIキーを追加しており、ユーザーが初めてサイトにアクセスした際に地図上でエラーが表示されないようにしています。
これには良い面と悪い面があります。
最初にユーザーにエラーを表示しないようにする点は良いことです。しかし、そのAPIキーはすぐに利用上限に達してしまいます。変更を忘れたユーザーには地図のエラーが表示されることになります。それが、サイトが公開された後に起こる可能性があり、状況はさらに深刻です。
また、前の2つのテーマと同様に、ListingProではMaps APIを自動的に取得することができません。
デザインの品質
ListingProのフロントエンドデザインは非常に優れており、カスタマイズオプションも無限にありますが、ダッシュボードでの色の過剰使用は少々気になり、すぐに目障りになってしまいます。
プラグインやテーマが、WordPressのUIにそのオリジナルのスタイルや要素を使って自然に溶け込んでいることが私は好みです。
ListingProはスタイリングやカスタマイズオプションにテーマカスタマイザーを使用していません。すべてのオプションがダッシュボードのテーマ設定にまとめられているため、スタイルの変更をリアルタイムでプレビューすることができません。
柔軟性
ListingsPro は、すべてのディレクトリ機能を内蔵したWordPressディレクトリテーマです。テーマのディレクトリ機能を動かすためにサードパーティのプラグインに依存しません。
これは特に予算が限られている方にとって大きなメリットです。
WP Job Managerとは異なり、ListingsProはカスタムフィールドに対応しています。作成できるフィールドの種類は、テキスト、チェックボックス、チェックボックス(オン/オフ切り替え)、複数チェック、ラジオ、セレクトです。
カスタムフィールドは詳細検索フィルターとして使用できず、「追加ビジネス情報」としてのみ利用されます。詳細検索フィルターはあらかじめ設定されており、管理者が編集することはできません。フィルターの種類は、価格、営業時間、高評価順、レビュー数順、カテゴリーです。
ロケーションはタクソノミーであり、リスト追加ページではロケーションの選択が必須です。そのため、全国規模のディレクトリを構築したい場合は、その国のすべての都市を事前に登録しておく必要があります。
適切なバリデーションがないため、(有効でなくても)ある都市の住所を入力しながら、ロケーションとして別の都市を選択することができてしまいます。これは設計が雑であり、設計者によるより深い検討が求められます。
もう一つ提供されているタクソノミーは「特徴(features)」です。特徴はカテゴリーに依存しており、あるタクソノミーの中に別のタクソノミーが入れ子になっています。
ListingProには2つの収益化オプションがあります:有料リストと広告です。有料リストでは、いくつかのオプションの有効・無効を切り替えることができます。
表示・非表示を切り替えられる項目:連絡先情報、Googleマップ、動画、ギャラリー。
有料広告では、リストオーナーがテーマの注目エリアに追加インプレッションを購入するオプションが提供されます。これは非常に興味深い機能ですが、実装はかなり基本的なものです。たとえば、1つの広告スロットに対して設定できる価格と掲載期間はそれぞれ1種類のみです。
このテーマで私たちが最も気に入っているのはユーザーダッシュボードです。非常によく考えられています
SEOベストプラクティスの活用
ListingProは、前の2つのテーマと同様にこの点で同じ欠点を持っています。ロケーションでフィルタリングされたカテゴリーの検索エンジン向けアーカイブを提供していません。
複数の都市をカバーするディレクトリには適していませんが、リスト数が限られたハイパーローカルや単一都市のディレクトリには使用できます。
ListingProはリッチスニペットに対応していません。
サポートとドキュメントの品質
ドキュメントは100%完成しておらず、検索もできません。サポートは非常に効率的で、コメントを1件投稿すると数分以内に返信がありました。チケットシステムの利用を勧められましたが、それはポジティブで使いやすい体験でした。
コードの品質、WordPressのベストプラクティスの活用、スケーラビリティ
データベースへのデータ保存方式を見ると、ListingProはパフォーマンスとスケーラビリティの観点から、これまでテストした中で最もパフォーマンスの低いテーマです。すべてが投稿と投稿メタとして保存されます。リスティング、価格、広告、レビュー、請求書、クレームはすべて投稿タイプです。
合計9件のリスティングで、wp_postテーブルに82行、wp_postmetaテーブルに1340行が存在しました。
このテーマを使って何千ものリスティングを持つディレクトリを構築しようとすると、ホスティングに莫大なコストをかけない限り、事実上不可能です。
コードコメント:一部の処理には非常に基本的なコメントが存在しますが、全体的にほとんどの箇所にコメントがありません。WP標準を満たすコメントは見つかりませんでした。
アクション&フィルター:このテーマには14個のdo_action()と31個のapply_filters()があります(一般的に、アクションとフィルターが多いほど開発者にとって扱いやすくなります)。
エスケープ(セキュリティ):エスケープ処理が非常に不十分で、基本的なチェック中に極めて深刻なXSSの脆弱性が発見されました(作者に報告済みです)。
ListingProの総評
デザインは優れており、非常に良いアイデアもありますが、全体的には未熟な製品であり、重大なアーキテクチャ上の欠陥が多すぎます。
Templatic の GeoPlaces を思い起こさせます。
作者がこのプロジェクトのグラフィック面を非常に詳細に研究したことは明らかです。しかし同時に、コードを書いた人物が高パフォーマンスでスケーラブルなアプリケーションの構築経験をほとんど、あるいは全く持っていないことも明白です。
コードのセキュリティ確保についても習得が必要です。コードの観点では、これはテスト済みテーマの中で3番目に評価の低いテーマです。
ListingProは現時点では、本番環境での運用には適していないというのが私たちの見解です。
MyListing by 27collective
使いやすさ
MyListingをマルチサイトネットワークにインストールしようとしましたが、WP All Importを使ってデモを再現するのに苦労しました。WP All Importはダミーデータをインポートしてデモを作成するために推奨されているツールです。これが既知の問題なのか、それとも何かを見落としたのかは定かではありません。
スタンドアロンの WordPress にインストールして試したところ問題は解消され、ほんの数秒で公式デモに非常に近いデモが動作する状態になりました。
MyListingには以下のプラグインのインストールが必要です:
- Wp Job Manager
- WooCommerce
- Elementor
- All-in-One WP Migration
- Contact Form 7
このため、高パフォーマンスのサーバー上でのみ、高速なページ読み込みが期待できます。
デモでさえ特別に速いわけではなく、20か所からテストした場合の平均読み込み時間は7.4秒です。
実際のディレクトリサイトでは、これは非常に高い直帰率につながります。
この統計を得るために、この 速度テストツール を使用しました。
これまでテストしてきた他のテーマと同様に、MyListingもMaps APIを自動的に取得することができません。
デザインの品質
MyListingはElementorプラグインとの統合度が高く、多くのカスタマイズオプションを提供しています。Elementorページビルダーを使って、ほぼすべてのデザインを行うことができます。
ホームページ、探索ページ(検索)、およびいくつかのテンプレートをカスタマイズできます。ただし、リスティング詳細ページは編集できません。
全体的なデザインの質は素晴らしいですが、タイポグラフィが現代の標準からするとやや小さく、目に負担がかかると感じます。
MyListingも、WordPressの標準に従わず、スタイルやカスタマイズオプションにテーマカスタマイザーを使用しない別のテーマです。
柔軟性
MyListingはディレクトリのベースとしてWP Job Managerを使用しており、ListifyやListableと同じ制限を共有しています。一部のテーマオプションにはAdvanced Custom Fieldsプラグインを統合し、独自のカスタムフィールドシステムも構築しています。
料金はWooCommerceで商品として設定され、支払いの管理もWooCommerceが行います。
私たちの意見では、これは少し多すぎます。他のあらゆるeコマースシステムがディレクトリに不要なコードを過剰に追加してしまうため、GeoDirectoryの支払い管理のために Invoicingプラグイン という軽量なプラグインを開発しました。
たとえば、何も発送しないウェブサイトに、荷物の配送を管理するシステムが組み込まれてしまいます。
SEOベストプラクティスの活用
MyListingも、この点では前述の3つのテーマと同じ欠点を抱えています。カテゴリーと場所にカスタムタクソノミーが使用されているため、特定の場所の1つのカテゴリーのリスティングを表示するページを、SEO最適化されたきれいなURLで表示することが不可能です。
MyListingはリッチスニペットに対応していますが、いくつかのエラーも見られます。
サポートとドキュメントの品質
ドキュメントは充実しており、左サイドバーのスティッキーメニューから閲覧できます。サポートは実際にはテストしていませんが、非効率または質の低いサポートに関するネガティブなレビューは見当たらないため、しっかり対応できているのでしょう。
コードの品質、WordPressベストプラクティスの活用、およびスケーラビリティ
カスタムフィールドにデフォルトのWordPressアーキテクチャを使用しているため、MyListingのスケーラビリティは大きな問題になるでしょう。5枚の画像を含む1件のテストリスティングを作成したところ、wp_postsデータベーステーブルに7行、wp_postmetaデータベーステーブルに59行が生成されました。
MyListingの総評
見た目は確かに魅力的で、Elementorによるカスタマイズも簡単なため、ディレクトリサイト開発を始めたばかりの方には優れたツールです。しかし、このテーマで構築されたほとんどのプロジェクトは、サイトにトラフィックが集まり始めると、ビジネスを拡大するうえで非常に苦労することになるでしょう。
このテーマは以下のインストールを強制します:
Wp Job Manager、Wp Job Manager WC Paid Listings、Elementor、WooCommerce、そして独自のMyListing Add-onです。これ以上肥大化しようがないほどです。
なぜほぼすべてのレビューが星5つで、否定的なレビューが一切ないのか不思議に思う方もいるでしょう。このテーマで確認した欠陥を考えると、これは非常に不審に感じました。
どうやら、否定的なレビューを残したユーザーはサポートやアップデートを受けられないようにBANされているようです。
そこで調べてみると、Envatoは特定の商品で返金を受けたユーザーのレビューを削除していることがわかりました。これはEnvatoによる非常に悪質なビジネス慣行だと思います。
これがMyListingの作者が顧客に対して行う標準的な行動だと主張するつもりはありませんが、彼らが否定的なフィードバックへの対応に苦慮していることは個人的に断言できます。なぜなら、このレビューを修正するよう直接私に連絡してきたからです。
否定的なフィードバックを個人への侮辱と受け取り、批判する人を魔女狩りするのではなく、製品を改善するための情報として活かすことをお勧めします。
MyListingで見栄えの良いウェブサイトを作ることはできますが、ある程度のトラフィックが集まると使い物にならないほど遅くなります。
DirectoryEngine by EngineThemes
使いやすさ
プラグインがバンドルされているテーマは好みではありません。バンドルされたプラグインはほとんどの場合古いバージョンのままだからです。バンドルプラグインは自動更新できない(別途ライセンスを購入しない限り)ため、FTP経由で1つ以上のプラグインを更新することからインストールを始めなければなりません。
DirectoryEngineには2つのバンドルプラグインが付属しています:Revolution SliderとVisual Composerです。もちろん、どちらも古いバージョンであり、FTP経由で更新する必要がありました。
ドキュメントにはWP Importerプラグインを使ってダミーデータをインストールするよう記載されており、テーマには自動的にインポートするツールが用意されています。
前述の3つのテーマすべてと同様に、Google Maps APIキーは手動で生成する必要があります。
全体として、デモサイトに近いステージングサイトを構築するのにおよそ15分かかりました。それほど悪くはありません。
デザインの品質
デザインの質は高いですが、前の3つのテーマほどピクセルパーフェクトで比肩できるレベルではありません。
カスタマイザーのオプションでは、ホームページのセクションとサイト全体の基本カラーの変更のみが可能で、実質的なデザインオプションはほとんどありません。
柔軟性
DirectoryEngineは、カスタムフィールドをすぐには扱えないWordPressディレクトリテーマのひとつです。追加することはできますが、 プログラムによる実装のみ.
カスタムフィールドを作成できなければ、検索フィルターとして使用することもできません。
カスタム投稿タイプは4つあります:Places(場所)、Events(イベント)、Packs(パック)、Testimonials(お客様の声)。
Placesはリスティングに使用されます。
Eventsは、リスティングオーナーが追加できる特別オファーです。
Packsはリスティング価格に使用されます。
Testimonialsは明確に定義されておらず、明らかな用途もありません。
リスティング価格は無制限に作成できますが、その機能はユーザーが入力できるPlacesとEventsの数、および掲載期間の制限に限られます。リスティングが受け入れられる写真数やカテゴリ数を設定する項目もありますが、それはすべての価格プランに影響します。
ロケーションはタクソノミーのアイテムです。
ListingProと同様に、リスティングを追加する際に都市から住所を選択できますが、ロケーションフィールドでは別の都市を選択することもできます。
執筆時点で、DirectoryEngineはリリースから数年が経過しており、これは受け入れがたいと感じます。さらに問題なのは、ドキュメントでこれを「機能」として説明していることです:
SEOベストプラクティスの活用
DirectoryEngineは、これまでテストしたすべてのテーマと同じSEO上の欠点を抱えています。
ロケーションがタクソノミーである以上、指定したロケーションで絞り込んだ特定カテゴリのリスティングアーカイブを閲覧する方法がありません。唯一の手段は検索エンジンを利用することですが、それはSEOフレンドリーではありません。
ロケーションの管理方法は、良く言っても素人レベルです。DirectoryEngineで作成したウェブサイトを主要な検索エンジンで上位表示できるのは、ディレクトリが1つの都市または比較的狭い地域のリスティングのみを対象としている場合に限られます。
DirectoryEngineはリッチスニペットを正しく使用しています。
サポートとドキュメントの品質
ドキュメントはやや古い部分もありますが、テーマのすべての機能をカバーしています。サポートは初回の問い合わせに24時間以内に返信しました。しかし2回目、テーマの深刻な脆弱性を報告した際には、まったく返信がありませんでした。
コードの品質、WordPressベストプラクティスの活用、およびスケーラビリティ
4件のリスティング、7件のイベント、3つの価格プランで、postテーブルとpostmetaテーブルにはそれぞれ311行と936行が存在します。ここにもListingProと同じスケーラビリティの問題が見られます:乗り越えられないレベルです。
コードコメント:ほとんどの箇所にコードコメントがあり、大部分はWordPressの標準に準拠していますが、パラメータの説明が全般的に不足しています。それでも、大多数のテーマと比べれば優れています。
アクション&フィルター:このテーマにはdo_action()が100箇所、apply_filters()が137箇所あります(一般的に、アクションとフィルターが多いほど開発者にとって扱いやすくなります)。
エスケープ処理(セキュリティ):このコードの確認を始めたところ、最初の3箇所でXSS、ログインページのなりすまし、サイトのコンテンツの閲覧・削除が可能な脆弱性が見つかりました。
DirectoryEngineの総評
このテーマに大きな期待を寄せていましたが、実際にテストしてみて、失望せざるを得ないというのが正直な感想です。数年にわたって提供されてきた製品であるにもかかわらず、広く使われているにもかかわらず、いまだに重大な欠陥が残っています。個人的な用途で購入していたなら、迷わず返金を求めていたでしょう。
このテーマの背後には間違いなく優れたデザイナーの存在が感じられますが、バックエンドのアプリケーションの品質はやや素人っぽい印象を受けます。
開発者はセキュリティとスケーラビリティについてほとんど知識がないと言わざるを得ません。このテーマを自分のサイトにインストールすることは、誰にもお勧めできません。
Vantage by AppThemes
Vantage は数年前から存在しており、このリストの中で最も成熟した製品です。最近リデザインされ、以前から直接の競合相手として注目してきました。ようやく実際に触れて、きちんと評価できる機会を楽しみにしていました。
使いやすさ
Vantage のインストールとセットアップは非常に快適な体験でした。セットアップガイドは Listify のインストールウィザードに匹敵する出来栄えです。5分も経たないうちに、AppThemes のオリジナルデモに近いデモサイトを立ち上げることができました。
唯一の弱点は Google Maps API キーの設定が必須である点で、前の4つのテーマと同様に、もう少しシンプルにできるはずです。
デザインの品質
新しいフラットデザインはモダンでクリーンであり、旧来の Vantage デザインと比べると大幅な進歩と言えます。
カスタマイザーのオプションでは、ロゴやサイトアイコンなどのサイトIDに関する要素を変更できます。カラースキーム、個々のアイテムの色、背景画像、レイアウトなども設定可能です。
柔軟性
これまでテストした5つのテーマの中で、Vantage はカスタムフィールドを本当の意味で扱える初めてのテーマです。ただし、高度な検索フィルターとして使用できないため、本来の可能性を十分に発揮できているとは言えません。
所在地フィールドはテキストフィールドです。ユーザーが入力した内容から自動的に緯度・経度の座標を計算します。このフィールドにはバリデーションがないため、ユーザーはほぼ何でも入力できてしまいます。無効な住所を入力した後にフォームを保存すると、PHP の警告が表示されます。
価格オプションでは、定期課金・非定期課金の設定が可能です。ユーザーが各リスティングに選択できるカテゴリ数を制限したり、リスティングの掲載期間や、検索・カテゴリアーカイブでのおすすめ表示ステータスを設定したりすることもできます。
初期状態で利用できる支払いオプションは PayPal と銀行振込です。追加費用がかかる追加の決済ゲートウェイ、子テーマ、その他のプレミアム拡張機能も用意されています。今回はこれらのテストは行いませんでした。
SEOベストプラクティスの活用
他のテーマと同様、Vantage のロケーション機能も理想的とは言えません。複数のロケーションに登録されたリスティングを持つ、まともなディレクトリ構造を作るには不十分です。
リスティング詳細ページとカテゴリページはランク付けできますが、ロケーションによるランク付けはできません。これは、ロケーション別にリスティングを閲覧する唯一の方法が、SEOに不向きな結果ページを返す検索エンジンを経由することだからです。URLは次のようになります:
yoursite.com/listings/?ls=test&location=milan&st=listing&lat=0&lng=0
これらの検索結果ページに固有のメタタイトルや説明文を設定する方法がありません。そのため、Google などの検索エンジンが関連するキーワードやロケーションでこれらのページをランク付けする可能性は非常に低いです。
Vantage はリッチスニペットに対応していますが、最も基本的な方法での実装にとどまっています。
サポートとドキュメントの品質
この WordPress ディレクトリテーマのドキュメントは充実しており、4つのセクションに非常にわかりやすく整理されています:
- ドキュメント – インストールガイド、リリースノートなど。
- チュートリアル – テーマとプラグインのチュートリアルライブラリ。
- 開発者向け – APIドキュメント。当社製品を拡張できます。
- 販売者向け – マーケットプレイスの出品者向けドキュメント。
サポートはとても親切で助かります。サポートフォーラムからサポートリクエストを送ったところ、24時間以内に回答をいただけました。
コードの品質、WordPressベストプラクティスの活用、およびスケーラビリティ
Vantageは、ディレクトリに最適なデータベース構造を採用していません。リスティングがわずか3件の時点で、wp_postsテーブルにはすでに49行、wp_postmetaには246行のデータがありました。カスタムフィールドを追加すると、後者の数字は指数関数的に増加します。
十分なリソースを高性能なサーバーインフラに投資しなければ、スケーラビリティの問題がすぐに発生する可能性があります。
コードコメント:コメントが非常に充実しており、ほとんどのコードコメントがWP標準に準拠しています。これほど質の高いコードコメントを見ると、開発者に安心感を与えます。
アクション&フィルター:このテーマには238件のdo_action()と230件のapply_filters()があります(一般的に、アクションとフィルターが多いほど、開発者にとって扱いやすくなります)。
エスケープ処理(セキュリティ):セキュリティとWP標準は十分な水準を満たしていました。重大な問題は確認されませんでした。
Vantageの結論
優れたデザインと優秀なセットアップ手順。数分以内にディレクトリを構築して使用できます。単一都市のディレクトリとして効果的に活用できます。
ただし、地域・国・世界規模のディレクトリには適していません。SEOにも不向きです。
テストした7つのテーマの中で、Vantageが総合的に最も優れた製品であると結論づけざるを得ません。
Directory by Templatic
使いやすさ
最初のリリース時にこのテーマをテストしましたが、あまり印象的ではありませんでした。しかし、最新バージョンには良い意味で驚かされました。高速で、インストールが簡単で、ダミーデータのインポートも容易です。数分でデモサイトと同一のステージングサイトを構築することができました。
その改善の度合いは目を見張るものがあります。
デザインの品質
2014年初頭に最初にリリースされた当時はモダンでスタイリッシュなデザインでしたが、現在では少々時代遅れになってきています。異なるデザインの子テーマもいくつか提供されていますが、いずれも追加費用が発生します。
デザインオプションの一部はカスタマイザーセクションにあり、一部はテーマ設定にあります。すべてカスタマイザーにまとまっていた方が便利でしょう。
柔軟性
Directoryは、テストした7つのテーマの中で、機能面において圧倒的に最も柔軟性の高いテーマです。
カスタム投稿タイプ(リスティングタイプ)に対応しており、各カスタム投稿タイプに対してあらゆる種類のカスタムフィールドを作成できます。さらに、すべてのカスタムフィールドを詳細検索フィルターとして使用することができます。
テーマのデータベースにはすべての国と約4,000の地域が登録されています。リスティングを追加すると市区町村が自動的に作成されますが、タイプミスやその他のデータベースエラーが発生した場合に統合するツールがありません。ユーザーがデータベースに場所を追加できる場合、これは見逃せない問題です。
不思議なことに、地域と国が存在するにもかかわらず、リスティングを地域や国で絞り込んで閲覧することはできず、市区町村のみに限られています。他の5つのテーマと比べれば一歩前進ですが、理想にはまだ遠い状態です。理想的なディレクトリには、「すべての場所」・国・地域・市区町村・近隣エリアで閲覧できるオプションが含まれているべきです。
収益化やビジネスの機会が非常に充実しています。価格設定の柔軟性も高く、「単発投稿」または一定数のリスティングを含む「サブスクリプション」に対して料金を設定できます。定期払いまたは一括払いにも対応しています。また、カテゴリごとにアップセル価格を追加することも可能です。さらに、パッケージの期間やリスティングの注目掲載といったオプションも設定できます。
SEOベストプラクティスの活用
Directoryを使えば、カテゴリ+ロケーションでフィルタリングされたアーカイブをようやく表示できるようになりますが、タイトルやメタ情報の管理における柔軟性はほぼ皆無に等しい状態です。カテゴリの説明文を作成することはできますが、すべてのロケーションで同じ内容になってしまいます。
理想的なSEO最適化ディレクトリツールには、まだまだ程遠い状況です。
DirectoryはリッチスニペットをサポートしていますSが、その実装は最も基本的なレベルにとどまっています。
サポートとドキュメントの品質
ドキュメントは非常によく整理されており、検索も簡単です。サポートチームは24時間以内にリクエストへ返信してくれましたが、かなりシンプルな質問であったにもかかわらず、内容を理解してもらえませんでした。
コードの品質、WordPressのベストプラクティスの活用、スケーラビリティ
Templaticのテーマといえば、バグの多いコードが最も印象に残っています。Directoryも例外ではありません。
保存されないオプション、セキュリティホール、そして不完全なデータベース構造が見つかりました。
データベース構造は、テストしたすべてのテーマの中で最悪です。13件のリスティング、15ページ、4件の投稿で、postテーブルには105行、postmetaには1,308行が存在します。
さらに、高度な検索ウィジェットのクエリはSQLを大量消費します。フィルタリングするカスタムフィールドごとに、postmetaテーブルをJOINする仕組みになっています。
このDirectoryテーマを数百件を超えるリスティングに拡張するのは、ほぼ不可能に近いでしょう。
コードコメント: 大部分には何らかのコードコメントが付いており、WP標準に沿っているものもありますが、すべてではなく、おそらく50/50といったところです。
アクション&フィルター: このテーマには487個のdo_action()と319個のapply_filters()があります(一般的に、アクションとフィルターの数が多いほど、開発者にとって扱いやすくなります)。
エスケープ処理(セキュリティ): 大部分はエスケープされていますが、まだ多くの箇所が未処理であり、バックエンドでのXSSにつながる可能性があります。全体的にコードは雑然としており、多くのPHP警告や通知が発生しているほか、メール送信やSQLインジェクションといった基本的なセキュリティチェックが随所で欠落しています。
以上の点を踏まえると、Directoryは自分のサーバーで運用したいとは思えないものです。
Directoryのまとめ
4年前のGeoPlacesと比較すると、このテーマは大きく改善されており、特に新機能やオプションの面でその進歩が顕著です。しかし、根本的な構造は同じままで、スケーラビリティの低さとバグの多さは変わっていません。
最終まとめ
テストしたテーマの半数がこれほどコード品質の低いものだったことには、非常に驚かされました。
同様の製品は、私たちの見解では、WordPressの評判を損なう恐れがあります。
バックエンドアプリケーションの品質は、常にデザインの品質と同等か、それ以上でなければなりません。
デザインの基準を満たせない場合、お客様は約束されたものと一致しない製品を受け取ることになります。
もちろん、私たちはテーマの作者に対して潜在的な脆弱性について報告しました。私たちの知る限り、ListingProの作者はすでにXSSの脆弱性を修正しています。
それ以外では、Vantageが1位、Listifyが2位、Listableが3位、ListingPro・MyListing・Directoryが同率4位、DirectoryEngineは群を抜いて最下位です。
後半の4つのテーマは、私たちの意見では本番サイトへの使用には適していません。
ディレクトリテーマの作者の皆様へ
テーマのディレクトリ機能をゼロから構築したり(または専用でないプラグインを使用したり)する必要があるでしょうか?
もし今日ECテーマを開発しなければならないとしたら、ショッピングカート全体を自前で構築しますか?それともWooCommerceを使いますか?
疑いなく、GeoDirectoryはテストしたすべてのテーマに含まれるディレクトリ機能より大幅に優れています。
その間違いを修正し、寄せられるサポートリクエストの約90%を私たちに任せる機会はまだあります。
競争より協力の方が良いですよね 🙂
この詳細なレビューをお楽しみいただけたでしょうか。追加したいことがあれば、ぜひ下のコメント欄にご記入ください!
WordPressでBodyにクラスを追加する
多くの場合、自動生成されたクラスだけでは不十分なため、カスタムクラスを追加する必要があります。
カスタムクラスを追加するには、WordPressのフィルターを使用します:
- body_class
以下に、最もよくリクエストされる例のスニペットをご紹介します。
ただし、まず初心者の方にBodyクラスについてもう少し説明するための簡単な概要をお伝えします。
WordPressのカスタムBodyクラスは、WordPressの開発者であれば遅かれ早かれ対処する必要があるものです。
ほとんどの場合、必要なのは数行のコードだけなので、プラグインを使用するのは大げさすぎます。
では、WordPressのカスタムBodyクラスを追加するにはどうすればよいのでしょうか?
WordPressには body_class 関数 と body_class フィルター (フック)があります。
body_class 関数はテーマ内で使用され、WordPressが自動生成したクラスをウェブサイトのbodyタグに追加します。
テーマの header.php ファイルへの追加方法は次のとおりです:
<body <?php body_class($class); ?>>
アクセスされたページに応じて、WordPressは特定のクラスを出力します。
1) デフォルトの「Hello World」投稿のボディクラスは以下のとおりです:
<body class="single single-post postid-1 single-format-standard logged-in admin-bar no-sidebar customize-support">
2) サンプルページのボディクラスは以下のとおりです:
<body class="page page-id-2 page-template-default logged-in admin-bar no-sidebar customize-support">
3) カテゴリアーカイブページのボディクラスは以下のとおりです:
<body class="archive category category-uncategorized category-1 logged-in admin-bar no-sidebar hfeed customize-support">
4) 著者アーカイブページのボディクラスは以下のとおりです:
<body class="archive author author-admin author-1 logged-in admin-bar no-sidebar hfeed customize-support">
5) ホームページのボディクラス(ホームページが設定されている場合)
<body class="home blog logged-in admin-bar no-sidebar hfeed customize-support">
上記の5つの例は、管理者ユーザーがログインしている状態で、ほとんどのデフォルトテーマに共通するものです。
ログアウトしている場合、クラスは若干異なります。
HTMLのクラスは、CSSを使ってウェブページをスタイリングするために使用されます。
以下のスニペットをfunctions.phpファイルにコピーすると、ウェブサイトのマークアップに新しいカスタムボディクラスが追加されます。
ここでは body_class フィルターを使用します。
WordPressカスタムボディクラスの追加
function my_custom_body_class($classes) {<br />
// add 'my-class' to the default autogenerated classes, for this we need to modify the $classes array.<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class');
これにより、ウェブサイトのすべてのページのbodyタグに新しいクラス「my-class」が追加されます。
<body class="home blog logged-in admin-bar no-sidebar hfeed my-class customize-support">
2つ以上のクラスを追加したい場合は?
2つ以上のWordPressカスタムボディクラスの追加
function my_custom_body_classes($classes) {<br />
// add 'my-class' and 'my-class-2' to the default autogenerated classes, for this we need to modify the $classes array.<br />
$classes[] = 'my-class';<br />
$classes[] = 'my-class-2';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom classes via body_class filter<br />
add_filter('body_class','my_custom_body_classes');
結果は次のようになります:
<body class="home blog logged-in admin-bar no-sidebar hfeed my-class my-class-2 customize-support">
CSSでカスタムスタイルを適用したい特定のページにのみボディクラスを追加したい場合は?
特定のページへのWordPressカスタムボディクラスの追加
これはいくつかの方法で実現できます:
1) ページIDを使ってカスタムボディクラスを追加する
function my_custom_body_class_id($classes) {<br />
// add 'my-class' only to page with ID 1.<br />
if ( is_page( '1' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_id');
IDが2のページにはカスタムクラスが追加され、他のすべてのページには追加されません。
<body class="page page-id-2 page-template-default logged-in admin-bar no-sidebar my-class customize-support">
2) ページスラッグを使用してカスタムボディクラスを追加する
function my_custom_body_class_slug($classes) {<br />
// add 'my-class' only to page with slug contact-form.<br />
if ( is_page( 'contact-form' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_slug');
これにより、スラッグが contact-form のページにカスタムクラス「my-class」が追加され、他のすべてのページにはカスタムクラスが追加されません。
3) ページタイトルを使用してカスタムボディクラスを追加する
function my_custom_body_class_title($classes) {<br />
// add 'my-class' only to page with title Contact Form.<br />
if ( is_page( 'Contact Form' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_title');
これにより、タイトルが Contact Form のページにカスタムクラス「my-class」が追加され、他のすべてのページにはカスタムクラスが追加されません。
4) ページテンプレートを使用してカスタムボディクラスを追加する
function my_custom_body_class_template($classes) {<br />
// add 'my-class' only to pages using my custom template.<br />
if ( is_page_template( 'my-custom-page-template' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_template');
これにより、テンプレート my-custom-page-template を使用しているページにカスタムクラス「my-class」が追加されます。他のすべてのページにはカスタムクラスが追加されません。
カテゴリーまたはタグページにも、IDまたはカテゴリー/タグのスラッグを使用してカスタムクラスを追加できます。
カテゴリーまたはタグアーカイブにWordPressのカスタムボディクラスを追加する
1) カテゴリー
function my_custom_body_class_category($classes) {<br />
// add 'my-class' only to the my-category archive.<br />
if ( is_category( 'my-category' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_category');
2) タグ
function my_custom_body_class_tag($classes) {<br />
// add 'my-class' only to the my-tag archive.<br />
if ( is_tag( 'my-tag' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_tag');
これにより、カテゴリー my-category およびタグ my-tag のアーカイブページにのみカスタムボディクラスが追加されます。
カテゴリー my-category に属するすべての投稿、またはタグ my-tag が付いたすべての投稿の個別ページにも、カスタムボディクラスを追加できます。
in_catgeory および has_tag 関数を使用します。
1) カテゴリー(アーカイブページと個別ページの両方)
function my_custom_body_class_in_category($classes) {<br />
// add 'my-class' to the my-category archive and single posts of the category.<br />
if ( in_category( 'my-category' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_in_category');
2) タグ(アーカイブページと個別ページの両方)
function my_custom_body_class_has_tag($classes) {<br />
// add 'my-class' to the my-tag archive and single posts with that tag.<br />
if ( has_tag( 'my-tag' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_has_tag');
これら最後の2つの例では、アーカイブページと個別ページの両方にカスタムクラスが追加されます。
各投稿にカテゴリー名をWordPressカスタムボディクラスとして追加する
カテゴリーのニックネームをカスタムボディクラスとして各投稿に追加したい場合は、次のスニペットが必要です。
function my_custom_body_class_category_in_single($classes) {<br />
if (is_single() || is_category()) {<br />
global $post;<br />
foreach((get_the_category($post->ID)) as $category) {<br />
$classes[] = $category->category_nicename;<br />
}<br />
}<br />
return $classes;<br />
}<br />
add_filter('body_class','my_custom_body_class_category_in_single');
たとえば、カテゴリー「Travel」の投稿を閲覧している場合、上記のスニペットはボディクラス Travel を追加するため、カテゴリーごとに投稿のスタイルを変えることができます。
モバイルデバイスからアクセスした際にWordPressのカスタムボディクラスを追加する
これは以下を使用することで簡単に実現できます: wp_is_mobile 関数。
function my_custom_body_class_mobile( $classes ) {<br />
if ( wp_is_mobile() ) {<br />
$classes[] = 'mobile';<br />
}<br />
return $classes;<br />
}<br />
add_filter( 'body_class', 'my_custom_body_class_mobile' );
カスタムボディクラスは、プラグインによって作成された1つまたはすべてのページに追加することもできます(プラグインによって異なります)。
GeoDirectory
GeoDirectory は独自のカスタムボディクラスを追加します。たとえば、すべての GeoDirectory ページにはボディクラス geodir-page が付与されます。
高度な検索アドオンやカスタム投稿タイプアドオンがインストールされている場合、以下のクラスが追加されます: geodir_advance_search と geodir_custom_posts それぞれ追加されます。
GD ホームページの例:
<body class="single single-post postid-1 single-format-standard logged-in admin-bar no-sidebar customize-support">
リスト一覧ページ(カスタム投稿タイプまたはカテゴリーアーカイブ)では、カスタム投稿タイプごとに異なるクラスが付与されます。
たとえば Places では、以下のクラスが付与されます: post-type-archive-gd_place.
リスト詳細ページでも、使用されているカスタム投稿タイプごとに異なるクラスが付与されます。たとえば Places では以下のクラスが付与されます: single-gd_place.
ただし、他のカスタムボディクラスが必要になる場面もあります。いくつか例を挙げてみましょう:
1) ロケーションページにカスタムボディクラスを追加する
// add extra class via body_class filter<br />
add_filter('body_class', 'gd_location_custom_body_class');</p>
<p>function gd_location_custom_body_class($classes)<br />
{<br />
if (geodir_is_page('location')) {<br />
$classes[] = 'gd-location';<br />
}<br />
// return the modified $classes array<br />
return $classes;<br />
}
同じ条件タグ
geodir_is_page() は任意の GD ページにも使用できます。たとえばプレビューページの場合:
2) リストプレビューページにカスタムボディクラスを追加する
// add extra class via body_class filter<br />
add_filter('body_class', 'gd_preview_custom_body_class');</p>
<p>function gd_preview_custom_body_class($classes)<br />
{<br />
if (geodir_is_page('preview')) {<br />
$classes[] = 'gd-preview';<br />
}<br />
// return the modified $classes array<br />
return $classes;<br />
}
3) 追加する カスタムボディクラスを 異なる価格プランの詳細ページに
// add extra custom class via body_class filter<br />
add_filter('body_class','gd_price_custom_body_class');<br />
function gd_price_custom_body_class($classes) {<br />
global $post;<br />
if ( $post->package_id == 1) {<br />
$classes[] = 'price-1';<br />
}<br />
elseif ( $post->package_id == 2) {<br />
$classes[] = 'price-2';<br />
}<br />
else {}<br />
// return the modified $classes array<br />
return $classes;<br />
}
4) 追加する カスタムボディクラスを 検索された異なるCPTの検索ページに
add_filter('body_class','gd_search_cpt_custom_body_class');</p>
<p>function gd_search_cpt_custom_body_class($classes) {<br />
if (isset($_GET['stype']) == 'gd_place') {<br />
$classes[] = 'search_gd_place';<br />
}<br />
return $classes;<br />
}
WooCommerce
1) すべてのWooCommerceページにカスタムボディクラスを追加する
function my_custom_body_class_woo($classes) {<br />
// add 'my-class' to all woocom pages.<br />
if ( is_woocommerce() )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo');
2) ショップページのみにカスタムボディクラスを追加する
function my_custom_body_class_woo_shop($classes) {<br />
// add 'my-class' only to the shop page.<br />
if ( is_shop() )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo_shop');
3) 商品カテゴリーページにカスタムボディクラスを追加する
function my_custom_body_class_woo_cat($classes) {<br />
// add 'my-class' only to the product category archives.<br />
if ( is_product_category() )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo_cat');
4) 特定の商品カテゴリーページにカスタムボディクラスを追加する
function my_custom_body_class_woo_cat_a($classes) {<br />
// add 'my-class' only to a specific product category archive.<br />
if ( is_product_category( 'my-category' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo_cat_a');
5) 商品ページにカスタムボディクラスを追加する
function my_custom_body_class_woo_prod($classes) {<br />
// add 'my-class' to product pages.<br />
if ( is_product() )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo_prod');
6) 特定の商品ページにカスタムボディクラスを追加する
function my_custom_body_class_woo_prod_a($classes) {<br />
// add 'my-class' only to the my-product single page.<br />
if ( is_product( 'my-product' ) )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_woo_prod_a');
他にもWooCommerceの条件タグは数多くあります。例えば
- タグアーカイブ用のis_product_tag()
- ショッピングカートページ用のis_cart()
- チェックアウトページ用のis_checkout()
- 顧客アカウントページ用のis_account_page()
すべてはこちらでご確認いただけます: https://docs.woothemes.com/document/conditional-tags/
他のプラグインで生成されたページへのWordPressカスタムボディクラスの追加
条件タグを提供するプラグインであれば、同様の操作が可能です。
例えば、bbPressの条件タグはこちらで確認できます:https://codex.bbpress.org/bbpress-conditional-tags/
例を見てみますか?
1) すべての bbPress ページにカスタムボディタグを追加するには、以下が必要です:
function my_custom_body_class_bbpress($classes) {<br />
// add 'my-class' only to bbpress page.<br />
if ( is_bbpress() )<br />
$classes[] = 'my-class';<br />
// return the modified $classes array<br />
return $classes;<br />
}</p>
<p>// add my custom class via body_class filter<br />
add_filter('body_class','my_custom_body_class_bbpress');
BuddyPress の条件タグや、優れたプラグインのほとんどにも条件タグが用意されています。
ボディクラスの削除
フィルターで追加できるだけでなく、削除することもできます:
function remove_body_class( $classes ) {</p>
<p>foreach ( $classes as $key =&amp;gt; $value ) {<br />
if ( $value == 'my-class' ) unset( $classes[ $key ] );<br />
}</p>
<p>return $classes;</p>
<p>}<br />
add_filter( 'body_class', 'remove_body_class' );
WordPress サイトでボディクラスの追加・削除にお困りですか?下のコメント欄に具体的な例をリクエストしていただければ、できる限り回答します!
A Elementor pro向けディレクトリプラグイン
本日、GeoDirectory V 2.0.0.85をリリースしました。
このバージョンでは、 Elementor との統合がこれまで以上に緊密になっています。特にElementor Proとの連携が強化されました。
Elementor ProとElementorのダイナミックウィジェットを使って、GeoDirectoryのすべてのテンプレートをデザインできるようになりました。
また、サイトですぐに使えるレディメイドテンプレートの作成も開始しました。より複雑なテンプレートの出発点として、あるいは作成プロセスに慣れるためにご活用ください。
今後数週間でさらに多くのテンプレートを追加予定です。この新バージョンとその機能をぜひお楽しみください。
以下の動画では、StiofanがElementor Proとそのダイナミックウィジェットを使ってGeoDirectoryテンプレートをカスタマイズする方法など、この新バージョンの機能をご紹介します。
GeoDirectoryリスティング内でElementor Proのコンタクトフォームを使う方法
私たちはそこで止まりませんでした。この新バージョンまで、リスティングのコンタクトフォームとして使用できるのはNinja Formsだけでした。
Elementor Proのフォームも使用できるようになりました。次の動画では、リスティングシングルページテンプレートのデザイン中にコンタクトフォームを追加する方法をご紹介します。
Elementorをよく使用している方であれば、Elementorの改善につながると私たちが考えて追加したある機能にお気づきかもしれません。CSSの非表示条件です。
新しいダイナミックコンテンツ条件を使えば、CSSで任意の要素を簡単に非表示にできます。
気づかなかった方もいるかもしれませんが、Stiofanは min 3.54 でこの機能を使っています。

Elementor PRO ダイナミックコンテンツとの連携についてのこの動画では、この新機能のより詳しい説明をご覧いただけます。
Stiofanはさらに、GeoDirectoryのデータをElementor PROウィジェットで活用する方法を詳しく解説しています。たとえば、リスティングの画像でElementorギャラリーを埋める方法や、レビューでユーザーが追加した画像を使う方法などです。
また、評価がない場合に星評価を非表示にする方法なども紹介しています。
GeoDirectoryとElementorの連携について見てきましたが、次は以下の方法をご紹介します:
無料プラグインだけで Elementorディレクトリウェブサイト を作成する方法。
ご質問がございましたら、お気軽に下のコメント欄にどうぞ!
約6か月前にGeoDirectoryのV2をリリースし、デザインのカスタマイズがずっと簡単になると約束しました。
GeoDirectory V2はほとんどのページビルダーやテーマと互換性があり、すでに素晴らしいテンプレートデザインを実現できましたが、さらに細かく調整を重ねることで、さらに多くの素晴らしいことが可能になります。
まずAvadaとFusion Builderから始めることにしました。
現行バージョンのGeoDirectoryでは、次の操作が必要でした:
- Avadaに新しいウィジェットエリアを追加する
- デザインを完成させるために必要なGDウィジェットを追加する
- 最後に、Fusion Builderを通じてこれらのウィジェットエリアを使用する
CSSを組み合わせることでほぼ何でも実現できましたが、Fusion Builderのデフォルト要素でデザインをカスタマイズするほど直感的でも簡単でもありませんでした。
GeoDirectory Elements は Fusion Builder 内に表示されます

GeoDirectory の次のバージョン( 2.0.0.68 (GitHub でベータ版を公開中)から、すべての GeoDirectory ウィジェット・ショートコード・ブロックが Fusion Builder のエレメントとしても利用できるようになります。
これによりデザインがずっと簡単になります。さっそく、 Airbnb のリスティング ページや検索結果ページに似たページを作成するチュートリアルに入りましょう。
Avada と GeoDirectory をインストール済みであることを前提に、私が実際に行った手順をご紹介します。
免責事項:GeoDirectory と Fusion Builder だけで Airbnb のようなページをデザインすることはできませんでした。数行の CSS を記述する必要がありました。新しいルールは合計 11 件で、アーカイブページテンプレート(リスティングページ)に 5 件、アーカイブアイテムページテンプレート(リスティングページ内の各リスティング)に 6 件です。
とはいえ、私は Avada の専門家ではありませんし、 オプションが非常に多いため、私がやったことは CSS をほとんど使わずに、あるいはまったく使わずに実現できるかもしれません。
その点は Fusion Builder の達人の方々にお任せします。私のカスタム CSS を回避する方法をご存知でしたら、下のコメントでお知らせください。チュートリアルを更新します。
1 必要なカスタムフィールドを作成する
まず、AirBnB が使用しているカスタムフィールドを Place > Settingsから追加しました。デザインの再現に必要なものだけに絞って時間を節約しましたが、すべてを実装することも可能です。
以下の項目用に 4 つのセレクトが必要でした:
- ゲスト
- ベッドルーム
- ベッド
- バスルーム
アメニティ用のマルチセクトが1つ(例):
- キッチン
- プール
- エアコン

2 アーカイブページテンプレートの編集
いくつかのダミーリスティングを公開した後、新しいアーカイブページテンプレートが必要になりました。そのページを「Avada Listings 1」と名付け、 GeoDirectory の設定から新しいアーカイブページテンプレートとして割り当てました.

次に、ページを準備してスクリーン全体を使用できるようにする必要がありました。Avada のページをスクリーンの全幅で表示するオプションがあることは知っていましたが、それはサイト全体に影響するため、CSS を使って対応しました。
.geodir-archive #main .fusion-row {max-width:100%} html:not(.avada-has-site-width-percent) .geodir-archive #main {padding:0} .geodir-archive #main {padding:0} .geodir-archive .post-content .fusion_builder_column_1_2.fusion-column-first > .fusion-column-wrapper {padding-left: 8% !important;} .geodir-archive .avada-page-titlebar-wrapper {display:none}
上記の内容はシンプルです。ヘッダー下からフッター上のエリアをスクリーンの全幅で表示し、全体のパディングを削除して、リスティング一覧の左側にのみパディングを追加します。また、同様のページでは不要な Avada のタイトルバーも非表示にします。ページは次のような見た目になります:

これで Fusion Builder を使ってページを編集できます。フロントエンドとバックエンドの両方を使用できますが、フロントエンドのプレビューは100%正確ではないため、バックエンドビルダーを使用しました。
2カラムが必要で、右カラムには GD > Map 要素を追加し、左カラムには以下を追加します:
- GD > Search
- GD > Loop Actions
- GD > Loop
- GD > Loop Paging
調整が必要なオプションはマップのみで、高さを 85vh に設定する必要があります。スクロール時のマップ固定効果を実現するために、以下のプラグインを使用しました: Sticky Menu (or Anything!) on Scroll (作者:Mark Senff)
独自のカスタム JS を書くこともできましたが、このプラグインは軽量で、固定したい要素が1つだけであれば非常にうまく機能します。
正しく設定すると、フッターが表示されたときにマップも押し上げられます。
このプラグインのオプションとして、以下を設定しました:
- Sticky Element = .geodir-archive-map-wrap
- Push-up element = .fusion-footer
Push-up Element オプションは詳細設定から確認できます。
今のところ以上です。
ページはこのように表示されます:

3 アーカイブアイテムページテンプレートの編集
次に各リスティングのデザインをカスタマイズする必要があります。これはアーカイブアイテムページテンプレートを編集することで行えます。
新しいアーカイブアイテムページテンプレートを作成し、GD Archive Item-avada と名付けました。

Fusion Builder のバックエンドエディターで開き、以下の GD エレメントを追加しました:
- GD > archive item section を open left に設定
- GD > post images をスライドショーに設定
- GD > archive item section を close left に設定
- GD > archive item section を open right に設定
- GD > post meta(key="post_category"、show="value")
- GD > post favorite(show="icon"、alignment="right")
- GD > post title
- GD > post meta(key="how_many_guests"、show="value"、alignment="left")
- GD > post meta(key="how_many_rooms"、show="value"、alignment="left")
- GD > post meta with key=
- GD > post meta with key=
- GD > post meta with key=
- GD > post badge key=
- GD > post rating show=
- GD archive item section set as
4 カスタムCSSをさらに追加する
最後に、Airbnbのページのように見栄えよく整理するために、いくつかのCSSが必要でした:
.geodir-post-title, .geodir-post-rating {clear: left;} .geodir-field-amenities li::after,.geodir-field-how_many_guests::after,.geodir-field-how_many_rooms::after,.geodir-field-how_many_beds::after {content:" - ";} .geodir-field-amenities ul {margin:0;padding:0} .geodir-field-amenities li:last-child::after {content:"";} .geodir-field-amenities li {list-style: none;float: left;} .gd-badge-meta {display: block;margin-left: 0;clear: both;}
上記のCSSは、まったく同じカスタムフィールドがある場合にのみ機能し、以下を行います:
- タイトルと評価の星の位置を調整する
- カスタムフィールド間に「 – 」区切り文字を追加する
- デフォルトでリストとして表示されるアメニティの複数選択を調整する
- 「NEW」バッジの位置を調整する
以上です。結果はこちらをご覧ください:

Airbnbと100%同じではないことはわかっていますが、2時間しかかかっておらず、Avadaの使い方もほとんど知らない状態でした。
GeoDirectoryとFusion Builderで可能なカスタマイズのレベルをお見せしたかったのです。
私たちにとってはかなり印象的ですが、もしそうでなければ、あなたにとって印象的と感じるものを教えていただけますか?
コメントを残していただければ、フィードバックをぜひ聞かせてください。
きっと誰かが質問するだろうと思うので、ここで直接お答えします。
価格付きのマーカーをどのように作成したか?それは簡単です。次のようなカテゴリを使用しました:
-アパート(親)
–100 – 200(サブ)
–200 – 300(サブ)
各価格帯のマーカーを Photopea.comでデザインし、各サブカテゴリ用のマーカーをアップロードしました。
リスティングを追加する際、価格付きマーカーがすべてのマップで使用されるよう、サブカテゴリをデフォルトカテゴリに設定しました。
このチュートリアルを楽しんでいただけたなら幸いです。
ご不明な点があれば、下のコメント欄でお気軽にお知らせください!


















