دانیال

تبدیل فرم پنل قالب به ایجکس

11 پست در این موضوع قرار دارد

سلام

لطفا راهنمایی کنید که چطور این کارو بکنم

چند سایت رو هم دیدم مثل این

http://solislab.com/blog/5-tips-for-using-ajax-in-wordpress/#admin-ajax

ولی نفهمیدم چیکار کردن

ممنون

:x

0

به اشتراک گذاری این پست


لینک به پست

از این تیکه کد هم برای سیو استفاده میکنم


$options = array(
'kk_news_count'=> 5,
);
foreach($options as $key => $value){
update_option($key,$_POST[$key]);
}

0

به اشتراک گذاری این پست


لینک به پست

چرا هیچکس اینجا به سوالای من جواب نمیده

:blink:

0

به اشتراک گذاری این پست


لینک به پست

آژاکس رو برای چه بخشی از سایتتون میخواهید استفاده کنید؟

0

به اشتراک گذاری این پست


لینک به پست

یک فایل ایجاد کنید فرضا با نام key-ajac.php و این کدها رو توش بگذارید


<?php
/* template name: key Ajax*/
if(isset($_POST['key'])) {
$options = array(
'kk_news_count'=> 5,
);
foreach($options as $key => $value){
update_option($key,$_POST[$key]);
}
_e('Updated');
}
?>

فایل را در پوشه قالب ذخیره کنید و از طریق پیشخوان برگه ای با قالب فایلی که ساختید منتشر کنید

نشانی این برگه می شه اکشن اجرایی شما

حالا فرض کنید این فرم را دارید


<div id="msg"></div>
<input id="key">
<button type="button" id="button">Button</button>

و می خواهید با کلیک بر روی button مقدار key به صورت آژاکسی ذخیره بشه کد آزاکستون می شه:


<script>
$("#button").click(function(){
var key=$("#key").val();
$.ajax({
type:"POST",
url:"نشانی صفحه ای که منتشر کرده اید",
data:{key:key}
})
.done(function(msg){
$("#msg").html(msg);
})
})
</script>

چرا هیچکس اینجا به سوالای من جواب نمیده

:blink:

مطمئنید هیچکس جواب نمی ده؟

من فکر می کنم چند موردی رو خودم جواب داده باشم!

1

به اشتراک گذاری این پست


لینک به پست

ممنون این روش خوبی بود

ولی یه مشکل اساسی داره

وقتی قالب رو به مشتری عرضه میکنم میخوام کمترین توضیح رو مشتری داده باشم

برای همین بهتره که خود این صفحه اوتوماتیک ساخته بشه

تا به طرف بگم برو این صفحه رو اینطوری بساز

چطوری اوتوماتیک بسازم ؟ (با کد)

مطمئنید هیچکس جواب نمی ده؟

من فکر می کنم چند موردی رو خودم جواب داده باشم!

باور کنید اینجا کسی غیر از شما جواب نمیده

می ترسم به شما هم پیام بدم بیاید به تاپیک هام سر بزنید :(

0

به اشتراک گذاری این پست


لینک به پست

می تونید برگه تازه نسازید کدها را در ابتدای کدهای صفحه فرم قراربدید و کل کدهای صفحه فرم را در حالت else شرط لود کنید


if(isset($_POST['key'])) {
$options = array(
'kk_news_count'=> 5,
);
foreach($options as $key => $value){
update_option($key,$_POST[$key]);
}
_e('Updated');
}
else {
//کدهای فایل فعلی پنل
}

البته برای ساختن خودکار برگه هم می شه تابع نوشت و می شه هم از اکشن آژاکس وردپرس استفاده کرد

https://codex.wordpr...p_ajax_(action)

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

ممنون تا اینجا حله

حالا میخوام یه کاری کنم

مقدار همه ی input ها رو یک جا بفرستم و اونجا توی همون foreach بگیرم

توی jqeruy چطوری بنویسم ؟

js:


data: $('input').serialize()

این مقدار هارو چطوری با foreach بگیرم ؟

ویرایش شده در توسط ایگل دیزاین
0

به اشتراک گذاری این پست


لینک به پست

<script>
$("#button").click(function(){
$(this).parents("form").find("input").each(function() {
var key=$(this).val();
$.ajax({
type:"POST",
url:"نشانی صفحه ای که منتشر کرده اید",
data:{key:key}
})
.done(function(msg){
$("#msg").html(msg);
})
})
})
</script>

0

به اشتراک گذاری این پست


لینک به پست

اشتباه متوجه شدید

من میخوام مقدار همه اینپوت ها رو یک دفعه بفرستم

به جای اینکه آی دی تک تکشون رو وارد کنم

0

به اشتراک گذاری این پست


لینک به پست

من آی دی تک تکشون رو وارد نکردم ولی اگر می خواهید یکجا ارسال شود اسکریپ زیر را به برگه معرفی کنید

jquery.form.zip

و از اسکریپتی شبیه کد زیر استفاده کنید


$(document).ready(function() {
$('#myForm').on('submit', function(e) {
e.preventDefault(); // <-- important
$(this).ajaxSubmit({
target: '#msg'
});
});
});

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری