산화 eShop에 대한 무한 스크롤 목록 구축 - 기본 사항
공식적으로 산화 ESALES로 알려진 산화 eShop
는 온라인 비즈니스의 모든 세그먼트에 최적화 된 강력하고 확장 가능한 전자 상거래 표준 플랫폼입니다. 내 "9-5"작업의 대부분을 산화로 지출하는 개발자 로서이 전자 상거래 시스템은 사용자 정의 및 확장이 매우 쉽다는 것을 알았습니다.- > 산화 ESALES에 대한 Matthew Setter의 시리즈를 읽는 것이 좋습니다. 산화 시스템 이 2 부 튜토리얼에서는 전통적인 페이지 매김 대신 기사 목록에 인피니트 스크롤
- 를 구현하는 새로운 산화 모듈 확장을 생성 할 것입니다. 이 기사에서 나는 나중에 산소 발달을 겪을 때 작업 과정을 가속화하는 데 도움이 될 수있는 개인적인 경험을 공유하려고합니다.
-
전체 소스 코드는 시리즈의 끝에서 사용할 수 있습니다.
- 필요한 컨트롤러를 확장하십시오
기존 템플릿을 새 템플릿으로 바꾸십시오 새 모듈 구성 옵션을 추가하십시오.
새 모듈 컨트롤러와 함께 작동합니다
-
2 부 :
새로운 템플릿 작업 : - 모듈 URL을 올바르게 가져 오는 방법
산화 템플릿 엔진 작업을 요약하십시오 새 템플릿의 컨텐츠 추가 기사 목록에서 무한 스크롤의 실행을 처리하기 위해 JavaScript 추가. 데이터베이스보기 업데이트 및 모듈 활성화 -
참고 : 산화 eShop을 사용하여 일부 작업 경험 가 있다고 가정합니다 (위의 링크 된 Matthew의 기사를 참조하십시오). 따라서 산화의 기본 개념에 대한 설명은 많지 않습니다. - 참고 : 새 모듈 이름 지정의 모범 사례는 공급 업체/개발자/그룹의 이름과 모듈 기능을 결합하는 것입니다. 팀 협업을위한 새로운 모듈의 공급 업체와 기능을 즉시 공개하는 데 도움이됩니다.
밑줄
기능-
즉 : sitepoint_infinitescroll
공급 업체 이름은 개발자 이름 또는 그룹 이름으로 대체 할 수 있습니다. 그것은 당신에게 달려 있습니다. -
메타 데이터 작업 <.> 메타 데이터 .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.
로그인 후 복사로그인 후 복사-
값 확장은 새 모듈이 확장 될 특정 코어/컨트롤러 클래스를 지정합니다. 이 경우 Alist.php,/Oxid/Application/Controllers에 위치한 Alist.php가됩니다.
- 값 템플릿은 새로운 모듈의 등록 된 템플릿을 모두 저장하는 배열입니다. 쉽게 팀 협업을 위해 대체 할 템플릿의 동일한 폴더 구조를 작성하는 것이 좋습니다. 템플릿의 항목과 값은 모두 파일 이름 확장자를 포함해야합니다 .tpl
.
참고 :
새 템플릿의 이름을 지정하는 올바른 방법은“ 모듈 이름 _ 기존 템플릿 이름”입니다.
-
우리는 현재 새 템플릿 파일을 비워두고 파일 메타 데이터를 계속 남겨 둡니다. 항목 템플릿 바로 다음에 설정이라는 배열을 삽입하십시오 : - 값 설정은 새 모듈의 모든 구성 옵션을 등록 할 수있는 장소입니다. 그룹은 항상 모듈의 ID와 동일한 값을 가지고 있습니다.
- value :이 새로운 설정은 목록의보기 유형을 관리하는 데 도움이됩니다. 이 튜토리얼의 범위에서 기본값을 line 로 설정하고 끝까지 계속 사용합니다. 우리가 모듈을 처음으로 활성화 할 때이 설정은 두 개의 테이블
- oxconfig 및
즉 : aho_infinitescroll_list.tpl 당신은 다른 가능한 인수에 대한 자세한 내용을 읽으려면 확장 메타 데이터 의이 온라인 문서를 따라갈 수 있습니다. 마지막 섹션에서는 새 모듈의 설정을 추가했습니다. 이제 번역 작업을 수행 할 시간입니다. 파일을 열어주십시오.
구성 옵션에 대한 번역 추가 옵션 _module _ setting_column_name에 대한 번역을 추가하려면 구문. 구성 옵션 help_shop_module _ setting_colum_name에 대한 도움말 텍스트를 추가하려면 구문 텍스트를 추가합니다.<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>
로그인 후 복사-
-
위의 줄은 현재 뷰에서 사용되는 핵심 클래스를 인쇄하는 데 도움이됩니다. Ajax 요청을 수행하는 핵심 클래스를 감지하려면 Chromedev 도구로 작업하는 노력이 조금 더 필요합니다. 지금까지, 우리는 새로운 모듈 확장을 개발하기 위해 단계별 백엔드 구현을 거쳤습니다. 현재, 우리는 관리 대시 보드에서 무엇을 할 것인지 확인하기 위해 모듈을 활성화 할 수 있습니다. 문제가 발생하면 여기에 의견을 남겨 주시기 바랍니다. 당신을 도와주기 위해 최선을 다하겠습니다. -
산화 eShop에서 무한 스크롤 목록 구축에 대해 자주 묻는 질문 산화 eShop에서 무한 스크롤을 사용하는 목적은 무엇입니까? .
위의 코드 라인은 아래 그림과 같이 출력을 초래합니다. 나중에 모듈을 활성화하면 텍스트 상자에 줄을 입력하십시오. 파일 aho_infinitescroll/out/admin/de/aho_infinitescroll_lang.php 파일에 대해서도 동일하게하십시오. Value Deustch가있는 변수 $ slangname을 할당하고 언어를 전문으로하는 사람이 모든 텍스트를 독일어로 번역하거나 영어와는 다른 한, 차이를 볼 수있는 한, gibberish를 거기에 넣게하십시오. 새로운 컨트롤러와 협력 aho_infinitescroll/controllers/aho_infinite_alist.php를 열고 다음 줄을 추가하십시오. 이 새로운 컨트롤러는 몇 가지 일을합니다
metadata.php에서 정의한 $ _sthistemplate의 값을 aho_infinitescroll.tpl로 변경하십시오. 여기에서 템플릿 이름 만 지정하면됩니다. 따라서 템플릿 이름은 고유해야합니다. 시스템이 올바른 템플릿을 빠르게 찾는 데 도움이됩니다.getViewTypElist 함수는 메타 데이터에 정의 된 데이터 열의 값을 반환합니다. 템플릿 aho_infinitescroll.tpl 은이 값을 사용하여 기사 목록에 적용되는 뷰 유형을 결정합니다.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입니다. 공식은 모듈 컨트롤러 이름 _ 부모입니다
확장하는 데 필요한 클래스를 찾는 팁 일반적으로 어떤 클래스를 확장 해야하는지 알아야합니다. 현재보기에서 어떤 클래스가 실행 중인지 쉽게 찾을 수있는 방법이 있습니다. 파일/application/views/ {Theme_name }/tpl/layout/page.tpl 파일을 찾아보고 파일 상단에 다음 줄을 삽입하십시오. 다음 부분은 템플릿을 사용자 정의하고 무한 스크롤을위한 워크 플로우를 처리하기 위해 JavaScript를 추가하는 필수 프론트 엔드 구현에 대한 자세한 내용을 설명합니다. Infinite 스크롤은 전자 상거래 웹 사이트의 성능을 어떻게 향상 시키는가? Infinite 스크롤은로드 시간을 줄임으로써 전자 상거래 웹 사이트의 성능을 크게 향상시킬 수 있습니다. 모든 제품을 한 번에로드하는 대신 사이트를 속도를 늦출 수있는 Infinite Scroll은 처음에 특정 수의 제품을로드 한 다음 사용자가 계속 스크롤함에 따라 더 많이로드합니다. 이것은 현장 속도를 향상시킬뿐만 아니라 사용자 참여와 유지를 향상시킵니다.
PHP를 사용하여 산화 eShop에서 무한 스크롤을 구현할 수 있습니까?산화 eShop에서 무한 스크롤 구현 PHP를 사용하여 조작하는 것과 관련이 있습니다. Ajax 호출 및 페이지 매김 시스템. AJAX 요청을 처리하고 제품 목록을 업데이트하려면 목록 컨트롤러 및 제품 목록 템플릿의 기능을 수정해야합니다. 상세한 단계와 코드 스 니펫은 기사에서 찾을 수 있습니다.
산화 eShop에서 무한 스크롤을 사용하는 데있어서의 잠재적 인 단점이 있습니까?산화 eShop을 제외하고 다른 전자 상거래 플랫폼에서 무한 스크롤을 사용할 수 있습니까?
예, 예, 예, 무한 스크롤은 사용자 정의 코딩을 지원하는 다양한 전자 상거래 플랫폼에서 구현할 수 있습니다. 그러나 구현 프로세스는 플랫폼의 아키텍처 및 코딩 언어에 따라 다를 수 있습니다. 특정 플랫폼의 문서를 참조하거나 전문 개발자의 도움을 구하는 것이 좋습니다.
Infinite Scroll은 SEO에 어떤 영향을 미칩니 까? Ajax를 통해로드 된 올바르게 크롤링 및 색인 컨텐츠. 그러나 이는 사용자를위한 무한 스크롤 버전과 함께 검색 엔진 용 사이트의 페이지에 입은 버전을 구현하여 완화 할 수 있습니다.무한 스크롤에 대한 몇 가지 대안은 무엇입니까?
무한 스크롤에 대한 대안에는 Pagination 및 "More"버튼이 포함됩니다. Pagination은 콘텐츠를 별도의 페이지로 나누는 반면 "더 많은로드"버튼을 사용하면 사용자가 더 많은 콘텐츠를 수동으로로드 할 수 있습니다. 이러한 옵션 간의 선택은 웹 사이트의 디자인과 사용자 선호도에 따라 다릅니다.
산화 eShop에서 무한 스크롤의 모양과 느낌을 사용자 정의 할 수 있습니까? 무한 스크롤의 모양과 느낌은 CSS를 사용하여 사용자 정의 할 수 있습니다. 로딩 표시기, 제품 목록 및 기타 요소의 스타일을 웹 사이트 디자인과 일치시키기 위해 수정할 수 있습니다.
- 값 템플릿은 새로운 모듈의 등록 된 템플릿을 모두 저장하는 배열입니다. 쉽게 팀 협업을 위해 대체 할 템플릿의 동일한 폴더 구조를 작성하는 것이 좋습니다. 템플릿의 항목과 값은 모두 파일 이름 확장자를 포함해야합니다 .tpl
위 내용은 산화 eShop에 대한 무한 스크롤 목록 구축 - 기본 사항의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP와 Python은 각각 고유 한 장점이 있으며 프로젝트 요구 사항에 따라 선택합니다. 1.PHP는 웹 개발, 특히 웹 사이트의 빠른 개발 및 유지 보수에 적합합니다. 2. Python은 간결한 구문을 가진 데이터 과학, 기계 학습 및 인공 지능에 적합하며 초보자에게 적합합니다.

PHP에서 Password_hash 및 Password_Verify 기능을 사용하여 보안 비밀번호 해싱을 구현해야하며 MD5 또는 SHA1을 사용해서는 안됩니다. 1) Password_hash는 보안을 향상시키기 위해 소금 값이 포함 된 해시를 생성합니다. 2) Password_verify 암호를 확인하고 해시 값을 비교하여 보안을 보장합니다. 3) MD5 및 SHA1은 취약하고 소금 값이 부족하며 현대 암호 보안에는 적합하지 않습니다.

PHP는 전자 상거래, 컨텐츠 관리 시스템 및 API 개발에 널리 사용됩니다. 1) 전자 상거래 : 쇼핑 카트 기능 및 지불 처리에 사용됩니다. 2) 컨텐츠 관리 시스템 : 동적 컨텐츠 생성 및 사용자 관리에 사용됩니다. 3) API 개발 : 편안한 API 개발 및 API 보안에 사용됩니다. 성능 최적화 및 모범 사례를 통해 PHP 애플리케이션의 효율성과 유지 보수 성이 향상됩니다.

HTTP 요청 방법에는 각각 리소스를 확보, 제출, 업데이트 및 삭제하는 데 사용되는 Get, Post, Put and Delete가 포함됩니다. 1. GET 방법은 리소스를 얻는 데 사용되며 읽기 작업에 적합합니다. 2. 게시물은 데이터를 제출하는 데 사용되며 종종 새로운 리소스를 만드는 데 사용됩니다. 3. PUT 방법은 리소스를 업데이트하는 데 사용되며 완전한 업데이트에 적합합니다. 4. 삭제 방법은 자원을 삭제하는 데 사용되며 삭제 작업에 적합합니다.

PHP는 서버 측에서 널리 사용되는 스크립팅 언어이며 특히 웹 개발에 적합합니다. 1.PHP는 HTML을 포함하고 HTTP 요청 및 응답을 처리 할 수 있으며 다양한 데이터베이스를 지원할 수 있습니다. 2.PHP는 강력한 커뮤니티 지원 및 오픈 소스 리소스를 통해 동적 웹 컨텐츠, 프로세스 양식 데이터, 액세스 데이터베이스 등을 생성하는 데 사용됩니다. 3. PHP는 해석 된 언어이며, 실행 프로세스에는 어휘 분석, 문법 분석, 편집 및 실행이 포함됩니다. 4. PHP는 사용자 등록 시스템과 같은 고급 응용 프로그램을 위해 MySQL과 결합 할 수 있습니다. 5. PHP를 디버깅 할 때 error_reporting () 및 var_dump ()와 같은 함수를 사용할 수 있습니다. 6. 캐싱 메커니즘을 사용하여 PHP 코드를 최적화하고 데이터베이스 쿼리를 최적화하며 내장 기능을 사용하십시오. 7

phpoop에서 self ::는 현재 클래스를 말하며, Parent ::는 부모 클래스를 말하며, static ::는 늦은 static 바인딩에 사용됩니다. 1. self :: 정적 방법과 일정한 호출에 사용되지만 늦은 정적 바인딩을 지원하지는 않습니다. 2.parent :: 하위 클래스가 상위 클래스 방법을 호출하는 데 사용되며 개인 방법에 액세스 할 수 없습니다. 3. Static ::는 상속 및 다형성에 적합한 후기 정적 결합을 지원하지만 코드의 가독성에 영향을 줄 수 있습니다.

PHP는 $ \ _ 파일 변수를 통해 파일 업로드를 처리합니다. 보안을 보장하는 방법에는 다음이 포함됩니다. 1. 오류 확인 확인, 2. 파일 유형 및 크기 확인, 3 파일 덮어 쓰기 방지, 4. 파일을 영구 저장소 위치로 이동하십시오.

PHP 유형은 코드 품질과 가독성을 향상시키기위한 프롬프트입니다. 1) 스칼라 유형 팁 : PHP7.0이므로 int, float 등과 같은 기능 매개 변수에 기본 데이터 유형을 지정할 수 있습니다. 2) 반환 유형 프롬프트 : 기능 반환 값 유형의 일관성을 확인하십시오. 3) Union 유형 프롬프트 : PHP8.0이므로 기능 매개 변수 또는 반환 값에 여러 유형을 지정할 수 있습니다. 4) Nullable 유형 프롬프트 : NULL 값을 포함하고 널 값을 반환 할 수있는 기능을 포함 할 수 있습니다.
