實現到文章列表而不是傳統分頁。在本文中,我試圖分享我的個人經驗,如果您以後遇到任何氧化劑開發,可能會幫助您加快工作過程。 這是您將要實現的。
>整個源代碼將在系列結束時可用。
這些教程將涵蓋以下領域:第1部分:
第2部分:
注意:我假設您有氧化eShop的一些工作經驗(如果沒有,請參見上面鏈接的Matthew的文章)。因此,對於氧化的基本概念,不會有太多解釋。
>
您首先要做的最重要的任務是創建標准文件夾結構。
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.
>注意:命名新模塊的最佳實踐是將供應商/開發人員/組的名稱與模塊的功能結合在一起。它有助於立即揭示團隊協作新模塊的供應商和功能。
因此,公式可以如下:
>供應商名稱 underscore 功能
- 即:sitepoint_infinitesCroll
>供應商名稱可以用開發人員名稱或組名稱代替。取決於您。
> metadata.php對於任何模塊開發至關重要。該文件提供了有關模塊,要擴展的類,要覆蓋的塊,要替換的模板的基本詳細信息,前端和後端側面的設置等等。
>請打開文件元數據。
<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>
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.
該值擴展指定新模塊將擴展的特定核心/控制器類。在這種情況下,它將是Alist.php,位於/氧化/application/。
>注意:
>
命名新模板的正確方法是“模塊名稱
- _舊模板名稱” 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>>
>
>並繼續使用直到結束。 當我們首次激活模塊時,將此設置插入兩個表
oxconfigOxmodule (Table Oxconfig)和
>
>語法要添加配置選項的幫助文本help_shop_module _ setting_colum_name。
<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 # 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.這個新控制器只能做幾件事:
您可以注意,擴展類的名稱是AHO_INFINITESCROLL_ALIST_PARENT。公式是模塊控制器名稱_父級。
>您通常需要知道需要擴展哪些類。有一種簡單的方法可以找出當前視圖中哪個類正在運行。您只需瀏覽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中構建無限捲軸列表的問題
>在氧化eShop中使用無限滾動的目的是什麼?內容。在氧化ESHOP的背景下,該技術可用於在用戶向下滾動頁面時連續顯示產品,從而通過允許無縫導航和探索產品來改善用戶體驗。>我如何使用PHP?
>
>是否存在在氧化eShop中使用無限滾動的潛在缺陷?適用於所有類型的電子商務網站。例如,如果您的網站有一個具有重要鏈接的頁腳,則無限滾動可能會使用戶難以與頁腳聯繫。另外,對於想要導航到特定產品或頁面的用戶,無限捲軸有時會感到困惑。 我可以在其他電子商務平台中使用無限滾動,除了氧化eShop?無限滾動可以在支持自定義編碼的各種電子商務平台中實現。但是,實現過程可能會因平台的體系結構和編碼語言而有所不同。建議參考特定平台的文檔或向專業開發人員尋求幫助。 >無限滾動如何影響seo?無限滾動可能會影響SEO,因為搜索引擎可能無法造成SEO通過AJAX正確爬網和索引內容。但是,可以通過為搜索引擎實現分頁版本以及用於用戶的無限滾動版本來緩解這種情況。
我可以禁用氧化eShop中某些頁面的無限滾動嗎?可以選擇在氧化ESHOP中的某些頁面上禁用無限滾動。這可以通過修改列表控制器和產品列表模板中的條件來完成。
以上是為氧化ESHOP建立無限的滾動列表 - 基礎知識的詳細內容。更多資訊請關注PHP中文網其他相關文章!