>  기사  >  백엔드 개발  >  PHPCMS V9에서 맞춤형 페이징 기능의 2차 개발 방법

PHPCMS V9에서 맞춤형 페이징 기능의 2차 개발 방법

黄舟
黄舟원래의
2017-03-21 15:28:011999검색

웹사이트를 구축할 때 템플릿의 요구 사항에 따라 페이징 스타일을 제어해야 할 경우가 있습니다. 이때 많은 사람들은 전역 파일인 phpcmslibsfunctionsglobal.func.php의 페이지() 함수를 수정하게 됩니다. 이로 인해 문제가 발생합니다. : 이 페이징 기능은 배경에도 영향을 미칩니다. 즉, 이 페이징 기능은 전체 사이트에서 공유됩니다. 해결 방법은 다음과 같습니다. (파일 수정이 필요하므로 수정하기 전에 반드시 백업해야 합니다.)
phpcmslibsfunctionsglobal.func.php 파일을 열고 페이징 기능을 찾아 복사한 후 기본 페이징 기능 아래에 붙여넣고 내 이름과 같이 이름을 바꾸십시오. 이름을 wz_pages로 지정하고 저장하십시오.
phpcms/libs/classes/template_cache.class.php를 열고 207번째 줄을 찾으세요:

$str .= '$pages = pages($'.$op.'_total, $page, $pagesize, $urlrule);';

다음 줄 아래에 추가하세요:

$str .= '$wz_pages = wz_pages($'.$op.'_total, $page, $pagesize, $urlrule);';

저장하세요. 마지막으로, 사용자 정의 페이징 기능을 사용하려면 템플릿에서 직접 {$wz_pages}를 사용하세요. 나중에 스타일을 수정하려면 다음과 같이 직접 수정하세요.
phpcmslibsfunctionsglobal.func.php의 wz_pages 함수 이 파일은 괜찮습니다. 배경에는 영향을 주지 않습니다.
후속 최적화:

사용 중 SQL 페이징을 정상적으로 사용할 수 없는 것으로 확인되어 다음 코드를 추가해야 합니다.


phpcms/libs/classes/template_cache.class.php를 열고 178행을 찾습니다.

$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'], $page, $pagesize, $urlrule);';

아래에 추가합니다.

$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$wz_pages=wz_pages($s[\'count\'], $page, $pagesize, $urlrule);';

이렇게 하면 SQL 페이징도 정상입니다.
또 다른 후속 최적화:
위 방법은 회원 센터의 컬렉션 목록 페이지 매김에 사용할 수 없다고 친구가 언급했습니다.
컬렉션 목록의 페이징 기능은 다른 파일에 직접 설정하기 때문에 템플릿 캐시 파일 수정은 불가능합니다.
구체적인 수정 사항은 다음과 같습니다.
phpcmslibsclassesmodel .class.php 61번 줄

$this->pages = pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);

위 줄을 다음과 같이 수정합니다.

$this->pages = wz_pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);

({$pages} in 템플릿을 { $wz_pages}로 변경할 필요는 없습니다.
위의 방법이 첫 번째 방법입니다.



그런데 이 경우 배경도 영향을 받을 수 있을 것 같습니다. 여러 곳에서 이런 방식으로 수정할 수도 있습니다. 61번째 줄은 수정하지 마세요. 61행 바로 아래에 추가:

$this->wz_pages= wz_pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);

그런 다음 phpcmsmodulesmemberindex.php 718행으로 이동하여 다음 행을 변경합니다.

$pages = $this->favorite_db->pages;


은 다음으로 수정됩니다:

$wz_pages = $this->favorite_db->wz_pages;

{$pages} 템플릿에서 {$로 수정되어야 합니다. wz_pages }, 이는 컬렉션 목록을 예로 들었고 나머지도 유사합니다.

위 내용은 PHPCMS V9의 Custom Paging 기능 2차 개발 방법에 대한 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(m.sbmmt.com)를 참고해주세요!

관련글 :

PHHPCMS V9 제목 SEO 설정 방법

추가 아이디어에 대한 자세한 설명 PHPCMS V9의 보조 탐색

phpcms v9 2차 개발 및 사용 시 발생하는 다양한 문제에 대한 해결 방법

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.