Eu diria que uma linha seria presention versus criação de conteúdo .
Uma coisa é ter um controle deslizante que exibe determinados posts; é completamente diferente ter um novo tipo de postagem para o controle deslizante. Um controle deslizante pode ser configurado para exibir conteúdo com base em taxonomias existentes ou pós-meta existente (como postagens fixas), que seriam apenas apresentação do conteúdo. Pedir ao usuário para enviar imagens de controle deslizante para um tipo de postagem personalizado seria criação de conteúdo.
Um código de acesso que é adicionado ao conteúdo do post é, IMHO, sempre território do plug-in. Em termos de apresentação versus criação de conteúdo, um shortcode pós-conteúdo representa criação do conteúdo. Considere o que acontece quando o tema é alterado: de repente, o conteúdo do shortcode analisado é substituído por um shortcode feio.
Outra linha é a funcionalidade do site . Em quase todos os casos, a funcionalidade do site - que quase sempre é agnóstica em relação à apresentação do conteúdo - é o território do Plugin. Isso inclui coisas como remover a meta tag da versão do WordPress ou adicionar o Google Analytics.