답변:
플러그인을 비활성화하면 많은 장점을 잃게됩니다.
더 나아가서 게시물과 링크 등을 제거하는 워드 프레스 배포판이 있지만 항상 워드 프레스 코어보다 뒤쳐져 서 오래 생존하지 못하는 경향이 있습니다.
수행 할 수있는 몇 가지 사항은 다음과 같습니다.
짧은 초기화
이것을 wp-config.php에 넣으십시오.
define( 'SHORTINIT', TRUE );
또는 워드 프레스로로드하기 전에 어딘가에 정의하면로드 프로세스를 줄이고 최소한의 핵심 기능으로 되돌려 야합니다.
보조 경량 설치
원하는 플러그인과 테마 만 있으면 두 번째 워드 프레스 설치를 설정하십시오. 그런 다음 동일한 wp-content 디렉토리 및 데이터베이스 값을 사용하도록 wp-config.php를 구성하십시오.
역압
원본 BBpress 및 glotpress 인 WordPress는 BackPress 라이브러리 주위에 구축됩니다. 수많은 API 및 기능이 없거나 재 구현 / 이동이 필요할 수 있지만 WordPress 대신 이것을 사용하여 작업을 수행 할 수 있습니다.
옵션 테이블
또한 WordPress는 전체 옵션 테이블을 메모리에로드하여 쿼리를 줄입니다. 큰 값을 저장하면 성능에 영향을 미칩니다.
일찍 나가기
WordPress로드 프로세스에서 이전 기능에 연결하고 WordPress가 완료되기 전에 PHP 프로세스를 종료 할 수도 있지만 이것이 얼마나 안전한지 조언 할 수는 없습니다.
선택적으로 플러그인로드
플러그인을 선택적으로로드하는 방법에 대한이 기사도 있지만 워드 프레스 코어 파일에 대한 해킹이 필요합니다
BackPress 사용 하지만 작은 개발이 있습니다. 기본 설치와 const를 통해 더 작은 소스를 사용합니다.
에 참조 wp-settings.php
// Stop most of WordPress from being loaded if we just want the basics.
if ( SHORTINIT )
return false;
에서 const SHORTINIT을 true로 설정하고 wp-config.php
빠른 실행을 확인하십시오.
define( 'SHORTINIT', TRUE );
이들은 당신이 얻는 파일입니다 :
// All are located in ABSPATH.WPINC
'/load.php'
'/default-constants.php'
'/version.php'
'/compat.php'
'/functions.php'
'/class-wp.php'
'/class-wp-error.php'
'/plugin.php'
'/default-filters.php'
'/pomo/mo.php'
// Only Multisite
'/ms-blogs.php'
'/ms-settings.php'
제작 is_user_logged_in()
과 current_user_can()
작업을 위해 비슷한 답변을 여기 에서 찾았 습니다. (Cant comment) 비교는 다음과 같이 답변과 일치합니다.
define('SHORTINIT', true)
+ require('wp-load.php')
+를 수동으로 사용하면 다음이 포함됩니다.
페이지로드 : 1.05 sek- 포함 된 파일 : 43 파일
비교 : ONLY require('wp-load.php')
:
페이지로드 : 1.35 sek- 포함 된 파일 : 419 파일
시차 (0.3 sek)는 설치 및 PHP 엔진과 다를 수 있지만 한 페이지로드에서 많은 요청의 유효성을 검사하는 동안 추가됩니다! 안나 에릭슨
WP installed dir에 대한 상대 호출을 사용하는 것이 좋습니다. Wordpress 사용자 정의 플러그인 "ROOT"에서
$wordpress = '../../../wp-load.php';
그런 다음 내 플러그인 index.php 내부 :
define('SHORTINIT', true);
include_once $wordpress;
require_once ( ABSPATH . WPINC . '/class-wp-user.php' );
require_once ( ABSPATH . WPINC . '/class-wp-roles.php' );
require_once ( ABSPATH . WPINC . '/class-wp-role.php' );
require_once ( ABSPATH . WPINC . '/class-wp-session-tokens.php' );
require_once ( ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php' );
require_once ( ABSPATH . WPINC . '/formatting.php' );
require_once ( ABSPATH . WPINC . '/capabilities.php' );
//require_once ( ABSPATH . WPINC . '/query.php' ); // - might be useful
require_once ( ABSPATH . WPINC . '/user.php' );
require_once ( ABSPATH . WPINC . '/meta.php' );
wp_cookie_constants();
require_once ( ABSPATH . WPINC . '/vars.php' );
require_once ( ABSPATH . WPINC . '/kses.php' );
require_once ( ABSPATH . WPINC . '/rest-api.php' );
require_once ( ABSPATH . WPINC . '/pluggable.php' );
그 후, 사용자 유효성 검사가 나를 위해 일하고 있습니다. 원본 코드의 @Anna Ericson 최종 단어 덕분에 :
하나 또는 두 개의 요청에서 실행되는 다른 작업의 경우 필요한 다른 파일을 추적하는 것은 0.3 sek 가치가 없을 수 있습니다 .
SHORTINIT
상수 및 수동 혼란을 건너 뜁니다 .