আমি নোড অবজেক্ট থেকে নোড টাইপ লেবেলটি কীভাবে পাব?


12

আমি ড্রুপাল 8-এ নোডের অবজেক্ট থেকে নোডের বান্ডিল লেবেল (নোড টাইপ লেবেল) পাওয়ার চেষ্টা করছি।

এটি কাজ করে তবে দীর্ঘায়িত বলে মনে হচ্ছে:

$node_type = \Drupal::entityManager()->getStorage('node_type')->load($node->getType())->get('name');

কম জটিল উপায়ে সম্ভব, বান্ডিল লেবেল পাওয়ার আরও কি উপায় আছে?


6
$node->type->entity->label();একটু বেশি কৌতূহল বোধহয়? আমি নিশ্চিত নই যে বর্তমানে একটি সংক্ষিপ্ত সংস্করণ রয়েছে
— ক্লাইভ

2
টুইগ টেম্পলেটটিতেও কাজ করে: {ode node.type.entity.label}}
— Oknate

উত্তর:




6

আপনি যদি ডাবের লেবেল চান

{{ node.type.entity.label }}

5

এই কোড ব্যবহার করে দেখুন।

use Drupal\node\Entity\NodeType;

$types = NodeType::loadMultiple();
$bundle = $node->bundle(); 
$type_name = $types[$bundle]->label();

2
এটি কেবল একটির লেবেল পেতে সমস্ত নোডের প্রকারগুলি লোড করে। কিছুটা অদক্ষ, আপনি যেটি চান তার চেয়ে বেশি লোড করা ভাল।
— বারদির

একমত! এটি কেবলমাত্র কোনও এসএসওয়েটের কোডের ভিত্তিতে নয়।
— মিস্টার

এটি নির্দেশ করার জন্য @ বার্ডির থেক্স। আমি প্রশ্নটি গিরগিটি করতে চাই না, তাই আমি এটি গ্রহণযোগ্য উত্তর হিসাবে ছেড়ে দেব। আমি পরিবর্তে কোডটি আমার নিজের উত্তরে ব্যবহার করছি।
— কোনও এসসিওয়েট

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.