উত্তর:
আপনার ট্যাগ অনুসারে, আপনি একটি ডি 7 সমাধান সন্ধান করছেন। Drupal এর 7 page.tpl.php $ SEARCH_BOX- এর পরিবর্তনশীল আর নেই। তবে আপনি এটিকে আপনার টেমপ্লেট.এফপি-এ একটি প্রিপ্রোসেস ফাংশনে যুক্ত করতে পারেন:
<?php
/*
* Preprocess page.tpl.php to inject the $search_box variable back into D7.
*/
function MYTHEME_preprocess_page(&$variables){
$search_box = drupal_render(drupal_get_form('search_form'));
$variables['search_box'] = $search_box;
}
তারপরে আপনাকে কেবল আপনার পৃষ্ঠা.tpl.php এ ভেরিয়েবল মুদ্রণ করতে হবে:
<?php print $search_box; ?>
আপনি মডিউল_ইনভোকও ব্যবহার করতে পারেন তবে টেমপ্লেট ফাইলগুলিতে আপনার পিএইচপি যুক্তি থাকা উচিত নয়:
<?php
$block = module_invoke('search', 'block_view', 'search');
print render($block);
?>
পরিবর্তে এটি সঠিক উপায়ে করুন এবং ব্লকটি ব্যবহার করুন।
পৃষ্ঠার ভিতরে থাকা হার্ডকোডিং উপাদানগুলি .tpl, "শুভ পুরাতন দিনগুলি" থেকে এখনও এমন একটি বিষয় যা আইএমএইচও চারপাশে ভাসমান।
পরিবর্তে ব্লক সিস্টেমটি ব্যবহার করুন; এটি আপনাকে আরও রাস্তায় আরও নমনীয়তা দেয়। আপনি ব্লকাইফাই মডিউলটিও দেখতে চাইতে পারেন ।
এই মডিউলটি বেশ কয়েকটি কোর ড্রুপাল উপাদানকে ব্লক হিসাবে প্রকাশ করে।
আপনি page.tpl.php ফাইলের $search_box
জন্য উপলভ্য চলকটি ব্যবহার করতে পারেন ।
আপনি ব্লক সিস্টেমটি ব্যবহার করতে পারেন এবং পৃষ্ঠায় অনুসন্ধান ফর্ম ব্লকটি যুক্ত করতে পারেন
প্রশাসক> কাঠামো> ব্লক: অনুসন্ধান ফর্ম Search
যেমন নেভিগেশন মেনুতে স্থাপন করতে, অঞ্চলটিতে ব্লকটি রাখুন
"ন্যাভিগেশন"
এবং তারপরে CSS এর সাথে প্রান্তিককরণ করুন।
যেমন নেভিগেশন মেনুর ডানদিকে রাখা:
#navigation #block-search-form{
position: absolute;
right: 10px;
top: 0;
}