ওয়ার্ডপ্রেসে রাউটিং কীভাবে কাজ করে?


13

কোর ডাব্লুপি রাউটিং কীভাবে কাজ করে? আমার বোঝার জন্য খুব কষ্ট হচ্ছে ... এমভিসিতে আপনার ইউআরএলটি মাইকন্ট্রোলার / মাইক্রেশনের মতো দেখায় যা মাইকন্ট্রোলার-> মাইজেশনকে মানচিত্র করে ()

Drupal এ, এটি index.php? Q = mycustomerpath / হ্যালো যা আপনার পছন্দ মতো কোনও ফাংশনে ম্যাপ করা যায় যা আপনার থিমের বিন্যাসে "থিমযুক্ত" একটি সামগ্রী ফেরত দেয়।

তবে ডব্লিউপি-তে আমার কীভাবে কীভাবে জিনিসগুলি করা হয় তার কোনও ধারণা নেই ... এটি? পি = 1 তারপর? প্রোডাক্ট = 1 ... আমি রাউটিং ফ্লোয়ের ডকুমেন্টেশন অনুসন্ধান করেছি কিন্তু কোনও সন্ধান করতে পারি না (গুগল কেবল কাস্টমটিতে নিবন্ধগুলি ফেরত দেয়) রুট) .. আমি প্রথমে মূল রাউটিংয়ের মূল বিষয়গুলি বুঝতে চাই ..


কোডটি খনন করে, আমি প্রতিটি অনুরোধে দেখি যা এটি ক্যুরি_পোস্টগুলি কল করে? কেন পৃথিবীতে প্রতিবার পোস্টের জিজ্ঞাসা করা দরকার? এমন কোনও ঘটনা নেই যেখানে আপনি প্রকৃতপক্ষে পোস্ট প্রদর্শন করতে চান না ??
ইয়াহমান

1
বিষয়বস্তুগুলি ডব্লিউপি-তে পোস্ট হিসাবে সংরক্ষণ করা হয়। সুতরাং, যখন আপনাকে বিষয়বস্তুগুলি দেখানোর দরকার হবে তখন আপনাকে এটি অনুসন্ধান করা দরকার
সিসির

আমি আপনাকে পরামর্শ দিতে পারি যে আপনি "লুপ" সম্পর্কে পড়ুন যা এমন ধারণা যা আপনার ওয়ার্ডপ্রেস কীভাবে কাজ করে তা বুঝতে হবে। প্রয়োজনীয় "লুপ" পোস্টগুলির একটি অ্যারে প্রদর্শন করে যা ক্যোয়ারী_পোস্টের ফলাফল। প্রশাসনিক নন-ইউআরএল অনুরোধগুলির জন্য ডাব্লুপি কেবলমাত্র পোস্টগুলি দেখানোর জন্য ডিজাইন করা হয়েছে এবং এটি পোস্টের পাশাপাশি কিছু প্রদর্শন করতে কাস্টম প্রোগ্রামিং লাগে takes অ্যাডমিন ইউআরএল অনুরোধগুলি পৃথক এবং এগুলি "লুপ" ব্যবহার করে না এবং নন পোস্টের জিনিসগুলি দেখায় না।

ঠিক আছে তবে এই পদ্ধতিটি কিছুটা অদ্ভুত এবং খুব নমনীয়
টিবিএইচ

বলুন আমি একটি পরিচিতি ফর্ম প্রদর্শন করতে চাই .. আমার পৃষ্ঠার সামগ্রীর প্রকারে আমার এইচটিএমএল লাগানো দরকার? আমি এখনও ফর্ম জমা দেওয়ার জন্য যুক্তিটি কোথায় রাখবো তা সন্ধান করার চেষ্টা করছি ... (থিমের পেজ.এফপি? খুব কুৎসিত পদ্ধতির)
ইয়াহমান

উত্তর:


20

ওয়ার্ডপ্রেসে, ইউআরএলগুলি রুটে মানচিত্র করে না। তারা ডাটাবেস প্রশ্নের মানচিত্র।

"ডিফল্ট" পারমালিঙ্কস মোডে ওয়ার্ডপ্রেস ব্যবহার করার সময়, আপনার কাছে প্রধান ইউআরএল ক্যোয়ারিতে ভ্যারিয়েবলগুলির একটি সেট রয়েছে, যেমন? পি = 1 বা? পৃষ্ঠা = 234 এবং আরও। এছাড়াও আছে? গুলি = অনুসন্ধান এবং আরও অনেক।

যদি আপনি "চমত্কার" পারলিমিনিকগুলি ব্যবহার করেন, তবে "পুনর্লিখনের নিয়ম" নামক একটি বিধিগুলির একটি বড় সেট তৈরি করা হয় যা ইউআরএল প্যারামিটারগুলির একই সেটটিতে বিভিন্ন URL প্যাটার্নকে সরাসরি ম্যাপ করে। সুতরাং / 2014/04/12 / উদাহরণের মতো একটি URL? বছর = 2014 এবং মাস = 04 এবং দিন = 12 এবং পোস্টের নাম = উদাহরণ বা অনুরূপ মানচিত্র করবে। সুতরাং এই ম্যাপিংটি সম্পন্ন হওয়ার পরে নিম্নলিখিতগুলিও এর সাথে প্রযোজ্য।

এই ভেরিয়েবলগুলি মূলত WP_Query শ্রেণীর মূল উদাহরণ নিয়ন্ত্রণ করে। ডাব্লুপিউকিউয়ারি ক্লাসে ডেটাবেস থেকে "পোস্টগুলি" পেতে ডেটাবেস কোয়েরি তৈরি করে এমন সমস্ত তথ্য রয়েছে। বিভিন্ন পরামিতি এতে প্রবেশ করায় এটি কী ধরণের ক্যোয়ারী তৈরি করে এবং কী ডেটা পায় তা নিয়ন্ত্রণ করে।

দেখুন, ওয়ার্ডপ্রেস দ্বারা প্রদর্শিত হতে পারে এমন সমস্ত কিছুই মূলত একটি "পোস্ট"। একটি ব্লগ বিপরীত সময় ভিত্তিক ক্রম পোস্টের একটি সিরিজ। একটি "পৃষ্ঠা" একটি সংজ্ঞায়িত নাম সহ একটি স্ট্যাটিক পোস্ট। একটি "কাস্টম পোস্ট টাইপ" হ'ল ঠিক তেমনই মনে হয়, একটি কাস্টম টাইপ সহ একটি "পোস্ট" যা আপনি সংজ্ঞায়িত করেন। ওয়ার্ডপ্রেসে যে কোনও কিছু প্রদর্শন করার জন্য সমস্ত প্রধান প্রশ্নগুলি ডাব্লুপি_পোস্ট টেবিল থেকে কিছু পোস্টের উপসেট পাচ্ছে।

ডাব্লুপিউকিউয়ারি কি তা করে। এবং ইউআরএল থেকে প্যারামিটারগুলি সরাসরি সেই মূল ক্যোয়ারিতে প্রেরণ করা হয় এবং সেখানে ব্যবহৃত হয়।

থিমটি তারপরে কোয়েরিটি কী ফিরে আসে তার ভিত্তিতে কোন টেম্পলেটটি ব্যবহার করতে হবে তা নির্ধারণ করে। যদি আপনি অনুরোধ করেছেন / বিভাগ / উদাহরণ, তবে এটি হয়ে যায়? বিভাগ_নাম = উদাহরণ যার অর্থ মূল that wp_query-> ক্যোয়ারী_ভারস অ্যারে সেই তথ্যটি পাবেন এবং ডাব্লুপি_কিউয়ারি "উদাহরণ" বিভাগের জন্য শেষ এক্স পোস্টগুলি সরিয়ে ফেলবে এবং এটি এটির_শ্রেণী পতাকাটি সত্য হিসাবে সেট করবে।

এটির পরে টেমপ্লেট-লোডারটি চলবে, দেখুন যে_শ্রেণী () সত্য ফিরে আসে এবং বিভাগের টেম্পলেটটি বেছে নেওয়ার সিদ্ধান্ত নেয়, সুতরাং এটি বিভাগ-উদাহরণ.php সন্ধান করবে এবং টেমপ্লেট অনুসারে আবার ক্যাটাগরি.এফপি এবং আরও পড়ে যাবে Template শ্রেণীক্রম।

সুতরাং, আপনি যদি URL গুলি কীভাবে কাজ করেন তা সহজ পরিবর্তন করতে চান তবে প্রশ্ন: আপনি কি ইউআরএলগুলি পরিবর্তন করতে চান, বা সেগুলিতে ম্যাপ করা আছে? ইউআরএলগুলি ফাংশনে ম্যাপ করা হয়নি বলে এগুলি ক্যোয়ারি নিয়ন্ত্রণ করে এমন পরামিতিগুলিতে ম্যাপ করা হয়েছে। আপনি যদি ইউআরএলটি সেই মূল ক্যোয়ারীটি সামঞ্জস্য করতে চান তবে আপনি কিছু অন্য সম্পূর্ণ বিশেষ কোড চালানোর জন্য একটি বিশেষ ইউআরএল চাইলে এটি কিছুটা আলাদা প্রক্রিয়া।

এবং মন্তব্যে আপনার নির্দিষ্ট প্রশ্নের উত্তর দিতে: "এমন কোনও ঘটনা নেই যেখানে আপনি প্রকৃতপক্ষে পোস্ট প্রদর্শন করতে চান না?" কোন নেই. সবই একটা পোস্ট। সমস্ত কন্টেন্ট পোস্টে সংরক্ষণ করা হয়। আপনি যদি অন্য কোথাও সামগ্রী সংরক্ষণ করতে চান এবং আলাদা হতে চান তবে আপনি এটি করতে পারেন তবে এটি আরও বেশি কঠিন কারণ সত্য, এটি সাধারণত প্রয়োজন হয় না। আপনার যদি বিশেষ সামগ্রী থাকে তবে একটি কাস্টম পোস্ট প্রকার তৈরি করুন, আপনার সামগ্রীটি সেই ধরণের সাথে একটি পোস্ট হিসাবে সঞ্চয় করুন, এতে একটি URL প্যাটার্ন মানচিত্র করুন। সহজ।


আমি বুঝতে পারি যে কোনও পোস্টে (কাস্টম পোস্টের ধরণের মাধ্যমে ইত্যাদি) সমস্ত কিছু উপস্থাপন করা উচিত ড্রুপাল in তে কাস্টম ধরণের সাথে খুব সমান ... তবে এটি সাইটের প্রতিটি একক সামগ্রী সংরক্ষণের জন্য কোনও একক পোস্টের টেবিলযুক্ত পারফরম্যান্সকে প্রভাবিত করে? ড্রুপাল 7 এটি সত্তার প্রকারটি প্রবর্তন করে সমাধান করেছে যাতে আপনাকে একটি কাস্টম টাইপ তৈরি করতে হবে এবং নোড টেবিলের মধ্যে সমস্ত কিছু আপনার নিজস্ব সত্তার টেবিলের মধ্যে রাখতে হবে না যা এখনও ড্রুপাল কাঠামো থেকে উত্সাহ পেতে পারে। আমি আশা করি ওয়ার্ডপ্রেস ভবিষ্যতে এই জাতীয় পদ্ধতির পরিচয় দেয়। বিশদ ব্যাখ্যার জন্য THX।
ইয়াহমান

আমার ধারণা যদি আমি কোনও নিজস্ব ফাংশন / থিমের url মানচিত্র করতে চাই তবে ডাব্লুপি রাউটার সাহায্য করবে?
ইয়াহমান

একটি পূর্ণ রাউটিং সিস্টেম যুক্ত করা সাধারণত প্রয়োজন হয় না। আরও সহজ উপায় আছে। ওয়ার্ডপ্রেসের ভিত্তিটি ব্যবহারকারী-উত্পাদিত সামগ্রী প্রদর্শন করা, যা সমস্ত পোস্টের সারণীতে সঞ্চিত। আপনি যদি এমন সামগ্রী প্রদর্শন করতে চান যা ব্যবহারকারী উত্পন্ন হয় না, তবে আপনি সাধারণত এটি থিম বা প্লাগইন এ করেন in পৃষ্ঠাটি উত্পন্ন হওয়ার সাথে সাথে প্রক্রিয়াটির বিভিন্ন অংশকে ওভাররাইড করার কোডের জন্য শত শত (হাজার) ক্রিয়াকলাপ এবং ফিল্টার এবং অন্যান্য উপায় রয়েছে। এবং শর্টকডের মতো জিনিসের সাথে কন্টেন্টে কাস্টম এইচটিএমএল সন্নিবেশ করা তুলনামূলক সহজ।
অটো

আমি তৈরি পোস্ট পোস্টে কীভাবে কাস্টম এইচটিএমএল / পিএইচপি যুক্ত করব? থিমের সিঙ্গল.এফপি সংশোধন না করে বা একটি একক-মাইকাস্টম্পস্ট.পিএপি তৈরি করুন (খুব পোর্টেবল পদ্ধতির নয়)
ইয়াহমান

7
1 বছরেরও বেশি সময় পরে এখন ওয়ার্ডপ্রেসের সাথে কাজ করার পরে ... আমি এখনও এটি দ্বারা বিশ্বাস করি না ... কাঠামোটি মার্জিত এবং বেশ কুরুচিপূর্ণ নয় ... এটি একটি সাধারণ ব্লগ হিসাবে কাজ করে তবে আপনি যদি অন্য ধরণের ওয়েবসাইট বিকাশ করতে চান তবে। এটি হ্যাকিংয়ের এক ধরণের ওয়ার্ডপ্রেস যা কিছু করার তা বোঝানো হয়নি do
ইয়াহমান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.