Cómo eliminar el enlace "+ Agregar nueva categoría" de una categoría Metabox

9

Dentro de un metabox de la categoría de Wordpress o de cualquier caja de taxonomía personalizada, para el caso hay un enlace con el texto "+ Agregar nueva categoría". Existe una forma en que este enlace se puede eliminar preferiblemente sin recurrir a hacks JS o CSS para ocultarlo. ? Una forma de ocultarlo utilizando algún tipo de filtro o gancho de acción sería lo mejor.

Si no existe ningún método de filtro o gancho de acción para eliminarlo, estaría abierto a las soluciones JS y CSS como último recurso.

La razón por la que hago esto es porque tengo una instalación de Wordpress integrada con Magento y estoy creando y completando una taxonomía personalizada llamada "marcas" con una lista de marcas de la base de datos de Magento para poder asignar una publicación a una marca. . Obviamente, esto significa que no quiero que los usuarios puedan agregar sus propios términos y solo poder elegir las marcas agregadas dinámicamente para mantenerlo en sincronía con Magento.

Gracias.

    
pregunta Dwayne Charrington 22.09.2011 - 01:16

1 respuesta

13

Los metaboxes predeterminados se registran en el archivo wp-admin/includes/meta-boxes.php . Allí puede encontrar la función post_categories_meta_box() que generará el metabox de taxonomía. Actualmente no hay gancho disponible para filtrar la salida. Pero puedes hacer uno de los siguientes:

  1. Use remove_meta_box() para eliminar el metabox de la categoría existente y registre su propia cuenta con add_meta_box() . Copie y pase el código existente a su nueva función metabox y elimine el bloque de código de la línea 345 a 367 .
  2. La forma más limpia: elimine la capacidad edit_terms de sus roles de usuario con remove_cap() . Si observa la función metabox, en la línea 345 puede ver una sentencia if que verifica si el usuario tiene la capacidad edit_terms . Si es así, se mostrará el + Add New XY . Problema aquí, el nombre de la capacidad es dinámico y podría ser cualquier cosa. Si alguien registra una taxonomía con un nombre de capacidad diferente, es probable que esto no funcione (sin probar).
respondido por el rofflox 22.09.2011 - 10:00

Lea otras preguntas en las etiquetas