বাক্সের বাইরে ড্রুপাল একটি পৃষ্ঠা নিয়ে আসে (যা পূর্বনির্ধারিত হোমপৃষ্ঠা) যা নোড পাথের জন্য বরাদ্দ করা হয় ।
কীভাবে আমি ব্যবহারকারীরা এটি পৌঁছে দিতে এড়াতে পারি এবং সেগুলি সাইটের আসল হোমপেজে পুনর্নির্দেশ করব?
বাক্সের বাইরে ড্রুপাল একটি পৃষ্ঠা নিয়ে আসে (যা পূর্বনির্ধারিত হোমপৃষ্ঠা) যা নোড পাথের জন্য বরাদ্দ করা হয় ।
কীভাবে আমি ব্যবহারকারীরা এটি পৌঁছে দিতে এড়াতে পারি এবং সেগুলি সাইটের আসল হোমপেজে পুনর্নির্দেশ করব?
উত্তর:
পৃষ্ঠাটি লুকানোর কোনও সহজ উপায় নেই। আপনি যদি এটি ব্যবহার না করেন তবে আপনি hook_menu_alter () প্রয়োগ করতে পারেন , এবং হয় এটি সম্পূর্ণরূপে সরিয়ে ফেলতে পারেন, বা এর অ্যাক্সেস কলব্যাক সেট করতে পারেন FALSE
।
আপনি প্রথম পৃষ্ঠার হিসাবে ব্যবহার করতে চান এমন পৃষ্ঠায় / নোড থেকে পুনঃনির্দেশ করে এমন একটি পথের নাম তৈরি করুন।
আমি নোডের পৃষ্ঠা কলব্যাকটি পরিবর্তন করতে পছন্দ করি যাতে এটি 404 পৃষ্ঠা ত্রুটি দেখায়।
অ্যাক্সেস / নোডের সময় এটি সর্বদা আপনার কাস্টম 404 পৃষ্ঠাটি দেখায়।
function yourmodule_menu_alter(&$items) {
$items['node']['page callback'] = 'drupal_not_found';
}
আমি ব্যবহৃত পুনর্চালনা মডিউল: আমি শুধু থেকে একটি নতুন 301 পুনর্নির্দেশ যোগ node
করার <front>
।
বার্ডিয়ার জবাবের মতো, আমার মডিউলে নিম্নলিখিত কোডগুলি অন্তর্ভুক্ত রয়েছে যা আমরা যে কাস্টম ডিস্ট্রো থেকে তৈরি করি তার অংশ:
function HOOK_menu_alter(&$items) {
$items['node']['page callback'] = '_HOOK_empty_home';
}
function _HOOK_empty_home() {
drupal_set_title('');
return '';
}
এইভাবে আমি 'নোড' পথটিকে প্রথম পৃষ্ঠা হিসাবে রাখতে পারি এবং প্রয়োজনীয় সম্মুখ পৃষ্ঠাগুলি তৈরি করতে ব্লকগুলির অবস্থানের জন্য প্রসঙ্গ ব্যবহার করতে পারি।
আমার পক্ষে সহজ সমাধানটি হ'ল একটি পৃষ্ঠা তৈরি করা যা আমি হোম পৃষ্ঠা হতে চেয়েছিলাম এবং ইউআরএলকে / নোডে সেট করেছিলাম। তারপরে / অ্যাডমিন / কনফিগারেশন / সিস্টেম / সাইট-তথ্যের অধীনে ডিফল্ট সম্মুখ পৃষ্ঠাটি / নোডে সেট করুন। আপনি কখনই URL এ "/ নোড" দেখতে পাবেন না যদি না কেউ আসলে এটিকে টাইপ করে It's এটি দ্রুত, সহজ এবং পরিষ্কার, আপনি নিজের হোমপেজের ইউআরএল / নোডে সেট করতে চান তবে।
আমি একাধিক জিনিস চেষ্টা করেছিলাম। তারপরে ড্রুপাল 7 এবং 8 এর জন্য, আমি কোনও কোড না লিখে এটিকে সবচেয়ে সহজ বলে মনে করেছি:
নোড_পেজ_ডিজাবল, গ্লোবালরেড ডিরেক্টরি এবং পুনর্নির্দেশ মডিউলগুলি ডাউনলোড এবং সক্ষম করুন।
(দ্রষ্টব্য: নোড_পেজ_অর্থযোগ্য মডিউল পুনর্নির্দেশ / নোড 404 এ ত্রুটি পৃষ্ঠাটি পাওয়া যায় নি))
তারপরে / নোড -> সম্মুখ পৃষ্ঠার জন্য পুনর্নির্দেশ যুক্ত করুন
দয়া করে নোট করুন যে পুনঃনির্দেশটি উভয় / নোড এবং / নোড / প্রথম পৃষ্ঠায় পুনঃনির্দেশ করে।
এবং পড়ার জন্য একটি দরকারী নিবন্ধ: https://www.drupalaid.com/blog/3-things-you-should-hide
drush @example.com views-disable frontpage
এটি বন্ধ করে দেবে। এখনও 4040 পাবে যদিও অন্যান্য কাজ শেষ না হওয়া পর্যন্ত।
নোড তৈরি করুন, তারপরে সাইট কনফিগারেশন -> সাইটের তথ্য যান এবং হোম পৃষ্ঠাটি নোডের পথে সেট করুন। সুতরাং এটি যদি আপনার প্রথম নোড হয় তবে এটি নোড / 1 হবে।
সম্পাদনা: ডিফল্টরূপে, কেবল একটি নোড তৈরি করে সেই পৃষ্ঠাটি অদৃশ্য হয়ে যাবে যদি আপনি 'সম্মুখ পৃষ্ঠায় প্রচার করুন' পরীক্ষা করেন। সাইটের তথ্যের পদক্ষেপটি আপনার আসল প্রথম পৃষ্ঠাটিকে নোড তৈরি করবে।
/node
এখনও পৌঁছানো যায়, এটি কেবলমাত্র ডিফল্টরূপে দৃশ্যমান হবে না
আপনি কোনও পৃষ্ঠা দেখার আগে ইউআরএল পরীক্ষা করতে নিয়ম মডিউলটি ব্যবহার করতে পারেন এবং আপনি চান ব্যবহারকারীদের অন্য পৃষ্ঠায় পুনর্নির্দেশ করতে পারেন।
বেশ কয়েক বছর আগে থেকে ইতিমধ্যে বেশ কয়েকটি আকর্ষণীয় উত্তর সহ জনপ্রিয় প্রশ্ন। তবে কী অনুমান করুন: "এই দিনগুলির জন্য এটির একটি মডিউল রয়েছে ... আসলে এমনকি দুটি!" (পূর্বের কোনও উত্তরে উল্লেখ নেই)।
আরও বিশদে পড়ুন ... (উদ্ধৃতিগুলি তাদের প্রকল্প পৃষ্ঠাগুলি থেকে) ...
নোড পৃষ্ঠা প্রশাসক (হয় ডি 6 বা ডি 7):
এই মডিউল পৃষ্ঠার অ্যাক্সেস / নোড পরিচালনা করতে প্রশাসনের সেটিংস প্যানেল যুক্ত করে । এটি সক্রিয় হয়ে গেলে তিনটি কার্যকর কনফিগারেশন রয়েছে:
- মূল - ড্রুপাল কোর নোড পৃষ্ঠার অ্যাক্সেস যথারীতি হ্যান্ডেল করবে: 'অ্যাক্সেস সামগ্রী' অনুমতি সহ সমস্ত ব্যবহারকারী
- অক্ষম - কেউ অ্যাক্সেস / নোড সক্ষম করতে পারবে না। এটি 'পৃষ্ঠা পাওয়া যায় নি' (404) ফিরে আসবে।
- অনুমতি দ্বারা - অ্যাক্সেস একটি নতুন অনুমতি দ্বারা পরিচালিত হবে: 'অ্যাক্সেস নোড পৃষ্ঠা'
নোড পৃষ্ঠা অক্ষম করুন (হয় ডি 6 বা ডি 7, যদিও কেবল আরসি 2 সংস্করণ):
যখন ব্যবহার না করা হয় তখন সহজে ইউআই অ্যাক্সেস এবং পাথ / নোডটি অক্ষম করে । এটি প্রোডাকশন চেক মডিউলটিতে সুরক্ষার বিবেচনায় অনুপ্রাণিত হয়েছিল ।
সেরা উপায় হ'ল টেমপ্লেট_প্রিয়সেস_পেজ ফাংশন থেকে নোডগুলি আড়াল করা
function template_preprocess_page(&$variables) {
if ($variables['is_front'] == 1) {
if (isset($variables['page']['content']['system_main'])) {
unset($variables['page']['content']['system_main']);
}
}
}