Eu tenho vários posts não publicados no meu site do Wordpress e estou tentando torná-lo acessível para usuários normais (que não estão logados) usando as lesmas de publicação normais ( site.com/post-here
). Entendo que pode não ser a melhor prática, mas para meu objetivo especial, isso precisa ser feito.
Tentei adicionar o seguinte trecho de código ao meu functions.php
arquivo:
function enable_view_drafts() {
$role = get_role( 'subscriber' );
$role->add_cap( 'read_private_posts' );
$role->add_cap( 'edit_posts' );
}
add_action( 'after_setup_theme', 'enable_view_drafts');
Eu também tentei init
gancho em vez de after_setup_theme
. Sem sorte
Meu entendimento é que as alterações nas funções são salvas no banco de dados e, portanto, precisam ser feitas apenas uma vez. É por isso que estou usando o after_setup_theme
gancho para chamar a função.
Mas quando tento acessar a página como um usuário normal, aparece uma página 404 em vez de mostrar o conteúdo da postagem. Também tentei carregar o URL de visualização ( site.com/?p=212&preview=true
), mas isso também não funcionou.
Estas são minhas suposições:
- o usuário normal não tem o suficiente
caps
para ler a postagem dos rascunhos. - não é possível testar e visualizar postagens de rascunho no front-end para nenhum usuário (incluindo administradores).
Que mudanças eu tenho que fazer para realizar o que estou tentando fazer? Se não for possível, que soluções alternativas você sugere?
Nota: Não estou procurando soluções baseadas em plug-ins.