酸化を初めて使用している場合、または独自のオンラインビジネスに向けてシンプルだが効果的なプラットフォームを探している場合は、開始するための標準的な実装を考え出したOxid EsalesのMatthew Setterのシリーズを読むことをお勧めします。酸化システムを使用しています。 この2部構成のチュートリアルでは、従来のページネーションではなく記事リストに無限のスクロールを実装する新しい酸化モジュール拡張機能を作成します。この記事では、後で酸化開発に遭遇した場合に作業プロセスをスピードアップするのに役立つ可能性のある個人的な経験を共有しようとします。
ここにあなたが達成するものがあります。
ソースコード全体がシリーズの最後に利用可能になります。 チュートリアルでは、次の領域について説明します パート1:
モジュールURLを適切に取得する方法
酸化テンプレートエンジンの操作にまとめます。AHO_INFINITESCROLLという新しいフォルダーを作成し、その後のフォルダー/ファイルが続きます。新しいモジュールに名前を付けるベストプラクティスは、ベンダー/開発者/グループとモジュールの機能の名前を組み合わせることです。チームコラボレーションのための新しいモジュールのベンダーと機能を即座に明らかにするのに役立ちます。注:
ベンダー名
aho_infinitescroll/ | |--- controllers/ | |-- aho_infinite_alist.php # A new controller that extends alist.php | |--- out/ | |--admin/ | |--en/ | |-- aho_infinitescroll_lang.php # Back-end English text. | |--de/ | |-- aho_infinitescroll_lang.php # Back-end Deustch text. | | |--css/ | |--> infinitescroll.css # Style for infinite scrolling elements. | | |--img/ | |--> ajax-loader.gif # image indicates the loading status. | |--js/ | |--- translations/ | |--de/ | |--> aho_infinitescroll_lang.php # Front-end Deustch text. | |--en/ | |--> aho_infinitescroll_lang.php # Front-end English text. | |--- views/ | |-- page/ | |-- list/ | |--> aho_infinitescroll_list.tpl # new template file. | |--- metadata.php # Define extension name, classes and other infos. |--- picture.jpg # A thumbnail for the module's functionality.
ベンダー名は、開発者名またはグループ名のいずれかに置き換えることができます。それはあなた次第です。
metadata.phpの作業 metadata.phpは、あらゆるモジュール開発に不可欠です。このファイルは、モジュール、拡張するクラス、過大評価されるブロック、交換するテンプレート、フロントエンドとバックエンドの両方の側面の設定などの基本的な詳細を提供します。 ファイルMetadata.phpを開き、次のコード行を追加してください。
新しいモジュールの基本情報を挿入したばかりで、すべての要素は用語によって自己記述的です。IDとタイトルは必須の変数であることに注意してください。特に、IDの値はモジュールのフォルダー名と同じでなければなりません。
次に、メールの直後にさらに要素を定義します。
aho_infinitescroll/ | |--- controllers/ | |-- aho_infinite_alist.php # A new controller that extends alist.php | |--- out/ | |--admin/ | |--en/ | |-- aho_infinitescroll_lang.php # Back-end English text. | |--de/ | |-- aho_infinitescroll_lang.php # Back-end Deustch text. | | |--css/ | |--> infinitescroll.css # Style for infinite scrolling elements. | | |--img/ | |--> ajax-loader.gif # image indicates the loading status. | |--js/ | |--- translations/ | |--de/ | |--> aho_infinitescroll_lang.php # Front-end Deustch text. | |--en/ | |--> aho_infinitescroll_lang.php # Front-end English text. | |--- views/ | |-- page/ | |-- list/ | |--> aho_infinitescroll_list.tpl # new template file. | |--- metadata.php # Define extension name, classes and other infos. |--- picture.jpg # A thumbnail for the module's functionality.
値拡張は、新しいモジュールが拡張される特定のコア/コントローラークラスを指定します。この場合、それは/oxid/application/ControllersにあるAlist.phpになります/。
注:
新しいテンプレートに名前を付ける適切な方法は、「モジュール名
- _古いテンプレート名」です i.e:aho_infinitescroll_list.tpl
<span><span><?php </span></span><span> </span><span><span>$sMetadataVersion = '1.0'; # Define version of this file </span></span><span> </span><span><span>// An array to store modules' details </span></span><span><span>$aModule = array </span></span><span><span>( </span></span><span> <span>'id' => 'aho_infinitescroll', </span></span><span> <span>'title' => '[AHO] Infinite Scrolling List', </span></span><span> <span>'description' => 'Infinite Scrolling for article list', </span></span><span> <span>'thumbnail' => 'picture.jpg', </span></span><span> <span>'version' => '1.0.0', </span></span><span> <span>'author' => 'Tuan Anh Ho', </span></span><span> <span>'url' => '', </span></span><span> <span>'email' => 'anhhothai@gmail.com' </span></span><span><span>);</span></span>
として設定し、最後まで使用し続けます。 初めてモジュールをアクティブにすると、この設定は2つのテーブル
oxconfigに挿入されます。酸化は、値モジュールを自動的に挿入します:AHO_INFINITESCROLLは列 oxcfgmodule (表Oxconfigdisplay)を値モジュールで挿入します:aho_infinitecroll。自動的に発生するため、これは非常に便利です。 このオンライン拡張メタデータのドキュメントに従って、他の可能な引数について詳しく読むことができます。 次に、バックエンドの翻訳を調べます。
バックエンド翻訳の追加ファイルを開いてください
<span>'extend' => array( </span> <span>'alist' => 'aho_infinitescroll/controllers/aho_infinitescroll_alist' </span> <span>), </span> <span>'templates' => array( </span> <span>'aho_infinitescroll_list.tpl' </span> <span>=> 'aho_infinitescroll/views/page/list/aho_infinitescroll_list.tpl' </span> <span>)</span>
上記のコード行は、下の図のように出力されます。後で、モジュールをアクティブにしたら、テキストボックスに行を入力してください:
AHO_INFINITESCROLL/CONTROLLERS/AHO_INFINITE_ALIST.PHPを開き、次の行を追加してください。
aho_infinitescroll/ | |--- controllers/ | |-- aho_infinite_alist.php # A new controller that extends alist.php | |--- out/ | |--admin/ | |--en/ | |-- aho_infinitescroll_lang.php # Back-end English text. | |--de/ | |-- aho_infinitescroll_lang.php # Back-end Deustch text. | | |--css/ | |--> infinitescroll.css # Style for infinite scrolling elements. | | |--img/ | |--> ajax-loader.gif # image indicates the loading status. | |--js/ | |--- translations/ | |--de/ | |--> aho_infinitescroll_lang.php # Front-end Deustch text. | |--en/ | |--> aho_infinitescroll_lang.php # Front-end English text. | |--- views/ | |-- page/ | |-- list/ | |--> aho_infinitescroll_list.tpl # new template file. | |--- metadata.php # Define extension name, classes and other infos. |--- picture.jpg # A thumbnail for the module's functionality.
ヒント
通常、どのクラスを拡張する必要があるかを知る必要があります。現在のビューでどのクラスが実行されているかを簡単に確認する方法があります。 file /application/views/ {theme_name }/tpl/layout/page.tplを参照し、ファイルの上部に次の行を挿入します。
<span><span><?php </span></span><span> </span><span><span>$sMetadataVersion = '1.0'; # Define version of this file </span></span><span> </span><span><span>// An array to store modules' details </span></span><span><span>$aModule = array </span></span><span><span>( </span></span><span> <span>'id' => 'aho_infinitescroll', </span></span><span> <span>'title' => '[AHO] Infinite Scrolling List', </span></span><span> <span>'description' => 'Infinite Scrolling for article list', </span></span><span> <span>'thumbnail' => 'picture.jpg', </span></span><span> <span>'version' => '1.0.0', </span></span><span> <span>'author' => 'Tuan Anh Ho', </span></span><span> <span>'url' => '', </span></span><span> <span>'email' => 'anhhothai@gmail.com' </span></span><span><span>);</span></span>
酸化eshopで無限のスクロールリストを構築することについてよく尋ねる質問
無限のスクロールは、ブラウザスクロールバーがページの下部にスクロールするのを防ぐWebデザイン手法であり、ページが追加で成長します。代わりにコンテンツ。 Oxid Eshopのコンテキストでは、この手法を使用して、ユーザーがページを下にスクロールするときに製品を継続的に表示し、製品のシームレスなナビゲーションと探索を許可することでユーザーエクスペリエンスを向上させることができます。
PHPを使用して酸化ESHOPに無限のスクロールを実装するにはどうすればよいですか? Ajaxコールとページネーションシステム。 Ajaxリクエストを処理し、製品リストを更新するには、リストコントローラーと製品リストテンプレートの関数を変更する必要があります。詳細な手順とコードスニペットはこの記事に記載されています。
SEOにどのように影響しますか? AJAXを介してロードされたコンテンツを適切にクロールし、インデックスコンテンツ。ただし、これは、ユーザー向けの無限のスクロールバージョンと並んで、検索エンジン用のサイトのページングされたバージョンを実装することで軽減できます。PHPはeコマースWebサイトに推奨されていますか?柔軟性、スケーラビリティ、堅牢性のため、eコマースWebサイトに人気のある選択肢があります。幅広いデータベースをサポートし、酸化eShopを含むさまざまなeコマースプラットフォームと互換性があります。ただし、プログラミング言語の選択は、特定の要件と専門知識に依存する必要があります。
以上がOxid Eshopの無限のスクロールリストを作成 - 基本の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。