Eliminar valores de foreach antes de preencher um select
-
Estou tentando restringir a visibilidade de campos personalizados pelos contribuidores em um blog multi-autor.
Por exemplo, ao criar um novo artigo, quero que apenas administradores tenham acesso a opções como “seo”, “rating”, “views”, etc. O colaborador só vai poder adicionar custom fields como “autor”, “editora”, etc.
Procuro há dias como fazer isso, mas só consegui eliminar os campos do select através de css, o que não é seguro. Descobri que no arquivo em wp-admin/includes/template.php, fica o trecho que gera o select com as opções, assim:
foreach ( $keys as $key ) { echo "\n<option value='" . esc_attr($key) . "'>" . esc_html($key) . "</option>"; }
Mas não sei como pegar o resultado do loop antes de preencher o select, eliminar os campos indesejados (“views”, por exemplo), e seguir em frente. Seria algo como:
foreach ( $keys as $key ) { /* se uma das key for igual a "views", ou "seo", elimine-a e continue, gerando o select com as restantes */ echo "\n<option value='" . esc_attr($key) . "'>" . esc_html($key) . "</option>"; }
Alguma luz sobre como fazer isso, ou alguma sugestão mais eficiente sobre o problema, mesmo com outra abordagem? Obrigado antecipadamente.
- O tópico ‘Eliminar valores de foreach antes de preencher um select’ está fechado para novas respostas.