-
تعداد ارسالها
316 -
تاریخ عضویت
-
آخرین بازدید
-
روز های برد
8
نوشتهها ارسال شده توسط HANNANStd
-
-
سلام .
تمام امکانات حتی پرداخت با وردپرس امکان پذیره :
دیوار :
http://nasimnet.ir/vitrin-like-divar/
شیپور:
- 3
-
فرمایشات شما متین و قابل قبوله
ولی آیا شما حاضری 70 دلار (حدودا یه 250 هزار تومنی میشه) بدی به یه کشور خارجی و اون کشور که در حال تحریم ماست رو تقویت کنی ؟
من بودم با تمام توانم به کل افراد اون کشور ضربه میزدم
دوست عزیز شما خودت داری به وب ایران ضربه شدیدی میزنی ..... طراحی سایت 30 هزار تومن آخه ؟؟؟؟!!
- 4
-
به بالاترین قیمت حتی اگه 5 ریال باشه فروخته میشه. لطفا سریع فقط
اکی . من 5 ریال خریدارم .
فروشنده بودی پیام بده .
موفق باشی .
- 3
-
سلام .
نسخه 3 افزونه پیامک ووکامرس منتشر شد و خوشحالم که افتخار این رو داشتم که در این افزونه بتونم خدمت کوچکی به شما وردپرس کاران عزیز کنم .
در این نسخه امکانات و ویژگی های زیادی اضافه شده و سعی شده به اکثر نیازهایی که تو ورژن قبلی مطرح شده بود پاسخ داده باشه .
قابل ذکر هست که این نسخه فعلا بتا بوده و وجود باگ طبیعی میباشد . پس در صورت کشف و مشاهده ما را جهت رفع آن ها با خبر سازید .
جهت دانلود و مشاهده امکانات و ویژگی های جدید به انجمن ووکامرس پارسی مراجعه نمایید :
- 1
-
سلام . نسخه جدید منتشر شد . هر سوالی دارید در انجمن ووکامرس پارسی مطرح نمایید در خدمتتون هستیم .
-
ترجمه فارسی انجام گرفته توسط پرشین اسکریپت به هسته افزونه اضافه شد ...
نسخه کاملا فارسی 2.2.3 رو مستقیما از گیت هاپ نویسنده اصلی دریافت کنید .
- 1
-
ببینید اینکه php بلد نیستید یکم لقمه بزرگی برداشتید چون برای کار با این اسکریپت با فریمورک یی نوشته شده باید با معماری MVC هم آشنایی داشته باشید .... خب منم که فرصت نمیکنم از شما اسکریپتشو بگیرم و نصبش کنم ولی راهنماییتون میکنم یکم تلاش کنید راحت به نتیجه میرسید ....
اول از همه شما باید متغیر هایی که تو برگشت از بانک لازم دارید رو به سمت بانک بفرستید و در برگشت از بانک ازش پس بگیرید ... پس به صورت زیر کوئری میکنیم . ( باید جایگزین متغیر redirect تو فایل ارسال به بانک کنید)
//باید متغیر های مورد نظر در برگشت رو به صورت کوئری بفرستید و بعدش هم پس بگیرید .
$redirect = $notifyUrl.'?custom='.$customVars.'&price='.$amount;
//یا میتونید سشن کنید که کوئری بهتره به نظرمالان ما 2 متغیر custom و قیمت رو میفرستیم برای بازگشت از بانک ...
خب کد زیر هم با فرض اینکه اون کدی که گذاشته بودید توی پست اول واقعا کد های بررسی برگشت باشه و اشتباه نکرده باشید باید به صورت زیر استفاده کنید :
<?php
class Payment_gateway_ext_paypalController extends Controller
{
// the extension instance
public $extension;
/**
* Process the IPN
*/
public function actionIpn()
{
if (!Yii::app()->request->isPostRequest) {
$this->redirect(array('price_plans/index'));
}
$postData = Yii::app()->params['POST'];
/*
if (!$postData->itemAt('custom')) {
Yii::app()->end();
}
*/
// بررسی وضعیت تراکنش توسط پی لاین
$apiID = ''; //api پی لاین
$Amount = $_GET['price'];
$url = 'http://payline.ir/payment/gateway-result-second';
$id_get = isset($_POST['id_get']) ? $_POST['id_get'] : $postData->itemAt('id_get');
$trans_id = isset($_POST['trans_id']) ? $_POST['trans_id'] : $postData->itemAt('trans_id');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, "api=$apiID&id_get=$id_get&trans_id=$trans_id");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
$res = curl_exec($ch);
curl_close($ch);
if ($res == 1) {
// تراکنش موفق است
$stat = 'completed';
$transaction_id = $trans_id;
$fault = 0;
}
else if ( $res == -1 || $res == -2 || $res == -3 ) {
// تراکنش ناموفق است
$stat = 'failed';
$transaction_id = $trans_id;
$fault = $res;
}
else {
// تراکنش انصرافی کاربر است
$stat = 'cancelled';
$transaction_id = $trans_id;
$fault = 0;
}
// اتمام بررسی وضعیت پی لاین
// فراخونی کوئری custom
$custom = $_GET['custom'];
//پیدا کردن تراکنش از روی custom
$transaction = PricePlanOrderTransaction::model()->findByAttributes(array(
'payment_gateway_transaction_id' => $custom,
'status' => PricePlanOrderTransaction::STATUS_PENDING_RETRY,
));
if (empty($transaction)) {
Yii::app()->end();
}
$newTransaction = clone $transaction;
$newTransaction->transaction_id = null;
$newTransaction->transaction_uid = null;
$newTransaction->isNewRecord = true;
$newTransaction->date_added = new CDbExpression('NOW()');
$newTransaction->status = PricePlanOrderTransaction::STATUS_FAILED;
$newTransaction->payment_gateway_response = print_r($postData->toArray(), true);
// $newTransaction->payment_gateway_transaction_id = $postData->itemAt('txn_id');
$newTransaction->payment_gateway_transaction_id = $transaction_id;
$model = $this->extension->getExtModel();
$postData->add('cmd', '_notify-validate');
$request = AppInitHelper::simpleCurlPost($model->getModeUrl(), $postData->toArray());
/*
if ($request['status'] != 'success') {
$newTransaction->save(false);
Yii::app()->end();
}
*/
// $paymentStatus = strtolower(trim($postData->itemAt('payment_status')));
// $paymentPending = strpos($paymentStatus, 'pending') === 0;
// $paymentFailed = strpos($paymentStatus, 'failed') === 0;
// $paymentSuccess = strpos($paymentStatus, 'completed') === 0;
// $verified = strpos(strtolower(trim($request['message'])), 'verified') === 0;
// $sameEmail = $postData->itemAt('receiver_email') == $model->email;
$order = $transaction->order;
// اگر تراکنش از قبل تکمیل شده بود که هیچی بیخیال ولی .....
if ($order->status == PricePlanOrder::STATUS_COMPLETE) {
$newTransaction->save(false);
Yii::app()->end();
}
// if (!$verified || !$sameEmail || $paymentFailed) {
// اگر وضعیت پی لاین ناموفق بود ... وضعیت ناموفق رو ثبت کن
if ( $stat == 'failed') {
$order->status = PricePlanOrder::STATUS_FAILED;
$order->save(false);
$transaction->status = PricePlanOrderTransaction::STATUS_FAILED;
$transaction->save(false);
$newTransaction->save(false);
Yii::app()->end();
}
// if ($paymentPending) {
// اگر وضعیت پی لاین کنسل شده بود همونطوری تو وضعیت پندینگ بمونه
if ( $stat == 'cancelled') {
$newTransaction->status = PricePlanOrderTransaction::STATUS_PENDING_RETRY;
$newTransaction->save(false);
Yii::app()->end();
}
/// اگر هیچ کدوم از وضعیت های بالا نبود پس موفق بوده ... موفق بودنش رو ثبت کن ..
$order->status = PricePlanOrder::STATUS_COMPLETE;
$order->save(false);
$transaction->status = PricePlanOrderTransaction::STATUS_SUCCESS;
$transaction->save(false);
$newTransaction->status = PricePlanOrderTransaction::STATUS_SUCCESS;
$newTransaction->save(false);
Yii::app()->end();
}
}سعی کردم قسمت های مختلفشو توضیح بدم روی کد که راحت تر به نتیجه برسید ..
موفق باشید .
- 2
-
کل اسکریپت همینه ؟
- 2
-
سلام . آها شما دارید از روش form اچ تی ام ال انجام میدید که نمیشه . باید از طریق وبسرویس انجام بدید ... که البته کاری نداره .. اگه توی سایتتون امکان ایجاد فایل php رو دارید بگید من یه کد php با همین فرم براتون درست میکنم .
یعنی به این صورت که نیاز هست شما 2 تا فایل php رو که بهتون بدم بتونید در یک جایی قرار بدید . اولی اطلاعات این فرمتون رو به فایل php اولی پست میکنیم بعدش ازونجا به وبسرویس متصل میشیم و بعدش هم برمیگردیم به فایل php دوم و از اونجا بسته به وضعیت تراکنش به آدرس مورد نظرتون هدایت میشه .
- 1
-
دوست عزیز شما کوئری custom پی پال رو با چه متغیری جایگزین کردید و به بانک فرستادید ؟
چون یکی از قسمت های اصلی کد برگشت شما مربوط به کد زیره :
$transaction = PricePlanOrderTransaction::model()->findByAttributes(array(
'payment_gateway_transaction_id' => $postData->itemAt('custom'),
'status' => PricePlanOrderTransaction::STATUS_PENDING_RETRY,
));یعنی وقتی از بانک بر میگرده میخواد اول تراکنش مربوطه که وضعیتش pending هست رو از روی $_POST['custom'] پیدا کنه و بعدش بیاد از روی وضعیت پی لاین تراکنش رو یا رد کنه یا تایید کنه ... فایل ارسال به بانک رو هم بذارید .
- 2
-
این حلقه نیست .. این داره از یک فایل content.php فراخونی میکنه حلقه رو .
- 1
-
دوست عزیز کاری نداره خیلی آسونه ... فقط من هرکاری کردم نتونستم فایل زیر رو باز کنم :
www.cld.persiangig.com/dl/mnASE/fLllCzRD9A/ParsPal.txt
اگه میتونی لینک بهتری بذار یا داخل بی بی کد بذار برات اکی میکنم .
- 2
-
سلام . اگه اشتباه نکنم باید برای سایت wle.ir باشه .. ببینید شما با افزونه های vip نظیر restrict content pro میتونید همچین سایتی بزنید ولی نباید انتظار داشته باشید با نصب افزونه همه چی خودکار انجام بشه . این افزونه ها یه سری توابع php یا شورت کد در اختیارتون میذارن که باید تو قالب اعمالشون کنید .
مثلا برای همون قسمتی که نوشته ارسال نظر برای مطالب vip شما باید توسط توابع restrcit content pro بیاید و دور کد های comment شرط بذارید فقط اعضای vip بتونن .
-
پیرو سخنان دوستان قصد جسارت ندارم ولی بهترین افزونه برای 2 زبانه کردن وردپرس افزونه WPML هستش که ادانز ها خیلی خوبی هم داره :
- 3
-
دوست عزیز حلقه قسمت index قالبتون رو همینجا بذارید .
- 1
-
با سلام
من یک افزونه نوشتن و بعد از ثبت در مخزن و تایید شدن آن لینک svn آن برایم ارسال شد حال با استفاده از برنامه TortoiseSVN اقدام به ارسال فایل ها میکنم ولی مشکلی که هست همش بهم پیغام زیر رو میده در حالی که طبق آموزش که در سایت بود http://wp-parsi.com/...-wordpress-org/ این کار رو انجام دادم ولی باز پیغام زیر رو میده بهم از دوستان اگر کسی علتش میدونه ممنون میشم راهنمایی کنه
سلام . کاش مورد رو میگفتید تا دوستان هم در صورت برخورد بتونن به جواب برسن . این مشکل واسه اینه که قبل از زدن دکمه ثبت باید تو قسمت comment حداقل یه توضیحی بنویسید و اگه خالی باشه این مشکل پیش میاد .
خب لینک افزونه تون رو هم میذاشتیم استفاده کنیم.
- 3
-
نه عزیز . حذف نمیشن .
تنظیمات افزونه هم از داخل پیکربندی تیکش رو بزنید که حذف نشن .
- 1
-
:: دوستان اگر سوال یا مشکلی دارن به لینک زیر مراجعه کنند :
- 2
-
میتونید از restrict content pro استفاده کنید . نسخه جدیدشم که دیروز اومده یعنی 2.2.1 با ووکامرس هم یک پارچه شده :
- 1
-
ممنون از هر دو دوست عزیز
در ضمن کد هم کار کرد
ولی کسی نمیدونه چرا افزونه related posts این مشکل رو داره؟!
مشکل نیست ! اتفاقا یک چیز روتین هست . منم از کدی مثل کدی که دوستمون بالا گذاشتن توی سایتهام استفاده میکنم ولی خودم order رو به صورت rand میذارم توش .
- 2
-
دوست عزیز احتمالا کوئری هاشو جوری نوشتن که مطالب مرتبط رو میاره ولی هر بار به صورت رندم میاره ... مثلا 10 تا پست هستند که با این مطلب شما از نظر دسته یا برچسب و .. مرتبط هستند . دفعه اول که این 10 تا رو آورد ، دفعه دوم هم همین 10 تا رو با چینش متفاوت میاره و الی آخر ...
- 2
-
اول توی .httaccess نگاه کن ببین اثری از
siteN.com
هست یا نه . اگه نبود پس تو دیتابیسته .
این رو بنصب :
https://wordpress.or...ve-update-urls/
بعدش برو توی ابزار ها >> Go URL همه تیک های دیتابیس رو بزن . توی old url آدرس
siteN.com
رو بزن و توی new url هم آدرس :
site.com
رو .
- 1
-
پیش نهاد میکنم از این شکل پوسته ها استفاده نکنید.
خطا مربوط به فایل forum.php هستش
زحمت کشیدید ! اصلا معلوم نبود !
-----------------------------------------------------------------------------------------------------------
اما جواب سوال :
دوست عزیز یک فایل به اسم forum.php باید داخل پوشه قالبتون وجود داشته باشه که گویا حذف شده . اگه داریدش برش گردونید اگرم نداریدش و میبینید که اختلالی توی سایت ایجاد نمیکنه بهتره خط 9 فایل index.php رو باز کنید و کد زیر رو از توش حذف کنید :
include_once( get_template_directory() . '/forum.php' );البته چون معمولا سایت 20 اسکریپت آخرین ارسالی های انجمنش رو توی سایتش نشون میده بنده هستم میزنم اون forum.php هم فایل مربوط به آخرین ارسالی های انجمن باشه .
در ضمن احتمالا قبلا هم این مشکل توی سایت شما وجود داشته ولی حالت debug روی false بوده که نشون نمیداده .
-
حلقه ی foreach و چاپ آرایه
در برنامه نویسی داینامیک
ارسال شده در
برای این خروجی شما کد های زیادی میشه نوشت .. مثلا اگه فقط خروجی بالا مد نظر باشه کد زیر ساده ترینه :
اما برای آرایه تو در تو اگه بخواید ؛ کد زیر هم همون کار رو میکنه و مثل کد خودتون باید sub1 sub2 sub3 ......... رو بهش وارد کنید :