In recent years, the integration of knowledge graphs into explainable recommendation systems has attracted more and more attention. And the relations existing in the knowledge graph can provide much information while exploring the users' preference. However, existing approaches only consider the single relation between entities, so they lack accuracy and practicality for multiple relations. In addition, previous work cannot capture the semantics of all paths. Towards this end, we propose three significant modelling advances: (1) besides the relations, we also learn to jointly reasoning on the entities and entity-types; (2) we use elaborate pooling layer to incorporate the paths between entities; (3) we take a better way to extract paths' semantic representations. The experimental study demonstrates the superiority of our method compared with the state-of-the-art ones.