ড্রুপাল 8.0 বিটা 2 সহ, drupal_add_html_head()
এর পক্ষে অবমূল্যায়ন করা হয়েছে#attached
। সুতরাং পুরানো উপায় ছিল:
function MYTHEME_page_build(&$page) {
$viewport = array(
'#type' => 'html_tag',
'#tag' => 'meta',
'#attributes' => array(
'name' => 'viewport',
'content' => 'width=device-width, initial-scale=1.0, maximum-scale=2.0, minimum-scale=0.55, user-scalable=yes',
),
);
drupal_add_html_head($viewport, 'viewport');
}
আপনি এখন যে পরিবর্তন নোটিশটি ব্যবহার করছেন তার ভিত্তিতে #attached
। সুতরাং উপরের কোডটি মূলত শেষ অংশে পরিবর্তনের সাথে একই রকম:
$build['#attached']['html_head'][] = [$viewport, 'viewport'];
এটি যদিও কাজ করে না এবং ওয়াচডগে কোনও ত্রুটি বার্তা নেই। আমি একটি পৃষ্ঠায় এই নির্বাণ থাকেন চেষ্টা পরিবর্তন সেইসাথে সোয়াপিং $build
সঙ্গে $variables
এবং $output
কিন্তু এটি এখনও নেই হবে। সংযোজন হিসাবে, আমি অ্যারে হিসাবে পুরো জিনিসটি চেষ্টা করেছিলাম:
$build['#attached']['html_head'][] = array(
'#type' => 'html_tag',
'#tag' => 'meta',
'#attributes' => array(
'name' => 'viewport',
'content' => 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no',
),
);
... কিন্তু এটিও কার্যকর হয়নি। আমি নিশ্চিত না যে আমি কী ভুল করছি, মনে হচ্ছে এটি কাজ করা উচিত।
হালনাগাদ
এখানে এমন কোডিং কোড রয়েছে যা ব্যবহার করে hook_page_attachments_alter
যা ডি 8 বিটা 2 তে নেই কারণ এটি কেবলমাত্র দেব প্রতিশ্রুতিবদ্ধ ছিল।
function MYTHEME_page_attachments_alter(array &$page) {
$viewport = array(
'#type' => 'html_tag',
'#tag' => 'meta',
'#attributes' => array(
'name' => 'viewport',
'content' => 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no',
),
);
$page['#attached']['html_head'][] = [$viewport, 'viewport'];
}
এখন একমাত্র সমস্যা হ'ল কোর এর ভিউপোর্ট ট্যাগটি ওভাররাইট করা যায় না তাই আমি আমার কাস্টম ট্যাগ এবং কোর এর সাথে আটকে আছি। কীভাবে এটি হ্যান্ডেল করবেন তা নিশ্চিত নয় বা আমার ট্যাগটি ওভাররাইটিং কোরের হওয়া উচিত?