Olá!
 
	Eu preciso montar uma tela onde seja exibido uma lista de publicações ordendas a critério do usuário, por exemplo: Categorias (LIVROS, PERIÓDICOS e CAPÍTULOS DE LIVROS), o usuário irá ordenar conforme sua necessidade. 1º PERIÓDICOS, 2º LIVROS, etc....
 
	Eu preciso que a tabela que contenha as publicações sejam listadas abaixo de cada categoria, sendo ordenadas pela maior data de cada publucação por Categoria.
 
	Então pensei em fazer um laço para ler a ordem das categorias e montar na tela e abaixo de cada categoria virá as publicações de cada categoria ordenadas como falei acima.
 
	O problema é que no meu laço, isso só está sendo feito uma única veze não repete para as demais categorias, que são exibidas na tela vazias.
 
	 
	Quando eu mudo a ordenação das categorias o mesmo ocorre.
 
	 
	nesse caso as categorias PERIÓDICOS e CAPÍTULOS DE LIVROS, não recebem os dados de suas publicações.
 
	O código do laço é esse:
 
<?php
/* vai receber o titulo de cada categoria para fazer a SELECT*/
global $utf_tit_categ;
$ordenacao = "SELECT titulo_categoria FROM tblcatpesquisa ORDER BY posicao";
$relaciona = mysqli_query($conecta, $ordenacao);
/* tem a variável $rowcount que recebe o total de registros da tabela de CATEGORIAS */	
for($a=0; $a <= $rowcount; $a++){
	
$ordem = mysqli_fetch_assoc($relaciona);
	$utf_tit_categ = utf8_encode($ordem['titulo_categoria']); /*a Global vai receber o nome da categoria formatado em UTF8*/
	
/* aqui é montado a exibição do título de cada uma das CATEGORIAS contadas por $rowcount */
	echo "<div class='container bg-primary'><span class='font-weight-light text-white'>{$utf_tit_categ}</span></div>";
/* faço um Query para relacionar todas as publicações referentes a CATEGORIA do primeiro loop de FOR*/
	$seleciona_itens = "SELECT datapublicacao, titulo, linkexterno FROM publicacoes WHERE categoria='$utf_tit_categ' ORDER BY datapublicacao DESC";
	$executa_busca = mysqli_query($conecta, $seleciona_itens);
	while($item = mysqli_fetch_assoc($executa_busca)){
	$utf_tit_pesq = utf8_encode($item['titulo']);	
	echo "<div id='fundo'><span class='mx-3'>{$item['datapublicacao']} - {$utf_tit_pesq} - {$item['linkexterno']}</span></div>";
	}
	mysqli_free_result($executa_busca); /*Libero a Query para uma nova consulta*/
/* o laço deve voltar daqui até que $rowcount seja atingido */
}
mysqli_free_result($relaciona);	
?>
	Não sei o que estou fazendo errado, ou então o que eu deixei de fazer.
 
	Alguém poderia me auxiliar para resolver esse problema?
 
	Grato!.