আমি জাভাস্ক্রিপ্টের একটি কাজের টুকরা পেয়েছি যাতে একটি বস্তু আক্ষরিক থাকে। তবে আমাকে এটি স্থানীয়করণ করা দরকার, এবং আমি কীভাবে এটি পুনরায় লিখতে হবে তা নির্ধারণের জন্য চেষ্টা করছি যাতে আমি এটিতে অ্যাকসেটের জন্য wp_localize_script () পেতে পারি এবং সঠিক বিন্যাসটি আউটপুট পেতে পারি।
অ-স্থানীয়করণযুক্ত (অ ডায়নামিক) সংস্করণটি এর মতো দেখাচ্ছে:
var layoyt_config = {
'header' : 1
, 'footer' : 1
, 'ls' : {'sb1':1}
, 'rs' : {'sb1':1,'sb2':1}
, 'align' : 'center'
};
এখন, এই মানগুলি পিএইচপি দ্বারা উত্পাদিত করতে (কিছু ডাব্লুপি_সেটেটিংয়ের উপর ভিত্তি করে) আমি ডাব্লুপি_লোক্যালাইজ_স্ক্রিপ্ট ব্যবহার করতে চাই, তাই আমি সেখান থেকে নিতে পারি:
var layoyt_config = my_localized_data.layoyt_config;
এবং সেই অবজেক্ট প্রোপার্টিটিতে ডেটা পাওয়ার জন্য আমি ভেবেছিলাম 'আমি এটি করতে পারি, তবে স্পষ্টতই না:
$data = array(
'layout_config' => {
'header' : 1
, 'footer' : 1
, 'ls' : {'sb1': 1}
, 'rs' : {'sb1': 1,'sb2': 1}
, 'align' : 'center'
}
);
wp_localize_script('my-script-handle', 'my_localized_data', $data);
যেহেতু এই পিএইচপি পার্স ত্রুটি ঘটবে আমি জেএসসনকে অ্যারে সিনট্যাক্সে পুনরায় লেখার চেষ্টা করেছি, যেহেতু ডাব্লুপি_লোক্যালাইজ_স্ক্রিপ্ট সেটিকে আবার বস্তুর স্বীকৃতিতে রূপান্তরিত করবে, তবে এটি আমার পক্ষেও কার্যকর হয় না:
$data = array(
'layout_config' => array(
'header' => 1
, 'footer' => 1
, 'ls' => array('sb1'=>1)
, 'rs' => array('sb1'=>1,'sb2'=>1)
, 'align' => 'center'
)
);
wp_localize_script('my-script-handle', 'my_localized_data', $data);
এবং যখন এই পিএইচপি পার্সারটি সহজেই চলে, আমি আমার পৃষ্ঠার উত্সে প্রত্যাশিত আউটপুটটি পাই না, কারণ আমার_লোকালাইজড_ডাটা.লেআউট_কনফিগ একটি স্ট্রিং "অ্যারে" হয়ে যায়, এখানে আউটপুট:
<script type='text/javascript'>
/* <![CDATA[ */
var wpkit_localized_data = {
layout_config: "Array"
};
/* ]]> */
</script>
সুতরাং .. আমি কীভাবে এটি করতে পারি (বা আমাকে কেবল এই বিষয়টি গ্রহণ করতে হবে যে আমাকে অবশ্যই আমার বস্তুটিকে আলাদা ভারসাম্যে পরিণত করতে হবে):
lc_header = '1';
ls_ls_sb1 = '1';
etc...