Mostafa
آفلاین
ناظم
تعداد نوشتهها: ۵۲۷۶
تشکر شده: ۵۷۷۷ بار
#
نوشته شده: ۱۳ سال پیش
۱۹ دی ۱۳۸۹ - ۱۱:۴۳
سلام,
یک ورودی از نوع checkbox زیر در تنظیمات افزونه داریم:
<input type="checkbox" name="comment_option" value="1" <?php if ( $comment_option == "1" ) echo ' checked="checked"'; ?> />
وقتی تیک میخوره و صفحه بهروز میشه, خروجی اش درسته! خروجیاش 1 میشه.
اما تیکش ثابت نمیمونه! و میپره!
این هم تست میکنم معکوس میشه! (یعنی همیشه فعال میمونه)
<input type="checkbox" name="comment_option" value="1" <?php if ( $comment_option == "1" || $comment_option =="") echo ' checked="checked"'; ?> />
همه توابع مربوط به settings_fields هم فعال هستن! چون فرم از نوع text جواب میده و ثابت میمونه!
Mostafa
آفلاین
ناظم
تعداد نوشتهها: ۵۲۷۶
تشکر شده: ۵۷۷۷ بار
#
نوشته شده: ۱۳ سال پیش
۱۹ دی ۱۳۸۹ - ۱۵:۰۰
مشکل از عبارت شرطی بود. حل شد ;)
if ( $comment_option ))
باید اینطوری بشه:
if (get_option('comment_option'))
عبدالماجد شه بخش ( ایجباری )
آفلاین
عضو فعال
تعداد نوشتهها: ۱۰۳۱
تشکر شده: ۱۴۳۲ بار
#
نوشته شده: ۱۳ سال پیش
۲۹ بهمن ۱۳۸۹ - ۱۴:۰۶
خوبه مشکلتون حل شده .
یه سوال در مورد چک باکس ، من میخواستم تو یه پلاگین یه اکشن تعریف کنم که تو صفحه تنظیمات این بخش فعال شه یعنی اگه تیک بزنه اکشن تعریف شه و اگه نه اونم کار نکنه .
مثلا :
<?php
add_action ('WP_ADMIN', 'addHeaderCode') ; ?>
در ضمن اینو میخوام به اون پلاگینی که تو کامنت سایتتون گذاشتم اضافه کنم . شما ببین فرم رو دارم اما اینو میخوام اضافه کنم .
Mostafa
آفلاین
ناظم
تعداد نوشتهها: ۵۲۷۶
تشکر شده: ۵۷۷۷ بار
#
نوشته شده: ۱۳ سال پیش
۲۹ بهمن ۱۳۸۹ - ۲۳:۵۴
خب عبدالماجد جان یه دستور شرطی ایجاد کن برای اکشن!
if ( $checkbox_name == '1')
add_action ('WP_ADMIN', 'addHeaderCode');
همانند دستور شرطی بالا هم یک دستور شرطی برای ثابت نگه داشتن چک باکس بزار.
عبدالماجد شه بخش ( ایجباری )
آفلاین
عضو فعال
تعداد نوشتهها: ۱۰۳۱
تشکر شده: ۱۴۳۲ بار
#
نوشته شده: ۱۳ سال پیش
۳۰ بهمن ۱۳۸۹ - ۰۶:۵۴
ببخشید من اینو گذاشتم
<?php
if ( $checkbox_name == '1')
add_action ('WP_ADMIN', 'admin_panel','addHeaderCode');
?>
خوب برای چک باکس اینو :
<h2>admin panel tooltip</h2>
<input type="checkbox" name="admin_panel" value="1" <?php if (get_option('admin_panel')) echo ' checked="checked"'; ?> />
خوب به قول خودتون میپره !
راستی اگه مایل هستی با من توی این پروژه شرکت کنی بهم خبر بده سورس رو هم برات فرستادم توی کامنت .
Mostafa
آفلاین
ناظم
تعداد نوشتهها: ۵۲۷۶
تشکر شده: ۵۷۷۷ بار
#
نوشته شده: ۱۳ سال پیش
۱ اسفند ۱۳۸۹ - ۱۳:۲۷
admin_panel رو در register_setting قرار دادی؟
مثلا:
settings_fields( 'your_options' );
function register_mysettings() {
register_setting( 'your_options', 'admin_panel' );}
بعدش, admin_panel رو در:
<input type="hidden" name="page_options" value="admin_panel" />
قرار دادی؟
راستی اگه مایل هستی با من توی این پروژه شرکت کنی بهم خبر بده سورس رو هم برات فرستادم توی کامنت .
خودم هم علاقهای به برنامهنویسی گروهی دارم ;)
با جیمیل mst404 تماس بگیر