সেটিংস এপিআই আপডেট হওয়া বার্তাগুলি যদি কাস্টম প্রশাসক পৃষ্ঠা অ্যাড_পশন_পৃষ্ঠায় আবদ্ধ না হয় (তবে) প্রদর্শিত হবে না


9

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

উত্তর:


21

আপনার উভয় পরামর্শের জন্য ধন্যবাদ চিপ ( দুর্দান্ত সেটিংস এপিআই টিউটোরিয়াল ) এবং t31os ( দ্রুত পরীক্ষার জন্য কোডের দুর্দান্ত স্নিপেট )।

আমি আরও কিছু খনন করেছি এবং দেখতে পেয়েছি যে ডিফল্ট বার্তাগুলি প্রকৃতপক্ষে প্রদর্শিত হতে পারে যদি আমি কোনও মেনুতে প্রবেশ করি তবে কেবলমাত্র যদি ফাংশন সেটিংস_আরটিস () বলা হয়।

উদাহরণস্বরূপ, t31os কোডটি নিম্নরূপে সংশোধন করা হচ্ছে:

<div class="wrap">
  <h2>Test</h2>
  <?php settings_errors(); ?>
  <form action="options.php" method="post">

পরামিতিটিকে 'ত্রুটি' বা 'আপডেট' হিসাবে নির্দিষ্ট করে সাফল্য বা ব্যর্থতা বার্তা প্রদর্শনের জন্য add_settings_error () ফাংশনটিতে কল করে কাস্টম ত্রুটি বার্তাও যুক্ত করা যেতে পারে $type


এটি আমাকে কিছুক্ষণের জন্যও স্টম্প্প করেছিল! settings_errors();কৌশলটি ব্যবহার করে, জেসিকে ফলোআপ পোস্ট করার জন্য ধন্যবাদ!
কমেন্টলভ

10

আমি আমার থিমের সাথে সেটিংস এপিআই ইন্টিগ্রেশন ব্যবহার করি, ব্যবহার করি add_theme_page()এবং অ্যাডমিন বিজ্ঞপ্তি প্রদর্শন করতে কোনও সমস্যা হয় না।

আমি সন্দেহ যে এটা আপনার কোন সমস্যা নয় কোড বদলে সেটিংস API সীমাবদ্ধতা।

আপনি কি আপনার আসল কোড পোস্ট করতে পারেন, তাই আমরা কোনও কোড সম্পর্কিত সমস্যা সমাধানে আপনাকে সহায়তা করতে পারি?

সম্পাদনা

আপনার অ্যাডমিন বিজ্ঞপ্তিগুলি স্পষ্টভাবে আউটপুট করতে হতে পারে। উদাহরণস্বরূপ, আমি আমার সেটিংস পৃষ্ঠার মার্কআপ ফাংশনে যা ব্যবহার করি তা এখানে:

<?php if ( isset( $_GET['settings-updated'] ) ) {
    echo "<div class='updated'><p>Theme settings updated successfully.</p></div>";
} ?>

আমি ধরে নিয়েছি ত্রুটি বিজ্ঞপ্তিগুলির জন্য আপনিও অনুরূপ কিছু করতে পারেন।


আপডেট উত্তর দেখুন।
চিপ বেনেট

আমার ব্যবহৃত কোডটি পেস্টবিনে পাওয়া যাবে । আমি যথেষ্ট পরিষ্কার না হলে ক্ষমা চাই। আমি যা পর্যবেক্ষণ করব তা হল যদি আমি add_options_page()সেটিংসের মাধ্যমে কোনও মেনুতে প্রবেশ করি এবং সংরক্ষণ করি তবে একটি "সেটিংস সংরক্ষণ করা" বার্তা প্রদর্শিত হবে। তবে আমি যদি কোডটি ব্যবহারের জন্য পরিবর্তন করেছি add_theme_page()বা add_dashboard_page(), তারপরে ডিফল্ট "সেটিংস সংরক্ষণ করা" বার্তা উপস্থিত হবে না।
জেসি ভ্যান কাউটেন

ঠিক আছে ... উপরের উদাহরণ অনুসারে আপনি কোড যুক্ত করেছেন? আপনাকে এটিকে আপনার সেটিংস পৃষ্ঠার মার্কআপ ফাংশনে স্পষ্টভাবে যুক্ত করতে হবে।
চিপ বেনেট

আমি চ্যাপ্টা করছি আপনি উপরের ভিত্তিতে আমার পরীক্ষার কোডটি ব্যবহার করেছিলেন, চিপটি সঠিক যে আপনাকে নিজেরাই সুস্পষ্টভাবে বিজ্ঞপ্তি যুক্ত করতে হবে। আপনার সেটিংস পৃষ্ঠা জেসির সাথে শুভকামনা :) :)
t31os
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.