ওয়ার্ডপ্রেস REST এপিআই কি কোনও ভ্যানিলা ওয়ার্ডপ্রেস 4.7 ইনস্টলেশন-এ ইনস্টল ও সক্ষম করা আছে?


29

আমি সবেমাত্র ওয়ার্ডপ্রেস 4.7 ইনস্টল করেছি। ঘোষণার মধ্যে উল্লেখগুলির মধ্যে একটি হ'ল এটিতে একটি REST এপিআই রয়েছে।

আমার বোধগম্যতা হ'ল:

  • ওয়ার্ডপ্রেস REST এপিআই প্লাগইন আর প্রয়োজন হয় না, কারণ সম্ভবত এটি ইতিমধ্যে ওয়ার্ডপ্রেস 4.7-এ কোরের সাথে একত্রিত হয়েছে।
  • ওয়ার্ডপ্রেস REST এপিআই ডিফল্টরূপে সক্ষম করা হয়েছে

তবে, আমি লক্ষ্য করেছি যে একটি ভ্যানিলা ওয়ার্ডপ্রেস ৪.7 ইনস্টল-এ, শেষের পয়েন্টগুলির কোনওটিই কাজ করে না বলে মনে হয় (উদাহরণস্বরূপ http://examples.com/wp-json/wp/v2/posts)।

নতুন REST এপিআই সত্যই সক্রিয় হয়েছে কিনা তা আমি কীভাবে বলতে পারি? ভ্যানিলা ওয়ার্ডপ্রেস ইউআই দিয়ে কি আরএসটি এপিআই সক্ষম করা বা অক্ষম করা যেতে পারে, বা এটি করার জন্য আমার তৃতীয় পক্ষের প্লাগইন ইনস্টল করা উচিত?


1
পৃষ্ঠার উত্সে কি আবিষ্কারের ট্যাগ আছে? <link rel='https://api.w.org/' href='https://example.com/wp-json/' />আমার সাইটগুলিতে কাজ করার জন্য মনে হচ্ছে।
রাস্ট

@Rarst, আমি যদি grep -r "<link rel='https://api.w.org/'" .htmlডিরেক্টরির, এটা ফাইলে এক হিট ফেরৎ ./wp-includes/rest-api.phpএই পাঠ সমেত:echo "<link rel='https://api.w.org/' href='" . esc_url( $api_root ) . "' />\n";
পেপ

আপনার উত্স কোডে নয়, ব্রাউজারে আপনার সাইট থেকে কোনও পৃষ্ঠার এইচটিএমএল উত্স।
রাস্তার

1
@ রর্স্ট, হ্যাঁ আমি দেখতে পেয়েছি<link href="http://example.com/wp-json/" rel="https://api.w.org/">
পেপ

ব্রাউজারে লিঙ্কটি খোলার ফলে আপনি কী পাবেন? WP_DEBUG সক্ষম হয়েছে?
রাস্ট

উত্তর:


21

৪.7 এটি ডিফল্টরূপে সক্ষম করেছে। এটি কাজ করছে কিনা তা যাচাই করার সহজ উপায়টি হ'ল কেবল উদাহরণ.কম / ডাব্লুপি- জসন ইউআরএল পরিদর্শন করা এবং আপনার সেখানে নিবন্ধিত শেষ পয়েন্টগুলির একটি তালিকা পাওয়া উচিত

এটি নিষ্ক্রিয় করার কোনও অফিসিয়াল বিকল্প নেই (অন্তত মুক্তির বিষয়ে এটি নিশ্চিত ছিল কিনা তা সম্পর্কে কোনও কথা ছিল), কিছু মূল কার্যকারিতা তার উপর নির্ভর করে।

এটি কার্যকর না হয় কিনা তা যাচাই করার জন্য সর্বাধিক সুস্পষ্ট বিষয়গুলি হ'ল আপনার এইচটিসেসির নিয়মগুলি এবং আপনার কি ডাব্লুপি-জেএসন ডিরেক্টরি রয়েছে?


আমার কাছে ডাব্লুপি-জসন ডিরেক্টরি /var/www/htmlবা এর উপ - ডিরেক্টরিগুলি নেই। আমার কাছে কোনও .htaccessফাইল আছে বলে মনে হচ্ছে না (অন্যটি ছাড়া /var/www/html/wp-content/plugins/akismet/.htaccessআমারও একটি হওয়া উচিত?
পেপ

@ পেপ, আপনি কোন ওয়েবসারভার ব্যবহার করেন? আপনার কি সুন্দর পারমলিংকস আছে?
মার্ক কাপলুন

এ্যাপাচি। আমি এই টিউটোরিয়ালগুলির যথাযথ পদক্ষেপগুলি
পেপ

এডাব্লুএসের সাথে পরিচিত নয় তবে আপনি যদি ভ্যানিলা ওয়ার্ডপ্রেস ইনস্টল করেন তবে আপনার ইনস্টলের মূলটিতে একটি .htaccess থাকা উচিত। যদি সেটিং> পারমালিক্সে যাওয়ার চেষ্টা না করে থাকেন তবে নিশ্চিত হন যে আপনি প্লেইন সেটিংসে নেই, সংরক্ষণ করুন এবং তারপরে কোনও htaccess
জেনারেশন হয়েছে

6
আমি অবশেষে বিষয়টি খুঁজে পেয়েছি। কারণ আমি জানতাম না যে মাহবুব কাজ বিশ্রাম API- এর জন্য প্রয়োজন হবে, আমি প্রাথমিক সেটআপ চলাকালীন সেটে পদক্ষেপ এড়ানো AllowOverride Allমধ্যে <Directory "/var/www/html">বিভাগে /etc/httpd/conf/httpd.conf। এজন্য এটি আমার পরিবর্তনগুলিকে অগ্রাহ্য করছে .htaccess। এখন প্লেন ব্যতীত পারমিলিংকের সাথে, আরএসটি এপিআই শেষের কাজগুলি করে।
পিপ

11

আমার 4.7 টিও ছিল যে REST এআইপিআই অক্ষম করা হয়েছে তবে আমি ইউআরএল দ্বারা চালাকি করেছি। সঠিক ইউআরএল দেখতে কিছু দেখতে এমন একটি লাইনের সন্ধান করুন:

লিঙ্ক rel = ' https://api.w.org/' href = ' http://mysite?rest_route=/' />। সুতরাং, http: // mysite? Rest_route = / উপসর্গ হিসাবে আমার সমস্যা সমাধান করেছে। উদাহরণস্বরূপ পোস্টগুলি পুনরুদ্ধার করতে টাইপ করতে অনুমিত হয় : http: // mysite? Rest_route = / wp / json

ক্যোয়ারী পরমের দরকার ছিল এমন ডকুমেন্টেশনে আমি সন্ধান করতে পারি নি। আমি কি একা ছিলাম?


ওয়ার্ডপ্রেস 4.8.x দিয়ে আমার জন্য কাজ করেছেন কেন এটি কোথাও নথিভুক্ত নয় তা নিশ্চিত নয়।
অনিরুধা

2
একমাত্র নয়। 10 মিনিট অনুসন্ধানের পরে আপনার মন্তব্যে এই উত্তরটি পাওয়া গেছে। করা দরকার:www.example.com?rest_route=/wp/v2/posts
ইউজিন কে

3
আমি মনে করি যখন সুন্দর পারমালিঙ্কগুলি সক্ষম না করা হয় তখন এটি ঘটে। থেকে ডক্স ... "প্রশংসনীয় পার্মালিনক্স ছাড়া সাইটগুলিতে, রুট পরিবর্তে rest_route প্যারামিটার হিসাবে URL টি যোগ করা হয়। উপরে উদাহরণস্বরূপ, সম্পূর্ণ URL তারপর হবে example.com/?rest_route=/wp/v2/posts / 123 "
গাইলস বাটলার


1

আমি দেখতে পাচ্ছি যে আপনি সমস্যাটি স্থির করেছেন তবে আমার সমাধানটি এখানে রেখেছেন কারণ এটি আমার পক্ষেও কার্যকর। বিপি 15 থেকে ডাব্লিউপি-তে কোর এপি-তে আপডেট করার সময় আমার একই সমস্যা ছিল Turn.7 সমস্যাটি দেখা যাচ্ছে যে আমার কিছু প্লাগইন ছিল যা অবহিত ফাংশন ব্যবহার করছিল_ইজি_ফিল্ড যা আমি পরিবর্তন_র এই নোট অনুসারে রেজিস্টার_রেস্ট_ফিল্ডে পরিবর্তন করেছি:

নতুন পরিবর্তন: রেজিস্টার_প্লে_ফিল্ড () রেজিস্টার করতে_পিজি_ফিল্ড () নামকরণ করুন।

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


1

যদি REST এপিআই বাক্সের বাইরে কাজ না করে থাকে বা একটি নতুন ইনস্টল করার পরে এবং টাইপ করার পরে

mydomain/wp-json/wp/v2/posts 

তাহলে আপনার কেবলমাত্র "পার্মলিংকস" পোস্ট_নামের হিসাবে সক্রিয় করতে হবে:

ডাব্লুপি ড্যাশবোর্ড-> সেটিংস-> পারমালিঙ্কস

অথবা আপনি যদি পারমিলিংস সক্রিয় করতে চান না, আপনি কেবল টাইপ করতে পারেন:

mydomain?rest_route=/wp/v2/posts

ম্যান, আমি আশা করি ওয়ার্ডপ্রেস তাদের রেস্ট হ্যান্ডবুকটি আরও ব্যবহারকারী-বান্ধব হওয়ার জন্য আপডেট করবে। আমি ডক্সের পুরানো সংস্করণটি পছন্দ করি :)

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