قلب وردپرس | آموزش جامع
2.17K subscribers
430 photos
77 videos
185 files
388 links
مرجع تخصصی آموزش وردپرس
گروه تخصصی : @woordpressi
اینستاگرام : codin.uni

https://www.youtube.com/channel/UCIR5ArWUlRKlE46c3qi0j3g?sub_confirmation=1

‼️جهت ارتباط با ما و ارسال درخواست خود از طریق ربات زیر اقدام نمایید :
🆔 @pv3az_bot
Download Telegram
#باتوابع‌دوست‌باشیم
#معرفی‌تابع
#اختصاصی
#تکه‌کد
معرفی تابع بسیار کاربردی add_role و نحوه استفاده از آن
🖌 با عرض سلام خدمت اعضای محترم قلب وردپرس ، با توجه به اینکه چندروزی کمکاری داشتیم ، مجدد برگشتیم خدمت شما با معرفی یک تابع بسیار کاربردی و حرفه ای که کمتر کسی از دوستان وردپرس کار با این تابع آشنا هست و کاربردش رو میدونه!
پس شما رو با مطالعه این مطلب، به دسته افراد مطلع این تابع دعوت میکنم!

با استفاده از تابع نامبرده شده ، میتوان یک سطح کاربری جدید را به وردپرس اضافه نمود.
این درصورتی است که برای انجام اینکار شما میبایست از پلاگین هایی استفاده کنید که باعث سنگین شدن سایتتون میشه!
پس با من همراه باشید تا به کمک یک تابع در یک تکه کد ، یک سطح کاربری جدید را به وردپرس اضافه کنیم :

تابع add_role برخی اطلاعات را درخود جای میدهد و آنها قابل تغییر و شخصی سازی هستند.
به مثال زیر توجه کنید :

add_role($sathkarbari , $onvan , $dastresiha = array() );

📍در متغیر اول یک شناسه یا نام برای سطح کاربری دریافت میکند
📍در متغیر دوم یک عنوان برای سطح کاربری دریافت میکند تا در لیست نمایش دهد.
📍درمتغیر سوم سطح دسترسی های لازم برای این سطح کاربری را در یک آرایه دریافت میکند.

پس مثال زیر را مشاهده کنید که ما یک سطح کاربری با نام testuser ساخته ایم :

add_role('testuser' , 'test user', array('read' => true, 'delete_posts' => true,)
);


❗️دسترسی های سطح کاربری فوق درحال حاضر فقط خواندن و حذف محتوا داده شده است.
‼️شما میتوانید دسترسی های دیگر به این سطح کاربری اضافه کنید.

برای مشاهده داکیومنت برای اضافه کردن دسترسی به سطح کاربری لینک زیر را ببینید :

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

این مطلب کاملا #اختصاصی میباشد.
#لطفا درصورت کپی برداری از این مطلب، منبع را @wpheart درج نمایید.

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

قلب وردپرس را حمایت کنید 🌹
@wpheart
#تکه‌کد #معرفی‌ابزار #معرفی‌تابع
معرفی تابع web_get_content و استفاده از آن برای کارهای هیجان آور😉
🖌این تابع که مشابه تابع file_get_content است ، فعالیت دقیقا مشابهی دارد با اختلاف دریافت اطلاعات از یک سایت!
در مثال زیر ما از تابع مورد نظر استفاده کردیم و بر روی آن پروکسی تنظیم کرده ایم تا هر سایت را بدون ردپا از ایپی سرور شما باز کند!
‼️عواقب استفاده برای اتک و... برعهده شخص استفاده کننده میباشد.
❗️این تابع صرفا برای یادگیری معرفی شده است.

مثال :

function web_get_contents($url)
{
$begirProxy = explode("\n", file_get_contents("https://api.proxyscrape.com/?request=getproxies&proxytype=http&timeout=10000&country=all&ssl=all&anonymity=all"));
$theProxy = $begirProxy[rand(count($begirProxy)-1)];
$getProxyData = explode(":",$theProxy);
$theProxyIp = $getProxyData[0];
$theProxyPort = $getProxyData[1];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_PROXYPORT, $theProxyPort);
curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
curl_setopt($ch, CURLOPT_PROXY, $theProxyIp);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}


📍باتشکر از MatinME بابت نوشتن این تکه کد و معرفی.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#معرفی‌تابع #باتوابع‌دوست‌باشیم #اختصاصی
معرفی توابع مربوط به نمایش مطلب قبل و بعد در وردپرس
🖌اگر درحال طراحی یک قالب هستید و یا کنجکاو به نمایش مطالب قبل و بعد در صفحه نوشته خود هستید لابد یک جستجو در سطح اینترنت داخلی ( جستجوی فارسی ) کرده اید! و در ۹۹ درصد مواقع به شما افزونه معرفی شده و تمایلی به استفاده از افزونه ندارید!
در این آموزش به شما تابعی را معرفی خواهیم کرد که به کمک آن مطلب قبل و بعدی را بدون افزونه در صفحه نوشته های خود نمایش دهید!

توابع :
get_next_post
get_previous_post
که همانطور که از نام آنها مشخص هست مربوط به مطلب بعد و قبل میباشد.

نحوه استفاده از این توابع به شرح زیر میباشد :
❗️هریک از این توابع ۳ مقدار را در خود جای میدهند که برابر هستند با :
مقدار اول : در شرایط و قوانین فعال باشد یا خیر
مقدار دوم : مستثنی قرار دادن قوانین و شرایط( در قالب آرایه )
مقدار سوم : فیلتر بر اساس چه ( دسته بندی ، برچسب و... )


مثال از نحوه استفاده ساده تر :

$next = get_next_post();
if(is_a($next,'WP_Post')):?>
<a href="<?php echo get_permalink($next->ID);?>"> <?php echo get_title($next->ID);?></a>


❗️به جای استفاده از تابع get_permalink میتوانید از
get_next_posts_link
get_previous_post_link
استفاده کنید.

پایان/.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#معرفی‌تابع #باتوابع‌دوست‌باشیم #اختصاصی #تابع
معرفی تابع substr_count و نحوه استفاده از آن در یک فرمول محاسباتی در وردپرس
🖌این تابع این قابلیت را دارد که چند مقدار را در خود جای دهد! اما با توجه به هدف ما در این آموزش ما ۲ مقدار ورودی را به این تابع خواهیم داد!
همانطور که از نام تابع مشخص است ، این تابع تعداد ریزکلمات را به ما نمایش میدهد !
مثال : ما در سایت خود یک بخشی را برای ارسال نوشته توسط کاربران را پیاده سازی کرده ایم اکنون میخواهیم برای دکمه ارسال نوشته یک شرط را قرار دهیم که اگر مقدار کلمه کلیدی ۳ بار و یا بیشتر از آن در محتوای نوشته بود، دکمه انتشار به کاربر نمایش داده شود!

با این اوصاف ما یک فرم با ۲ ورودی متنی و یک دکمه ارسال را میسازیم و مقدار اول که همان کلمه کلیدی است در فرمول زیر قرار میدهیم :

$keyword = $_POST['keyword'];

سپس مقدار ورودی محتوای نوشته را نیز در یک متغیر ذخیره میکنیم :

$content = $_POST['content'];

خب ، به همین راحتی تا به اینجای کار انجام شد !
حالا باید فرمول اصلی را نوشت که به کمک تابع ذکر شده نوشته میشود، به مثال زیر توجه کنید :

$keyword_count = substr_count($content, $keyword);

در این تکه کد ، تعداد تکرار کلمه کلیدی را در بین محتوای نوشته دریافت میکنیم ، سپس به شکل زیر آن را در فرمول شرطی خود قرار میدهیم :

if($keyword_count >= 3 ){
کدهای مربوط به دکمه ارسال در این بخش قرار میگیرد.
}else{
پیغامی که درصورت عدم برقراری شرط فوق میخواهید نمایش داده شود را اینجا بنویسید
}


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

❗️با کمی خلاقیت میتوان از این فرمول بصورت ایجکس استفاده کرد.
❗️در این آموزش فقط بک اند کار توضیح داده شده و برای فرانت میبایست فرم ارسال را بسازید.
‼️#لطفا درصورت کپی برداری از این آموزش ، منبع را @wpheart ذکر نمایید.

🔅درصورت وجود هرگونه سوال و نیاز به نوشتن سیستم اختصاصی ارسال نوشته توسط اعضا به همراه پنل کسب درامد با ما در ارتباط باشید. ( بخش دیدگاه ها و ربات پشتیبانی به نشانی @pv3az_bot )

قلب وردپرس را حمایت کنید 🌹
@wpheart
#ترفند #تکه‌کد #معرفی‌تابع
دریافت سطح کاربری یک کاربر خاص با شناسه کاربر
🖌دلایل زیادی برای این کار وجود دارد که سطح کاربری یکی از کاربران سایت را مشاهده کنیم، نمونه بارز آن خطایی هست که در صفحه ورود به پیشخوان‌وردپرس نمایش داده میشود!
خطایی با متن :
شما مجوز دسترسی به این صفحه را ندارید.

#نکته : مشاهده سطح کاربری از طریق دیتابیس نیز مقدور است اما ممکن است برای شما سخت و پیچیده باشد.

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

<?php
$user_id = 1;
$user_info = get_userdata($user_id);
echo $user_info->roles;
?>


سپس فایل مورد نظر را اجرا کنید تا سطح کاربری کاربر مورد نظر شما را نمایش دهد.

پایان/.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#ترفند #معرفی‌ابزار #معرفی‌تابع #باتوابع‌دوست‌باشیم
اتصال یک دیتابیس جدید به وردپرس و استفاده از آن در سایت
🖌 برخی مواقع ممکن است نیاز داشته باشیم تا یکسری اطلاعات را از یک دیتابیس دیگر دریافت کنیم .
بعنوان مثال : برخی از اطلاعات مانند اطلاعات کاربران که توسط نرم افزار و یا سایتی دیگر در یک دیتابیس ذخیره شده اند را دریافت کنیم.
به این ترتیب میتوانیم به کمک تابع wpdb که نحوه استفاده از آن را در ادامه خواهیم آموخت نیاز خود را برطرف کنیم.
❗️این مطلب کاملا اختصاصی میباشد و میتوان روش های دیگری نیز تعبیه کرد.
‼️قبل از انجام تغییران از سایت خود نسخه پشتیبان تهیه کنید.
مراحل انجام این آموزش به شرح زیر میباشد :

1⃣ : وارد پوشه قالب سایت خود شوید و فایل functions.php را ویرایش کنید.
2⃣ : تکه کد زیر را در قسمت مشخصی از آن وارد کنید.

function wpheart_dbtwo(){
global $newdb;
$newdb = new wpdb(dbuser , dbpswd , dbname , hoatname);
}
add_action('init','wpheart_dbtwo');


#توضیح :
یک تابع ساختیم و در آن یک دیتابیس جدید ساختیم و با قلاب init آن دیتابیس را به هسته وردپرس اضافه کردیم.
شما به جای hostname میبایست آدرس دامنه و یا آیپی سرور مورد نظر را وارد کنید ( درصورتی که دیتابیس موردنیاز شما بر روی سرور سایت خودتان است localhost را بنویسید. )

3⃣ : در این مرحله کار ما تمام شده است و به دیتابیس متصل شده ایم ، برای دریافت اطلاعات از آن دیتابیس نیز به شکل زیر عمل میکنیم .

global $newdb;
$mylists = $newdb->get_var("SELECT table FROM $wpdb->lists");
echo $mylists


⭕️ درصورت اتصال به سرور دیگر میبایست ایپی هر دو سرور مبدا و مقصد در فایروال سرور ها مجاز به اتصال باشد درغیر اینصورت اتصال ناموفق بوده و عملکرد سیستم دچار مشکل خواهد بود.

📌 درصورتی که سوال و مشکلی در رابطه با این مطلب دارید از طریق دیدگاه ها با ما در ارتباط باشید.
📍برای این مطلب زمان صرف شده است ، #لطفا درصورت کپی برداری منبع را @wpheart درج نمایید.

پایان/.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#معرفی‌تابع #باتوابع‌دوست‌باشیم #تکه‌کد #اختصاصی‌قلب‌وردپرس
معرفی و نحوه استفاده از تابع wp_insert_post برای ارسال نوشته توسط اعضا
🖌اگر شماهم نیاز داشته باشید تا در سایت خود یک فرم تعبیه کنید تا اعضای سایتتان بتوانند یک نوشته را انتشار دهند ، بدون شک پس از ساعت ها جستجو و پرس‌و‌جو در دنیای اینترنت و در گروه های وردپرسی در نهایت به استفاده از افزونه گراویتی فرم خواهید رسید!!
بله کاملا درست است! بهترین راه شما همین است و بس و یا استفاده از افزونه های دیگر با کمی دسترسی های محدود!

🔅 ارسال نوشته توسط اعضا با گراویتی فرم را در آپارات ما ببینید 😉 🔅

اما اگر کمی تجربه و تخصص در رابطه با ساخت فرم در html و دریافت اطلاعات ورودی در یک فایل php را دارید به شما توصیه میکنیم ادامه این مطلب را بخوانید 😊

در این مطلب ما به شما خواهیم آموخت که چگونه مقادیر دریافتی از فرم ارسال شده توسط کاربر را در قالب یک نوشته به دیتابیس وردپرس اضافه نمایید!
❗️مثالی که ما میزنیم فقط برای درک موضوع میباشد و شما میتوانید آن را با توجه به خلاقیت خود توسعه دهید.

📍فرض کنید یک فرم ساختیم و شناسه فیلد هارا به شکل زیر قرار داده ایم :
post_title
content
except
thumb_img

حالا این مقادیر را در یک آرایه درون متغیر post_info ذخیره میکنیم :
$post_info = array(
'post_title' => $_POST['post_title'],
'post_content' = $_POST['content],
);

به این ترتیب مقادیر دریافتی را در هر یک از شناسه های مربوطه دریافت میکنیم .
پس از به اتمام رسیدن تعداد فیلد ها وضعیت نوشته و دسته بندی و نویسنده را وارد میکنیم.
📍درواقع پس از اتمام دریافت مقادیر فیلد ها ، قبل از بسته شدن آرایه مقادیر زیر را نیز قرار میدهیم :
'post_status' => 'publish',
'post_author' => author_id,
'post_category' => array(cat_id,cat_id)


📍در مقدار اول وضعیت نوشته مشخص شده است که میتوانید هر یک از وضعیت های پیشنویس و در انتظار بررسی و... را قرار دهید.
📍مقدار دوم شناسه عددی کاربر نویسنده را درسافت میکنید.
📍مقدار سوم دسته بندی ها(دسته بندی) نوشته را دریافت میکنید ( شناسه دسته بندی )

و در نهایت متغیر $post_info را برای تابع مورد نظرمان ارسال میکنیم تا منتشر شود.
مثال زیر :
wp_insert_post($post_info);

به این ترتیب این آموزش به پایان میرسد.

❗️درصورت وجود هرگونه سوال در رابطه با این مطلب از طریق کامنت ها با ما در ارتباط باشید.
❗️این مطلب بصورت کاملا اختصاصی توسط ادمین کانال تهیه شده و منتشر شده، #لطفا درصورت کپی برداری از این مطلب منبع را @wpheart درج نمایید.

درصورتی که نیاز به آموزش خاصی دارید از طریق @pv3az_bot با ما درمیان بگذارید.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#معرفی‌تابع #باتوابع‌دوست‌باشیم #اختصاصی‌قلب‌وردپرس
نحوه فراخوانی متاباکس های انواع تکسنومی در فرانت اند
🖌 درصورتی شما نیاز داشته باشید که یک متاباکس اضافی را به دسته بندی ها و یا سایر تکسنومی ها اضافه کنید میبایست آنرا در سمت دیداری سایت فراخوانی کنید ، به این نوع متاها ترم متا میگویند که به وسیله تابع زیر ، در هرکجا که خواستیم میتوانیم آنها را فراخوانی کنیم .
به مثال زیر دقت کنید :

get_term_meta(get_queried_object_id() , 'id', true);

این تابع در مقدار اول شناسه آن دسته بندی یا... را دریافت میکند و در مقدار دوم شناسه متای مورد نظر را .
📍میتوان این تابع را بصورت مستقیم اکو کرد و یا برای استفاده حرفه ای تر در شروط و... آن را در یک متغیر ذخیره و سپس استفاده کرد.

قلب وردپرس را حمایت کنید 🌹
@wpheart
#آموزشی #اختصاصی‌قلب‌وردپرس #باتوابع‌دوست‌باشیم #معرفی‌تابع #تابع‌دوم
🔅معرفی و آموزش دو تابع وردپرسی به همراه نحوه استفاده و مثال ها
🖌باسلام، درخدمت شما هستیم با معرفی دو تابع کاربردی در رابطه با افزودن یک خصوصیت به پست تایپ و یا حذف آن.
شاید شماهم تا به حال به این مساله برخورد کرده باشید که سایت شما یک یا چند پست تایپ داشته باشد که یکی از موارد مورد نیاز شما در آن پست تایپ فعال نباشد.
📌 بعنوان مثال :
پست تایپ شما از خلاصه نوشته پشتیبانی نمیکند و میخواهید این امکان را به پست تایپ خود اضافه کنید، بنابر این کافیست از تابع
add_post_type_support()
به روش زیر استفاده نمایید.

📍هیچ یک از این توابع نیاز به قلاب ندارند.
📌نکته : این تابع حداکر ۳ مقدار را در خود جای میدهد که مقدار دوم بصورت آرایه میتواند باشد.
مثال :
add_post_type_support('posttype',array(
'excerpt','thumbnail'
));

🖍در تکه کد فوق ما امکان خلاصه نوشته و تصویر شاخص را به پست تایپ posttype اضافه کردیم.

✒️خب در رابطه با تابع دوم که مربوط به حذف این امکان ها میباشد نیز دقیقا مشابه تابع قبلی استفاده‌میشود
به مثال زیر توجه کنید :

remove_post_type_support('posttype',array(
'excerpt','thumbnail'
));


‼️درصورتی که نیاز به این شد که برای استفاده از این توابع قلابی بیاندازید ، قلاب خود را به هسته وردپرس بیاندازید
مثال :

add_action('init','functionname');

🔅پایان/.

#پست‌بعدی : ارسال درخواست های شما ( قالب،افزونه،انیمیشن )

قلب وردپرس را حمایت کنید 🌹
@wpheart
#تکه‌کد #معرفی‌تابع #قلاب‌ها #اختصاصی‌قلب‌وردپرس
🔅 آموزش حذف تصویر شاخص نوشته بعد از حذف نوشته
🖌 دوستان گرامی سلام، من مرتضی دریوژه هستم ، توی این مطلب میخوام به شما یک تابع و یک قلاب رو معرفی کنم که به کمک اینها میتونید خیلی کارها کنید!
نمونه اش همین کاری که ما میخوایم انجام بدیم و عنوان این مطلب هست!

خب تابعی که قصد معرفی اون رو دارم به شما تابع
wp_delete_attachment()
هست که در مطالب بعدی حتما این تابع رو با هم تحلیل میکنیم
و قلابی هم که قصد معرفی اون رو دارم قلاب
before_delete_post
هست!

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

پس به کد زیر دقت کنید :

function wpheart_remove_postthumb(){
if(has_post_thumbnail(($post_id)){
$thumbid = get_post_thumbnail_id($post_id);
wp_delete_attachment($thumbid, true);
}
}


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

در انتهای کد فقط کافیه که این تابع رو قلاب کنیم؛
بنابر این دستور زیر رو به انتهای کد بالا اضافه میکنیم :

add_action('before_delete_post','wpheart_remove_postthumb');

☺️ پایان/.
❗️کد فوق در فایل فانکشن قرار میگیرد.
‼️درصورت بروز هرگونه مشکل و سوال در رابطه با این مطلب از طریق دیدگاه ها با ما در ارتباط باشید.

قلب وردپرس را حمایت کنید 🌹
@wpheart