get()を使用して複数の親モデルを取得する場合、take()関数とlimit()関数は積極的な読み込みでは機能しません。
したがって、別の方法を実行する必要があります。
$categories = Category::with('contents')->get();
$categoriesを取得した後 、以下のようにforeachループを実行できます
$contents = [];
foreach($categories as $category){
$category->limitedContents = $category->contents()->with('languages')->limit(4);
}
これを行うことで、 limitedContentsのすべてのカテゴリでカテゴリごとに4つのコンテンツを取得できます 。