Questão
A desinstalação de um recurso que cria um tipo de conteúdo oculta o link "Excluir" no admin/structure/types
.
A desinstalação de um recurso que cria um tipo de conteúdo oculta o link "Excluir" no admin/structure/types
.
Usando um hook_uninstall()
arquivo FEATURE_NAME.install e alterando o status do tipo de conteúdo, para que o sistema pense que é um tipo de conteúdo personalizado e desbloqueado.
Eu postei isso também no d.org .
<?php
/**
* Implements hook_uninstall().
*/
function FEATURE_NAME_uninstall() {
// List custom content types added by this feature
$custom_ctypes = array(
'blog',
);
// Go through each and unlock the content type
foreach ($custom_ctypes as $ctype) {
db_query("UPDATE {node_type} SET `custom` = 1, locked = 0 WHERE type = :ctype", array(':ctype' => $ctype));
}
// Clean Drupal cache; this is necessary for the "Delete" link to appear
// next to the content type created by the feature.
drupal_flush_all_caches();
}
Isso fará com que o botão "Excluir" apareça para esse tipo de conteúdo, para que você possa excluí-lo do administrador.
Espero que isso ajude alguém!
node_type_delete($ctype);
após a consulta no loop for.mysql> UPDATE node_type SET custom = 1, locked = 0 WHERE type = '<content type machine name>';
Para mim, a solução foi carregar a página de exclusão manualmente, pois não há um link "excluir" na página de tipos de conteúdo. Para fazer isso, você só precisa criar o URL seguindo a mesma estrutura de URL que a página de exclusão para outros tipos de conteúdo:
admin / estrutura / tipos / gerenciar / YOUR_CONTENT_TYPE_MACHINE_NAME / delete
Isso exibiu a página de confirmação de exclusão do tipo de conteúdo, que me permitiu excluir o tipo de conteúdo.
Para referência, consulte este tópico no Drupal.org:
https://drupal.org/node/1055460#comment-7297680
Saudações,
@cmsdave
fonte
.info
arquivo do recurso e remover o tipo de conteúdo, e ele realmente foi excluído.O método acima não exclui taxonomias, mas isso pode ser alcançado anexando o seguinte após desativar e desinstalar o módulo:
fonte
Outra solução que funcionou para mim diretamente no banco de dados no meu site de desenvolvimento. Lembre-se de sempre fazer backup do seu banco de dados.
Para excluir manualmente um tipo de conteúdo criado por um recurso # 16, o que o Nedjo sugere é o seguinte:
fonte
Se você usar o módulo admin_menu , ainda verá os links para exclusão no menu suspenso Estrutura / Tipos de conteúdo / [nome do tipo de conteúdo] / Excluir, mesmo que eles não sejam exibidos na página de tipos de conteúdo.
Eu diria que é bastante seguro usar esse link de exclusão se você garantir que não há mais outras referências a esse tipo de conteúdo.
fonte