J'ai besoin d'un moyen de masquer un type de contenu sur la page d'ajout de nœud, ou mieux encore, de créer deux pages d'ajout de nœud séparées qui séparent mes types de contenu. Je suis sur Drupal 7 et j'ai quatre types de contenu différents. Je voudrais que trois d'entre eux soient sur la page d'ajout de noeud par défaut et le quatrième soit séparé. Comment pourrais-je faire cela? Merci
Deux possibilités:
admin/structure/menu/manage/navigation
déplacer/supprimer un élément de menu dont vous ne voulez pas.Mettez cela dans un module personnalisé:
function yourcustommodule_menu_alter(&$items) {
if (isset($items['node/add/your-content-type'])) {
$items['node/add/your-content-type']['type'] = MENU_DEFAULT_LOCAL_TASK;
}
}
[~ # ~] mise à jour [~ # ~]
MENU_CALLBACK
, comme suggéré dans d'autres réponses, n'a pas fonctionné pour moi ici. Ils apparaissent toujours sur le node/add
page.
Ce code a fonctionné:
function MYMODULE_menu_alter(&$items) {
if (isset($items['node/add/your-content-type'])) {
unset($items['node/add/your-content-type']);
}
}
Bien sûr, cela suppose que vous souhaitez désactiver (pas masquer) le node/add
lien pour ce type.
RÉPONSE ORIGINALE
Le node/add
la page est fournie par le module Node. Vous pourriez être en mesure de faire ce que vous voulez en désactivant l'élément de menu dans le menu Navigation, selon cet article: http://data.agaric.com/disabling-or-moving-nodeaddcontent-type-links-from-beneath-add-content-navigation-menu-also-removes
C'est un peu un bug, donc ce n'est peut-être pas un moyen fiable de le faire. Personnellement, je créerais une version personnalisée du node/add
page dans un module en copiant celui existant et en faisant mes modifications spécifiques. Ensuite, j'utiliserais hook_menu_alter
pour faire node/add
allez dans ma version.
Vous pourrez peut-être le remplacer par une vue ou un panneau à la place (avec Page Manager), mais je n'ai pas essayé cela, et vous perdriez probablement l'automatisation.