আমি একটি নতুন অঞ্চল যুক্ত করতে চাই যা সাইটের প্রশস্ত হবে। আমার থিমটিতে এই নতুন অঞ্চলটি পাওয়ার প্রক্রিয়াটি বর্ণনা করুন, সম্ভব হলে কোনও নতুন, কাস্টম অঞ্চল যুক্ত করার জন্য এটিকে সাধারণীকরণ করুন।
আমি একটি নতুন অঞ্চল যুক্ত করতে চাই যা সাইটের প্রশস্ত হবে। আমার থিমটিতে এই নতুন অঞ্চলটি পাওয়ার প্রক্রিয়াটি বর্ণনা করুন, সম্ভব হলে কোনও নতুন, কাস্টম অঞ্চল যুক্ত করার জন্য এটিকে সাধারণীকরণ করুন।
উত্তর:
আপনি আপনার থিম। ইনফো ফাইলের অঞ্চলগুলিকে সংজ্ঞায়িত করেন। দেখুন: .info ফাইলের কাঠামো
তারপরে আপনাকে আপনার পৃষ্ঠা.tpl.php ফাইলে প্রাসঙ্গিক টেমপ্লেট ট্যাগগুলি রাখতে হবে।
সুতরাং উদাহরণস্বরূপ আপনি যদি sidebarআপনার থিমস। ইনফো ফাইলটিতে অঞ্চলটি সংজ্ঞায়িত করেন তবে আপনি তারপরে <?php print render($page['sidebar']); ?>আপনার পৃষ্ঠা.tpl.php- এ প্রাসঙ্গিক জায়গায় যুক্ত করতে পারেন।
অন্য একটি বিষয়: প্রয়োজনীয় অঞ্চলগুলি মিস করবেন না!
regions[content] = Content
regions[help] = Help
regions[page_top] = Page top
regions[page_bottom] = Page bottom
এটি সম্পর্কে আরও http://drupal.org/update/themes/6/7# সমাধিতে পাওয়া যাবে ।
এই বিষয়টিতে স্পষ্ট করার জন্য: আপনি যদি নিজের অঞ্চলগুলি সংজ্ঞায়িত করেন তবে প্রয়োজনীয় সমস্তগুলি সহ আপনি যা ব্যবহার করছেন তা আপনাকে অবশ্যই সংজ্ঞায়িত করতে হবে। অন্য কথায়, আপনি কেবল অতিরিক্ত অঞ্চলগুলি সংজ্ঞায়িত করতে পারবেন না: আপনি যদি কোনও সংজ্ঞা দেন তবে আপনাকে অবশ্যই সেগুলি অবশ্যই সংজ্ঞায়িত করতে হবে।
একটি দ্রুপাল 7 থিমের জন্য অঞ্চল তৈরি করা একটি দ্রুপাল 6 অঞ্চলের জন্য অঞ্চল তৈরি করা থেকে আলাদা নয়; ড্রুপাল 7 এবং পূর্ববর্তী সংস্করণগুলির মধ্যে পার্থক্যগুলি মূলত:
mytheme_regions()ফাংশন ব্যবহার করে সংজ্ঞায়িত করা হয় নি যেমন এটি দ্রুপাল ৫-এ করা হয়েছিল, তবে তারা মাইথেম.ইনফোতে regions[]নির্দেশিকা ব্যবহার করে সংজ্ঞায়িত হয়েছে , যা ড্রুপাল themes থিমের সাহায্যেও করা হয়।render()ভেরিয়েবলের বিষয়বস্তু মুদ্রণের পরিবর্তে দ্রুপাল ফাংশন ব্যবহার করে রেন্ডার করা হয় ।ডিফল্ট ড্রুপাল 7 অঞ্চল নিম্নলিখিত অঞ্চলগুলির মধ্যে রয়েছে:
regions[header] = Header
regions[highlighted] = Highlighted
regions[help] = Help
regions[content] = Content
regions[sidebar_first] = Left sidebar
regions[sidebar_second] = Right sidebar
regions[footer] = Footer
ড্রুপাল core টি মূল থিমগুলিতে এখন 'হাইলাইটেড' নামের একটি অঞ্চল অন্তর্ভুক্ত রয়েছে যা দ্রুপাল in এর মিশন স্টেটমেন্ট অঞ্চল হিসাবে একই প্রদর্শন ব্যবহার করে; এগুলিতে 'সহায়তা' নামে একটি অঞ্চলও অন্তর্ভুক্ত থাকে যা ডিফল্টরূপে $helpদ্রুপাল 6 দ্বারা ব্যবহৃত ভেরিয়েবলের একই বিষয়বস্তু রয়েছে ।
থিম অঞ্চলগুলি আপনার থিম। ইনফো ফাইলে সংজ্ঞায়িত করা হয়েছে - দস্তাবেজগুলি দেখুন । regions[corner] = Cornerকর্নার অঞ্চল পেতে কেবল একটি লাইন যুক্ত করুন ।
তারপরে আপনাকে page.tpl.php ফাইলটি সম্পাদনা করতে হবে এবং <php print render($corner); ?>অঞ্চলটি যেখানে প্রদর্শিত হবে তা যুক্ত করতে হবে। আপনার থিমের যদি পেজ.টিপিএলপিএফপি না থাকে তবে বেস থিম বা সিস্টেম মডিউল থেকে অনুলিপি করুন।
সাধারণ ক্ষতি:
থিম.info ফাইলটির কোনও অঞ্চল ঘোষণা না হলে এটি ড্রুপাল ডিফল্ট অঞ্চল ব্যবহার করে। আপনি যদি যুক্ত করতে চান তবে আপনাকে ডিফল্ট অঞ্চলগুলি আবার ঘোষণা করতে হবে। আপনি অবশ্যই কোনও অঞ্চল অপসারণ করতে পারেন তবে প্রয়োজনীয় অঞ্চলগুলিকে সমর্থন করুন। দেখুন ডক্স আবার।
.Info ফাইলের পরিবর্তনগুলি বা থিমে নতুন ফাইল যুক্ত করা (পেজ.টপিএলপিএফপি এর মতো) কেবল আপনি ক্যাশে সাফ করার পরে তা লক্ষ্য করা যাবে।
ওমেগা, একটি খুব জনপ্রিয় বেস থিম, কেবল পেইজ.টপিএলপিএফপি কোনও পরিবর্তন প্রয়োজন হবে না, কেবলমাত্র ইনফো ফাইল। তবে আপনাকে ইউআইতে থিম সেটিংসে যেতে হবে এবং আপনার অঞ্চলটিকে একটি জোনে নির্ধারণ করতে হবে।
regions[content] = ContentD7 একমাত্র প্রয়োজনীয় অঞ্চল? drupal.org/node/171205#regions এই পরোক্ষভাবে বলে মনে হয়, কিন্তু তারপর drupal.org/node/171224 বলছেন যে প্রয়োজন অঞ্চলে হয় content, help, page_topএবংpage_bottom
contentঅবশ্যই এটি অত্যন্ত গুরুত্বপূর্ণ। helpমূল দ্বারা সমর্থিত (আউটপুট সহায়তা বার্তাগুলিতে), page_bottomসম্ভবত যেখানে নীচের অংশে js প্রিন্ট করা থাকে এবং page_topমনে হয় মূল টুলবারের মতো নববারের জন্য এটি ব্যবহৃত হয়।
আপনার থিমটিতে কাস্টম অঞ্চল তৈরি করতে নীচের পদক্ষেপগুলি অনুসরণ করুন:
আপনার theme.info ফাইলে যান এবং এই লাইনটি যুক্ত করুন।
regions[machine_name_of_your_region] = Name of your regionযদিও আপনি নোড টেমপ্লেটেও অঞ্চল ব্লকগুলিকে কল করতে পারেন তবে আপনি সাধারণত থিমের পৃষ্ঠা টেম্পলেটটিতে অঞ্চল যুক্ত করবেন। এটি সাধারণত পৃষ্ঠা.tpl.php, বা আপনার যদি বিভিন্ন পৃষ্ঠার জন্য কাস্টম টেম্পলেট ফাইল থাকে তবে সেগুলিও সম্পাদনা করুন। নতুন অঞ্চলটি কেবলমাত্র সেই টেম্পলেটটির চারপাশে নির্মিত পৃষ্ঠাগুলিতে প্রদর্শিত হবে যেখানে আপনি নতুন অঞ্চল যুক্ত করেছেন। আপনি যেখানে নতুন অঞ্চলটি দেখতে চান সেখানে এটি আটকান।
<?php if ($page['machine_name_of_your_region']): ?>
<div id="sidebar-first" class="column sidebar"><div class="section">
<?php print render($page['machine_name_of_your_region']); ?>
</div></div> <!-- /.section, /#sidebar-first -->
<?php endif; ?>
কনফিগারেশন - পারফরম্যান্স - সমস্ত ক্যাশে সাফ করুন
আপনাকে কেবল এটি দুটি ফাইলে সংজ্ঞায়িত করতে হবে।
;;;;;;;;;;;;;;;;;;;;;
;; Regions
;;;;;;;;;;;;;;;;;;;;;
regions[navigation] = 'Navigation'
regions[header] = 'Top Bar'
regions[highlighted] = 'Highlighted'
regions[new_region_name] = 'Region Name' ;; Add New Region
এখন এই অঞ্চলটি রেন্ডার করুন
<?php if ($page['new_region']): ?>
<div class="new_region_class">
<?php print render($page['new_region']); ?>
</div>
<?php endif; ?>
এখন সমস্ত ক্যাশে সাফ করুন, আপনি এখানে যান, আপনার থিমের একটি নতুন অঞ্চল আছে। আপনি এটি আপনার ব্লক কনফিগারেশন পৃষ্ঠাতে দেখতে পারেন।
আরও দেখার জন্য http://drupal.org/node/171205 দেখুন