
dedecms에서 중국어 및 영어 페이징 기능을 구현하는 방법은 무엇입니까?
머리말
이전 프로젝트를 진행하면서 요구사항에 부딪혔는데, 중국어와 영어 버전의 웹사이트이기 때문에 페이징에도 해당 영어가 필요하다고 포럼, 바이두에서 오랫동안 검색했습니다. 다른 곳에서도 만족할만한 답변을 찾을 수 없었는데, 오늘 아래 내용을 찾아 테스트해본 결과 드림위버 최신 버전 5.7에 적합할 수 있다는 것을 확인하고 성공적으로 구현하였기에, 공유하고 싶습니다:
주의 사항: 다음 줄은 무엇입니까? DW의 검색 기능을 사용하여 해당 줄을 무시하고 색인화하여 대상 코드를 쉽게 찾을 수 있습니다. 아래 코드 중 일부는 "공간" 문제로 인해 검색되지 않습니다. 수정 시 주의를 기울이면 찾을 수 있습니다.
1. include/arc.listview.class.php를 엽니다(이 문서에서는 DedeCMS5.7을 예로 사용합니다)
찾기(약 29줄)
아래에 새 줄 추가
찾기(약 528줄) ) )
1 | $list_len = trim( $ctag ->GetAtt( "listsize" ));
|
로그인 후 복사
아래에 새 줄 포함
1 | $pagelang = trim( $ctag ->GetAtt( "pagelang" ));
|
로그인 후 복사
발견(약 531줄)
1 2 3 4 | if ( $list_len == "" )
{
$list_len = 3;
}
|
로그인 후 복사
아래에
1 2 3 4 | if ( $pagelang == "" )
{
$pagelang = 'cn';
}
|
로그인 후 복사
포함 수정됨(약 545줄)
1 | $this ->dtp->Assign( $tagid , $this ->GetPageListST( $list_len , $listitem ));
|
로그인 후 복사
수정됨 for
1 | $this ->dtp->Assign( $tagid , $this ->GetPageListST( $list_len , $listitem , $pagelang ));
|
로그인 후 복사
(새 항목)
1 | function GetPageListST( $list_len , $listitem = "index,end,pre,next,pageno" )
|
로그인 후 복사
is
1 | function GetPageListST( $list_len , $listitem = "index,end,pre,next,pageno" , $pagelang ='cn')
|
로그인 후 복사
로 수정 (약 826줄)
1 | return "<li><span class=\"pageinfo\">共 <strong>1</strong>页<strong>" . $this ->TotalResult. "</strong> 条记录</span></li>\r\n" ;
|
로그인 후 복사
는
1 2 3 4 5 6 7 | if ( $pagelang == 'cn' ) {
return "<li><span class=\"pageinfo\">共 <strong>1</strong>页<strong>" . $this ->TotalResult. "</strong> 条记录</span></li>\r\n" ;
}
else
{
return "<li><span class=" \"pageinfo\" ">Total <strong>1</strong>Page<strong> " . $this ->TotalResult. "</strong> Records</span></li>\r\n" ;
}
|
로그인 후 복사
로 수정
1 | return "<li><span class=\"pageinfo\">共 <strong>0</strong>页<strong>" . $this ->TotalResult. "</strong>条记录</span></li>\r\n" ;
|
로그인 후 복사
는
1 2 3 4 5 6 7 | if ( $pagelang == 'cn' ) {
return "<li><span class=\"pageinfo\">共 <strong>0</strong>页<strong>" . $this ->TotalResult. "</strong>条记录</span></li>\r\n" ;
}
else
{
return "<li><span class=" \"pageinfo\" ">Total <strong>0</strong> Page <strong> " . $this ->TotalResult. "</strong> Records</span></li>\r\n" ;
}
|
로그인 후 복사
로 수정
1 | $maininfo = "<li><span class=\"pageinfo\">共 <strong>{$totalpage}</strong> 页 <strong>" . $this ->TotalResult. "</strong> 条</span></li>\r\n" ;
|
로그인 후 복사
는
1 2 3 4 5 6 7 | if ( $pagelang == 'cn' ) {
$maininfo = "<li><span class=\"pageinfo\">共 <strong>{$totalpage}</strong> 页 <strong>" . $this ->TotalResult. "</strong> 条</span></li>\r\n" ;
}
else
{
$maininfo = "<li><span class=" \"pageinfo\" ">Total <strong>{$totalpage}</strong> Page <strong> " . $this ->TotalResult. "</strong> Records</span></li>\r\n" ;
}
|
로그인 후 복사
로 수정 위의 방법에 따라 다음을 수정하여 이전 페이지로 이동합니다. , 홈페이지 내용, 다음 페이지, 마지막 페이지
2. 목록 템플릿 페이지를 엽니다. list_article_en.htm은 목록 페이지 템플릿의 영어 버전입니다. 수정할 필요가 없습니다
modification
1 | {dede:pagelist listsize='5'/}
|
로그인 후 복사
이
1 | {dede:pagelist pagelang='en' listsize='5'/}
|
로그인 후 복사
에 대한 목록 페이지를 다시 생성했습니다. 다만 아직 연고에는 파리가 남아있습니다. 목록 페이지의 전체 영어 페이징이 구현되었음에도 불구하고, 기사 페이지의 "이전 기사", "이전 페이지" 또는 "다음 기사" 및 "다음 페이지" 기능은 다음과 같습니다. 아직은 알 수가 없어서 계속해서 알아보고 공유하겠습니다.
위 내용은 Dedecms는 중국어와 영어 페이징 기능을 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!