Since in a compact Riemannian manifold $M$ the only totally convex subset is the whole manifold itself, see Closed manifold has no nontrivial totally convex subset?, it should follow that for every point $p\in M$ there exists a geodesic loop starting and ending at $p$ (not necessarily "closing" smoothly). I was looking for a (possibly simple) direct proof of this fact without passing by the general theorem (whose proof is not easy, in my opinion). Thanks.

Here is a standard argument, but I do not know a reference. Choose the smallest $k>0$ such that $\pi_kM\ne 0$. Choose a spheroid which represents a nontricial element of $\pi_kM$. We can assume that the spheroid is swapped by an $\mathbb S^{k1}$parameter family of broken geodesics such that the length of each edge is smaller than the injectivity radius of $M$; denote it by $i_M$. Start a natural curveshortening process. You can choose one which keep the lengths of the edges below $i_M$ and such that the rate of length (or energy) decay is estimated through rate of change of the broken geodesic. Note that there is a lower bound for the maximal length of broken geodesics; "maximal" means "maximal in the $\mathbb S^{k1}$family after spending arbitrary time in the process". Say, this value can not go below $i_M$. It follows that after long time in the process, one broken line in the family almost does not change the length. Hence this it almost does not move; the later implies that and all the angles almost $\pi$. Pass to the limit and you get the loop. 

