رفتن به مطلب

لینک دو سایت وردپرسی به هم


پست های پیشنهاد شده

سلام

من چندتا پلاگین نوشتم واسه نرم افزارهای مهندسی که واسه فعال شدن نیاز به کد فعالسازی دارن و این کد رو از سایت دریافت میکنن.حالا میخوام واسه تبلیغات و فروش بیشتر تو سایتهایی که کاربر زیادی دارند این محصول رو عرضه کنم ولی مشکل اینجاست که ادمین های سایتها میگن که باید کد فعالسازی رو بدی به ما که دیگه کاربر نیاد سایت تو و از اونجا فعال کنه(کاربر اذیت میشه) ولی من نمیخوام کد فعالسازی رو بهشون بدم.

حالا راهی هست که کاربرای اون سایت بدون اینکه متوجه بشن کد فعالسازی رو از سایت من بگیرن؟ یعنی وقتی تو سایت میزبان کلیک میکنن با یه پستی یا اجکسی به سایت من وصل بشن کد و بگیرن بدون اینکه متوجه بشن؟

لینک به ارسال
در 17 دقیقه قبل، mdamda گفته است :

سلام

من چندتا پلاگین نوشتم واسه نرم افزارهای مهندسی که واسه فعال شدن نیاز به کد فعالسازی دارن و این کد رو از سایت دریافت میکنن.حالا میخوام واسه تبلیغات و فروش بیشتر تو سایتهایی که کاربر زیادی دارند این محصول رو عرضه کنم ولی مشکل اینجاست که ادمین های سایتها میگن که باید کد فعالسازی رو بدی به ما که دیگه کاربر نیاد سایت تو و از اونجا فعال کنه(کاربر اذیت میشه) ولی من نمیخوام کد فعالسازی رو بهشون بدم.

حالا راهی هست که کاربرای اون سایت بدون اینکه متوجه بشن کد فعالسازی رو از سایت من بگیرن؟ یعنی وقتی تو سایت میزبان کلیک میکنن با یه پستی یا اجکسی به سایت من وصل بشن کد و بگیرن بدون اینکه متوجه بشن؟

کد فعالسازی توی سایت شما روی جای خاصی ذخیره شده؟

لینک به ارسال

سلام

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

لینک به ارسال

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

لینک به ارسال
در هم اکنون، mdamda گفته است :

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

مثلا برای هر کدوم از فروشنده ها یه شناسه تعریف کنید یه پارامتر میشه سریال ارسالی یه پارامتر دیگه هم میشه شناسه فروشنده.

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

لینک به ارسال
در 22 دقیقه قبل، mdamda گفته است :

حالا تو سایت خودم چجوری این اطلاعات رو بگیرم میشه با کد توضیح بدین؟

 

مثلا کد زیر رو در نظر بگیرید.

add_action('wp_ajax_mehran_ajax', 'mehran_ajax');
add_action('wp_ajax_nopriv_mehran_ajax', 'mehran_ajax');
function mehran_ajax() {
	echo "It's WordPress AJAX Api";
	wp_die(); // OR die(); OR exit();
}

کد بالا رو وقتی توی فایل functions.php قالب سایتتون یا توی فایل های یه پلاگین فعال بذارید و آدرس زیر رو مشاهده کنید

http://domain.com/wp-admin/admin-ajax.php?action=mehran_ajax

پیام It's WordPress AJAX Api رو مشاهده میکنید.

حالا توی تابع mehran_ajax هر عملیاتی رو میتونید انجام بدید تا سریال ارسالی رو به کد فعالسازی تبدیل کنید و ارسال کنید.

ویرایش شده توسط mehran-b
لینک به ارسال
در 28 دقیقه قبل، mdamda گفته است :

خیلی ممنونم این کار کرد ولی اون اطلاعات رو چجوری بفرستیم؟مثل شناسه و سریال رو

توی بخش FrontEnd که باید با آژاکس سریال و شناسه بفرستید به آدرسی که گفتم و توی PHP هم به این شکل دریفاتش میکنید:

add_action('wp_ajax_mehran_ajax', 'mehran_ajax');
add_action('wp_ajax_nopriv_mehran_ajax', 'mehran_ajax');
function mehran_ajax() {
	$serial = $_REQUEST['serial'];
	$id = $_REQUEST['id'];
	die();
}

بخش Javascript اش رو زیاد وارد نیستم اگر خودتون هم وارد نیستید بگید اونم مثال بزنم.

ویرایش شده توسط mehran-b
لینک به ارسال

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

    function( $ ) {
        ($(function(){
         $("#aa").click(function(){
                showPass("123456");
            });
            function showPass(str) {
                if (!str.length == 0) {
                    data={
                        action:'mda',
                        id_file:"156",
                        id_payment: "11",
                        serial_user:str,
                        shenase:"136845210"
                    }
                    $.post("http://mysite.ir/wp-admin/admin-ajax.php",data,function (response) {
                        $("#aa").append(response);
                                            })
                }
            }

        });

    })(jQuery);

 

لینک به ارسال

مثلا یه چیزی توی این مایه ها

این میشه جی کوئریش:

jQuery.ajax({
	type: 'POST',
	url: 'http://mysite.ir/wp-admin/admin-ajax.php',
	data: {
		'action': 'mda',
		'id_file': '156',
		'id_payment': '11',
		'serial_user': 'str',
		'shenase': '136845210'
	},
	dataType: 'json',
	success: function(result) {
		if (result.error === false) {
			jQuery("#aa").append(result.code);
		} else {
			jQuery("#aa").append("خطایی رخ داده است");
		}
	}
});

اینم میشه PHP ایش:

<?php

add_action('wp_ajax_mda', 'mda');
add_action('wp_ajax_nopriv_mda', 'mda');

function mda() {
	$id_file = $_REQUEST['id_file'];
	$id_payment = $_REQUEST['id_payment'];
	$serial_user = $_REQUEST['serial_user'];
	$shenase = $_REQUEST['shenase'];
	
	// اینجا عملیاتتون رو انجام میدید
	
	if('اگر همه چی اوکی بود')
		wp_send_json(array('error' => false, 'code' => '123'));
	else
		wp_send_json(array('error' => true));
}

چون دارید دیتا رو با wp_send_json ارسال میکنید این تابع توی خودش die داره و احتیاجی به die نیست.

ویرایش شده توسط mehran-b
ویرایش کد PHP
لینک به ارسال

بعله منم همین راه رفته بودم ولی ارور میده و متنش اینه

XMLHttpRequest cannot load http://etabsassistance.ir/wp-admin/admin-ajax.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://www.excelcode.ir' is therefore not allowed access.

چون من دارم از یه سایت دیگه درخواست ارسال میکنم میگه شما اجازه دسترسی نداری

لینک به ارسال

آها من به این قضیه حواسم نبود تابع PHP رو اینطوری بنویسید:

add_action('wp_ajax_mda', 'mda');
add_action('wp_ajax_nopriv_mda', 'mda');

function mda() {

	header('Access-Control-Allow-Origin: *');
	
	$id_file = $_REQUEST['id_file'];
	$id_payment = $_REQUEST['id_payment'];
	$serial_user = $_REQUEST['serial_user'];
	$shenase = $_REQUEST['shenase'];
	
	// اینجا عملیاتتون رو انجام میدید
	
	if('اگر همه چی اوکی بود')
		wp_send_json(array('error' => false, 'code' => '123'));
	else
		wp_send_json(array('error' => true));
}

 

لینک به ارسال
در 20 دقیقه قبل، mdamda گفته است :

خیلی ممنونم بابت وقتی که میذارید.

از لحاظ امنیتی اضافه کردن کد header مسئله نمیشه؟

بالاخره باید یا این کد یا محدودترش رو بذارید مثلا:

add_action('wp_ajax_mda', 'mda');
add_action('wp_ajax_nopriv_mda', 'mda');

function mda() {

	header('Access-Control-Allow-Origin: http://www.domain.com');
	header('Access-Control-Allow-Origin: http://www.domain1.com');
	
	$id_file = $_REQUEST['id_file'];
	$id_payment = $_REQUEST['id_payment'];
	$serial_user = $_REQUEST['serial_user'];
	$shenase = $_REQUEST['shenase'];
	
	// اینجا عملیاتتون رو انجام میدید
	
	if('اگر همه چی اوکی بود')
		wp_send_json(array('error' => false, 'code' => '123'));
	else
		wp_send_json(array('error' => true));
}

به جای domain و domain1 باید آدرس سایت فروشنده ها رو بذارید.

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...