Como encontrar as galerias do WordPress Nextgen que não são usadas nas postagens do WordPress?

Estou usando o WordPress com a Galeria Nextgen por Alex Rabe por algum tempo. Era uma vez que eu tinha uma boa quantidade de galerias no meu site que foram usadas em muitas postagens através do shortcode da galeria nextgen. Mas, para o aprimoramento de qualidade, eliminei muitas postagens, mas as galerias relacionadas a essas postagens permanecem no sistema de arquivos como órfão. Como encontrar as galerias não usadas no database de postagem?

Tabela adicionada pela galeria nextgen:

wp_ngg_gallery

Column Type Null Default Comments gid bigint(20) No name varchar(255) No slug varchar(255) No path mediumtext Yes NULL title mediumtext Yes NULL galdesc mediumtext Yes NULL pageid bigint(20) Yes 0 previewpic bigint(20) Yes 0 author bigint(20) 

wp_posts (tabela padrão do WordPress)

 Column Type Null Default Comments ID bigint(20) No post_author bigint(20) No 0 post_date datetime No 0000-00-00 00:00:00 post_date_gmt datetime No 0000-00-00 00:00:00 post_content longtext No 

gid é o ID da galeria. por exemplo, se o gid for 8 eu uso o shortcode da galeria nextgen [nggallery id = 8] na postagem e é salvo no campo post_content da tabela wp_posts. Eu quero saber os gid’s que não estão presentes em qualquer conteúdo de postagem de toda a tabela de wp_posts.

Solutions Collecting From Web of "Como encontrar as galerias do WordPress Nextgen que não são usadas nas postagens do WordPress?"

Goto wp_postmeta(TABLE)-> meta_key(COLUMN)->gallery_id(value) tem algum valor em meta_value(COLUMN) contra o seu post_id(COLUMN in this table)

Se suas galerias são tipos de postagem de attachment (?), Então você poderia simplesmente modificar meu ” Plugin de Verificador de Link Interno ” para pesquisar apenas para galerias.

Você precisa mudar:

 WHERE post_content LIKE '%{$post->post_title}%' OR '%{$post->post_name}%' ORDER BY post_date 

para:

 WHERE post_type = 'attachment' 

Desta forma, você lista os anexos anexados “anexo” para a publicação exibida no momento.

O shortcode não tem nada a ver com a forma como a mídia está armazenada em seu database. Apenas se preocupa com a exibição da galeria.


Editar:

As seguintes linhas devem dar-lhe todas as postagens que possuem o nggallery no conteúdo do post.

 WHERE post_content LIKE '%nggallery%' ORDER BY post_date 

Depois de encontrar e remover todas essas postagens, você pode excluir suavemente essa tabela (eu não faria isso antes).