WordPress 데이터베이스를 통해 플러그인을 비활성화하시겠습니까?
워드프레스 스크립트 wp-supercache를 비활성화해야 하는데(그것은 중대한 오류로 캐시되어 있기 때문에) 이 오류로 인해 wp-admin 리다이렉트가 실패하여 사이트에 접속하여 플러그인을 비활성화할 수 없습니다.
조언 좀 해주시겠어요?cpanel을 통해 데이터베이스에 접속할 수 있습니다.
플러그인의 폴더 이름을 변경한 후 오류가 사라졌는지 확인합니다(당연히 먼저 백업하십시오).그것이 도움이 되지 않는 경우는, 다음과 같은 해결책이 있습니다.
특정 플러그인을 비활성화하려면 모든 플러그인의 목록을 저장하는 직렬 문자열에서 해당 플러그인을 제거해야 합니다.option_value
의 컬럼wp_options
테이블은 @TimDurden에서 설명한 바와 같습니다.구체적인 형식을 변경해야 하는 것은 뻔뻔하게 인터넷에서 가져온 것입니다.
a:4:{
i:0;s:19:"akismet/akismet.php";
i:1;s:36:"google-sitemap-generator/sitemap.php";
i:2;s:55:"google-syntax-highlighter/google_syntax_highlighter.php";
i:3;s:29:"wp-swfobject/wp-swfobject.php";
}
그 첫 번째 캐릭터 세트-a:4
- 배열과 그 길이를 지정합니다.또한 플러그인 목록의 각 행에는 인덱스가 있습니다.그래서:
- 인덱스를 감소시킵니다(이 경우 4에서 3까지).
- 각 행에서 다음 번호 뒤에 있는 숫자를 줄입니다.
i:
- 사용하지 않도록 설정할 특정 플러그인을 제거합니다.
다음 절차에서 작성한 새 문자열을 사용하여 db 값을 업데이트합니다.
update wp_options set option_value=<new value> where option_id=<id of this option>
테이블 이름이 wp_options가 아닌 프레픽스가 추가되어 있을 수 있습니다.
/wp-content/plugins/에서 폴더 이름만 변경하면 플러그인이 자동으로 비활성화됩니다.활성화가 해제되면 로그인할 수 있습니다.
- 데이터베이스 백업 또는 wp_options 테이블만
-
select option_value FROM wp_value WHERE option_name = 'active_plugins';
- 선택한 문자열(확정된 문자열)을 복사하여 https://serializededitor.com/ 에서 왼쪽에 붙여넣습니다.
- 비활성화할 플러그인을 제거합니다.
오른쪽에서 serialized 결과 문자열을 복사하여 active_plugins 값을 업데이트합니다.
UPDATE wp_set set option_value = 'THE_NEW_SERIALIZED_'STRING' 여기서 option_name = 'active_plugins' 제한 1;
데이터베이스에서 옵션 문자열을 복구/삭제하기 위해 .dot에 작은 exe를 작성했습니다.
- 여기서 exe 다운로드
- MySQL 서버에서 실행
선택 * FROM WP_down WHERE option_name = 'active_plugins';
- 텍스트 상자에 결과 붙여넣기를 누르고 해석을 누릅니다.
- 필요 없는 건 제거하세요.
- 출력을 클릭하면 출력이 클립보드에 복사됩니다.
- 아래 작은 따옴표 안의 괄호를 출력 및 MySQL 서버에서 실행으로 바꿉니다.
UPDATE wp_set set option_value = '[내부 작은 따옴표를 출력으로 바꿉니다.' 여기서 option_name = 'active_plugins';
- 보증 없음...내가 프로그래머라고 주장하는 것은 아니다.
사이트에서 모든 Wordpress 플러그인을 비활성화하려면:
- 데이터베이스 관리 도구(PHPMyAdmin 등)에 로그인합니다.
- 다음 쿼리를 실행합니다.
UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';
또 다른 방법은 사이트를 백업하고 /wp-content/plugins/ 아래에 있는 플러그인의 폴더 이름을 다른 이름으로 바꾸는 것입니다.따라서 플러그인이 비활성화됩니다.오류가 발생할 수 있으므로 플러그인 폴더 삭제는 선호하지 않습니다.절차가 완료되면 워드프레스 사이트에 로그인하여 플러그인을 삭제합니다.
데이터베이스의 레코드 "active_plugins" 값만 변경하면 됩니다.프로세스는 이쪽에서 확인하실 수 있습니다.
답장이 늦었지만, 미래에 누군가에게 도움이 될 것이기 때문에 답한다.모든 플러그인은 직렬화된 방식으로 wp_options 테이블에 저장됩니다.이 필드는 수동으로 편집할 수 있습니다.또는 unserialize()를 사용하여 php와 같은 함수를 사용하여 serialize를 해제하면 어레이를 얻을 수 있습니다.해당 어레이에서 제거할 플러그인을 제거하도록 수정한 후 다시 직렬화합니다.그런 다음 표를 업데이트합니다.바로 그거야.만약 당신이 그것에 대해 더 알고 싶다면, 여기 좋은 기사가 있습니다.이게 다 설명이 되네요.
하면, 플러그 하게 할 수 .functions.php
:
function activate_plugin_via_php() {
$active_plugins = get_option( 'active_plugins' );
array_push($active_plugins, 'unyson/unyson.php'); /* Here just replace unyson plugin directory and plugin file*/
update_option( 'active_plugins', $active_plugins );
}
add_action( 'init', 'activate_plugin_via_php' );
언급URL : https://stackoverflow.com/questions/2624551/wordpress-deactivate-a-plugin-via-database
'sourcecode' 카테고리의 다른 글
Wordpress 투명 OAuth 1.0 PHP 로그인 (0) | 2023.02.07 |
---|---|
'SubSonic' 유형의 개체를 직렬화하는 동안 순환 참조가 탐지되었습니다.스키마Database Column'을 클릭합니다. (0) | 2023.02.07 |
워드프레스 쇼트코드 값 배열 전달 (0) | 2023.02.07 |
워드프레스가 올바른 코멘트 파일을 사용하지 않습니까? (0) | 2023.02.07 |
@font-face 새로 고침 시 Chrome에서 텍스트가 표시되지 않음...항상 그렇지는 않아? (0) | 2023.02.07 |