Create content types containing other content-types
Ok, you should be familiar with


entity
view mode
entityreference


after install entityreference create a reference to books in your catelogs content-type, then go to catelogs &gt; manage display and for books reference select Rendered entity formatter and in its options set something like teaser

after this go to books &gt; manage display and configure teaser as you need.

also you can add more view modes by Display Suite or via simple module:

function mymodule_entity_info_alter(&amp;$entity_info) {
  $entity_info['node']['view modes']['render_in_catelogs'] = array(
      'label' =&gt; t('render in catelogs'),
      'custom settings' =&gt; FALSE,
  );
}