검색이 조건에 맞는 페이지 전체를 읽어 온 뒤 PHP 에서 화면 분량만 잘라 내고 있었다. 실제 page/per_page 를 저장소까지 하달해 필요한 분량만 조회한다. 구체 엔진 직접 호출도 해석기 경유로 옮겨 플러그인 검색엔진이 페이지 검색에 적용된다. 관리자 목록은 화면에 본문이 나오지 않는데도 항목마다 본문을 함께 읽고 있었다. 목록 조회에서 제외하고 총 건수에 상한 계약을 적용했다. 발행 페이지 목록과 통합검색의 페이지 탭 정렬에 필요한 색인을 더했다. 신규 설치는 마이그레이션이, 기존 사이트는 업그레이드 스텝이 적용한다. 관리자 목록의 페이저가 총 건수를 끝까지 세지 못한 경우 "1페이지뿐" 으로 접혀 뒤쪽 페이지에 도달할 수 없던 것을 고쳤다.
20 lines
851 B
PHP
20 lines
851 B
PHP
<?php
|
|
|
|
namespace Modules\Sirsoft\Page\Upgrades;
|
|
|
|
use App\Extension\AbstractUpgradeStep;
|
|
|
|
/**
|
|
* sirsoft-page 모듈 1.0.2 업그레이드 스텝
|
|
*
|
|
* 외래키 컬럼의 비어 있는 한국어 comment 를 채운다(1컬럼). `->comment()` 가
|
|
* `->constrained()` 뒤에 체인되어 컬럼이 아닌 외래키 정의에 부착되던 문제를 소스에서
|
|
* 교정했으나, 기설치본은 마이그레이션이 재실행되지 않아 그대로 남기 때문이다.
|
|
*
|
|
* 함께 발행 페이지 목록의 정렬 색인을 기존 사이트에 반영한다(02). 마이그레이션만 추가하면
|
|
* 신규 설치에만 반영되므로 업그레이드 시점에 동일 색인을 적용한다.
|
|
*
|
|
* 모든 비즈니스 로직은 data/1.0.2/migrations/ 로 격리(AbstractUpgradeStep 규약).
|
|
*/
|
|
class Upgrade_1_0_2 extends AbstractUpgradeStep {}
|