ওয়ার্ডপ্রেস রেস্ট এআইপি কাস্টম শেষপয়েন্ট optionচ্ছিক প্যারাম


15

register_rest_route()ইউআরএলে alচ্ছিক পরামিতিগুলি ব্যবহার করা কি সম্ভব ?

ধরা যাক রুটটি এভাবে নিবন্ধিত হয়েছে:

register_rest_route( 'api', '/animals/(?P<id>\d+)', [
   'methods' => WP_REST_Server::READABLE,
   'callback' => 'get_animals',
   'args' => [
        'id'
    ],
] );

ইউআরএল / ডাব্লুপি-জসন / এপিআই / এনিমেল / ১৫ এর মতো এপি কল করা এখন সম্ভব , তবে / ডাব্লুপি-জেএসন / এপিআই / এনিমেল / এর মতো রুট ধরার জন্য পরমকে বিকল্প হিসাবে ঘোষণা করার উপায় আছে কি ?

আমিও নীচের মতো রুটটি ঘোষণার চেষ্টা করেছি, তবে সাফল্য ছাড়াই:

/animals/(?P<id>\d+)?

আপনি প্যারাম ছাড়াই অন্য কোনও রুট ঘোষণা করতে পারেন বা জিইটি প্যারাম ব্যবহার করতে পারেন, তবে ইতিমধ্যে এটি করার কোনও উপায় আছে কি register_rest_route()?

আপনার পরামর্শের জন্য ধন্যবাদ।

উত্তর:


18

আপনার রুট রেজেক্সের নামযুক্ত প্যারামিটারগুলি একটি alচ্ছিক ক্যাপচারিং গ্রুপে রাখা উচিত:

register_rest_route( 'api', '/animals(?:/(?P<id>\d+))?', [
   'methods' => WP_REST_Server::READABLE,
   'callback' => 'get_animals',
   'args' => [
        'id'
    ],
] );

দ্বিতীয় প্যারামিটারটি কেবল একটি রেজেেক্স, সুতরাং আপনি এটিকে আরও জটিল করার জন্য সাধারণ রেজেক্স যুক্তি ব্যবহার করতে পারেন


3

এটি একটি register_rest_routeফাংশন কল দিয়ে করার একটি উপায় থাকতে পারে , আমি কীভাবে এটি করতে জানি না এবং এটি আদর্শ হবে। তবে register_rest_routeহুকড পদ্ধতিতে ফাংশন কলটির সদৃশকরণ আপনি যা চান তা করবে।

register_rest_route( 'api', '/animals/', [
   'methods' => WP_REST_Server::READABLE,
   'callback' => 'get_animals'
] );

register_rest_route( 'api', '/animals/(?P<id>\d+)', [
   'methods' => WP_REST_Server::READABLE,
   'callback' => 'get_animals',
   'args' => [
        'id'
    ],
] );

এটি get_animals পদ্ধতিতে আপনি প্রতিটি কেস পরিচালনা করে এমন শর্ত থাকতে চান। idআরগ সেট করা থাকলে তার জন্য একটি এবং $_GETভেরিয়েবলের জন্য ফলব্যাক চেক করে ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.