آموزش وردپرس ، چگونگی افزدون ajaxurl در پلاگین

http://wpmen.ir/

با سلام خدمت کاربران گرامی سایت مردان وردپرس . اگر تا به حال با طراحی سایت و برنامه نویسی کار کرده باشید و بخواهید همان روش ها را در سایت هایی مانند وردپرس انجام دهید ممکن است برایتان سخت تر شود و کمی به مشکل بر بخورید.یکی از این کارها ایجکس در وردپرس می باشد .

یْ‌جکس (AJAX؛ سرواژهٔ Asynchronous JavaScript And XML)، مجموعه‌ای از استانداردها و فناوری‌های وب است که به کمک آن‌ها می‌توان برنامه‌هایی مبتنی بر وب تولید کرد که به آسانی با کاربران تعامل داشته باشند. با استفاده از این فناوری‌ها و با کمک انتقال تکه‌های کوچک داده و اطلاعات از رایانهٔ خادم (Server)، صفحات وب از حالت منفعل خارج می‌شوند و واکنش‌هایی مناسب با رویدادها انجام می‌دهند. ای‌جکس معماری جدیدی برای برنامه‌های تحت وب است، که با سرعت بسیار زیادی در حال گسترش بوده، و کمتر کاربری در اینترنت است که هنوز گذرش به یکی از صفحاتی که با این معماری ساخته شده‌اند نیفتاده، و از قابلیت‌های فوق‌العاده آن بهره‌مند نشده باشد. Gmail، Google Map، Google Suggest، Orkutt، و اسامی آشنای دیگر، نمونه‌هایی هستند از کاربرد ای‌جکس. با استفاده از این معماری، صفحات وب تعامل بسیار خوبی با کاربران خواهند داشت. بعلاوه، مهم‌ترین مزیت این معماری این است که دیگر برای انجام هر کاری، لازم نیست صفحه وب دوباره بارگذاری شود. در این مقاله به بررسی تاریخچه، اصول، و شیوه‌ی انجام کارها در این معماری خواهیم پرداخت.

ویکی پدیا

 

 

وقتی می خواهید قسمتی از صفحه سایتتان بدون بارگزای مجدد ، تغییر کند نقش ایجکس مشخص خواهد شد.اما در وردپرس کمی متفاوت تر می باشد.اگر بخواهید ایجکس را در وردپرس فراخوانی کنید مثلا یک قطعه کد برای قالب خود و حتی برای ساخت یک پلاگین قرار دهید ، چون وردپرس به صورت پیشفرض در قسمت های مختلف کد ایجکس را دارا می باشد می توانید از کد زیر در سایت خود استفاده کنید.کد زیر را باید در functions.php پوسته فعال سایت خود قرار دهید.

 

<?php
add_action('wp_head','pluginname_ajaxurl');
function pluginname_ajaxurl() {
?>
<script type="text/javascript">
var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>';
</script>
<?php
}

حال کافیست کد جاوا ایجکس خود را به صورت زیر وارد نمایید.در قسمت مربوط به جاوا اسکریپتی که برای اینکار در نظر گرفته اید

$.ajax({
		url:ajaxurl,
		type : "POST"

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

<?php
add_action( 'admin_footer', 'my_action_javascript' ); // Write our JS below here

function my_action_javascript() { ?>
	<script type="text/javascript" >
	jQuery(document).ready(function($) {

		var data = {
			'action': 'my_action',
			'whatever': 1234
		};

		// since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
		jQuery.post(ajaxurl, data, function(response) {
			alert('Got this from the server: ' + response);
		});
	});
	</script> <?php
}

<?php
add_action( 'admin_enqueue_scripts', 'my_enqueue' );
function my_enqueue($hook) {
    if( 'index.php' != $hook ) {
	// Only applies to dashboard panel
	return;
    }
        
	wp_enqueue_script( 'ajax-script', plugins_url( '/js/my_query.js', __FILE__ ), array('jquery') );

	// in JavaScript, object properties are accessed as ajax_object.ajax_url, ajax_object.we_value
	wp_localize_script( 'ajax-script', 'ajax_object',
            array( 'ajax_url' => admin_url( 'admin-ajax.php' ), 'we_value' => 1234 ) );
}

// Same handler function...
add_action( 'wp_ajax_my_action', 'my_action_callback' );
function my_action_callback() {
	global $wpdb;
	$whatever = intval( $_POST['whatever'] );
	$whatever += 10;
        echo $whatever;
	wp_die();
}

ajax

منبع :‌ مردان وردپرس

تاریخ آخرین بروزرسانی : ۵ اسفند ۱۳۹۵
میلاد میلادی

باور هایت را که پرورش دهی به هرچیزی دست خواهی یافت.

2نظر برای

آموزش وردپرس ، چگونگی افزدون ajaxurl در پلاگین


  1. رحیم

    سلام
    دستتون درد نکنه
    می شه یه مثال عملی بزنید مثلا اگه توی تکس باکس کاربر نام یک دسته(کتگوری) را وارد کند توسط ای جکس فرستاده ودر نیتجه آن پست های آن دسته را نمایش بده
    من با wp_Query هر کاری کردم نشد میشه راهنماییم کنید ممنون میشم

ارسال نظر

آدرس الکترونیکی شما نمایش داده نمی شود *

Time limit is exhausted. Please reload CAPTCHA.