Upload
-
Criei um metabox e coloquei um input file nele, coloquei a função de pasta de upload certinho, tudo certo, mas não funciona porque o formulario que envolve não tem enc=”multipart/form-data”. Como eu faço para funcionar?
Código do meu save post só da parte da imagem:
$img = $_FILES['imagem']; $path = wp_upload_dir(); $nome = $img['name']; $tmp = $img['tmp_name']; $pasta = $path['path']; $caminho = $pasta.$nome; if(!empty($nome)){ move_uploaded_file($tmp, $caminho); }
-
Alguem sabe?
gustmeaus,
você pode adicionar atributos ao formulário através da action ‘post_edit_form_tag’. Segue um exemplo:function multipart_form() { print ' enc="multipart/form-data"'; } add_action( 'post_edit_form_tag', 'multipart_form' );
Abraço.
Muito legal, mas não funcionou não, coloquei:
/* ENCTYPE do formulario que envolve metabox e tudo de posts e pages */ function multipart_form() { print ' enc="multipart/form-data"'; } /* Acao para adicionar multipart em formulario */ add_action('post_edit_form_tag', 'multipart_form');
Mesmo assim, valeu ai cara, pela ajuda!
Como faço então?
gustmeaus,
tenta assim:/* ENCTYPE do formulario que envolve metabox e tudo de posts e pages */ function multipart_form() { print ' enctype="multipart/form-data"'; } /* Acao para adicionar multipart em formulario */ add_action('post_edit_form_tag', 'multipart_form');
Mudei o ‘enc’ para ‘enctype’.
Po, mais uma vez obrigado, mas eu já tinha pensado que poderia ser isso, mas não foi não. Eu até achei o arquivo no wp-admin que tem esse form, mas lógico que não vou alterar um código interno do wp porque se não quem instalar o tema não vai poder usar de forma correta. Mas então por favor, me da uma ajuda ai! O que eu posso fazer para colocar um sistema de upload em um metabox (sem usar o thickbox do wp)? Valeu cara!
Tenta procurar uma solução para upload de arquivos via ajax, assim você consegue fazer o upload sem usar o thickbox, nem o form do post.
Valeu cara, uma boa idéia. Vou da uma pesquisada. Mais uma vez obrigado ae!
- O tópico ‘Upload’ está fechado para novas respostas.