맞춤 게시물 유형 및 분류 이름 바꾸기


31

12 가지가 넘는 맞춤 게시물 유형으로 사이트를 개발하기 시작했습니다. 표시 값뿐만 아니라 실제 사용자 정의 게시물 유형 이름의 몇 가지 이름을 바꾸고 싶습니다. 그러나 SQL 업데이트 쿼리를 실행하여 변경하거나 직렬화 된 데이터의 일부를 덮어 쓸 필요가있는 곳을 놓칠 것이라고 걱정합니다. 이미 3,000 개가 넘는 항목을 입력 했으므로 깨끗한 데이터베이스로 다시 시작할 수 없습니다.

맞춤 게시물 유형의 이름을 바꾸는 가장 좋은 방법은 무엇입니까? 분류의 이름을 바꾸는 것은 어떻습니까?


같은 맥락에서 후속 질문은 사용자 지정 .htaccess 다시 쓰기 규칙에 관한 것입니다. 데이터베이스를 막는 많은 남은 규칙이 있습니까? 아직 사이트를 시작하지 않았으므로 이전 링크를 리디렉션 할 필요가 없습니다.
Derek Perkins

답변:


47

게시물 이름 바꾸기를위한 SQL 쿼리 :

UPDATE  `wp_posts` SET  `post_type` =  '<new post type name>' WHERE  `post_type` = '<old post type name>';

분류 이름 바꾸기를위한 SQL 쿼리 :

UPDATE  `wp_term_taxonomy` SET  `taxonomy` =  '<new taxonomy name>' WHERE  `taxonomy` = '<old taxonomy name>';

모든 데이터베이스 영역을 처리해야합니다. 게시물 유형 또는 분류법이 등록 된 코드에서 새 이름과 일치해야합니다. 내가 아는 한, 이것은 아직 플러그인에서 처리되지 않았습니다.


9
훌륭한 답변, 정확히 내가 필요한 것. 쿼리를 실행하고 코드를 업데이트 한 후 기본적으로 문제가 발생했지만 개별 컨텐트 항목의 페이지로 이동하려고하면 404 오류가 발생했습니다. 일부 퍼머 링크 캐시를 재설정해야한다고 생각합니다. 도구> 영구 링크로 이동하여 저장을 클릭 한 후 자세한 페이지가 작동하기 시작했습니다.
Andy Giesler

이 작업을 수행했을 때 guid 필드도 업데이트했습니다. 이것은 @AndyGiesler가 언급했듯이 영구 링크를 재생성하는 것을 불필요하게 만들 수 있습니다. UPDATE 문에 다음을 포함하십시오. guid = REPLACE (guid, '<이전 게시물 유형 이름>', '<새 게시물 유형 이름>')
rinogo

rinogo의 의견에 조금 더 많은 정보를 추가하기 위해, 이것은 guid를 업데이트하는 조금 더 안전한 방법입니다. > ');
David

멀티 사이트에서 실행할 때 테이블 이름을 지켜봐야합니다
acSlater

6

@Derek Perkins 안녕하세요 :

일반적으로 @John P Bloch의 대답은 주의 깊지 만주 의해야 합니다. 플러그인 및 사용자 정의 테마는 게시물 유형 정보를 저장할 수 있고 저장할 수 있으므로 데이터가 손상되지 않도록하려면 플러그인 및 테마가 게시물 유형을 저장하지 않거나 데이터를 업데이트하는 경우 데이터를 업데이트해야합니다 게다가.

사용중인 플러그인을 알려주시겠습니까?


그건 좋은 지적이야. 내 테마 사용자 정의를 작성 중이므로 분명히 코드를 살펴보고 변경해야합니다. 그러나 맞춤 게시물 유형 정보를 저장하는 플러그인이 없습니다.
Derek Perkins

이것은 좋은 지적입니다. 고급 사용자 정의 필드를 사용하고 있었고 해당 게시물에 첨부 된 각 필드 그룹에 대해 새 CPT 이름으로 수동으로 재설정해야합니다. 그 후 그것은 잘 작동합니다.
Chris Rae

4

SQL 쿼리를 직접 수행하지 않으려면 몇 가지 플러그인을 사용할 수 있습니다.

나는 성공적으로 사용했습니다 변환 포스트 유형 질량 변화의 게시물.

개별 게시물을 변환하는 경우 게시물 유형 전환기 가 더 나은 옵션입니다.


해당 링크를 게시 해 주셔서 감사합니다. SQL 쿼리를 직접 실행해도 괜찮지 만이 게시물을 보는 다른 사람들에게는 분명히 유용 할 것입니다.
Derek Perkins

이것은 게시물 유형을 바꾸지 않고 이름을 바꾸지 않는 것 같습니다
vladkras
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.