رفتن به مطلب

مشکل با پنل تنظیمات


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

سلام

پنل تنظیمات پوسته ی سایت رو وقتی روی گزینه ذخیره کلیک میکنم ، تنظیمات رو ذخیره میکنه اما میره توی یه صفحه دیگه و می نویسه ( شما مجوز کافی برای دسترسی به این برگه را ندارید ) ، به نظر شما مشکل از کجا میتونه باشه ؟

لینک به ارسال

اگر کاربریتون ادمینه و به تنظیمات دیفالت هم دست نزدید احتمالا تاثیر یک افزونه غیر استاندارده

اگر مطمئنید ذخیره سازی انجام می شه به نظرم صحیح ترین کار راه اندازی دوباره وردپرس از صفحه به روز رسانی ها و تغییر رمز ورود است

لینک به ارسال
ارسال شده در (ویرایش شده)

ممنون . سایت هیچ افزونه ای روش نیست . پنل تنظیمات رو هم خودم دارم کدنویسی میکنم ، به خاطر همین فکر کنم مشکل از کدنویسی خودم باشه . ( مشکل روی لوکال هم دیده میشه ) این کد پنل هست :

<?php

$themename = "خدمات نشر قلم";

$shortname = "ghalam";

$zm_categories_obj = get_categories('hide_empty=0');

$zm_categories = array();

foreach ($zm_categories_obj as $zm_cat) {

$zm_categories[$zm_cat->cat_ID] = $zm_cat->category_nicename;

}

$categories_tmp = array_unshift($zm_categories, "Select a category:");

$options = array (

array( "name" => "ستون های صفحه اصلی",

"type" => "title",

"desc" => "This section customizes the custom widget areas on the home page.",

),

array( "type" => "open"),

array( "name" => "عنوان ستون اول",

"desc" => "متنی که کنار آیکون قرار می گیرد",

"id" => $shortname."_widgt1",

"std" => "عنوان تستی",

"type" => "text"),

array( "name" => "محتوای ستون اول",

"desc" => "محتوای مورد نظر را مثل محتوای تستی بین دو تگ قرار دهید ",

"id" => $shortname."_widg1",

"std" => "<p>اینجا متن تستی است</p>",

"type" => "textarea"),

array("name" => "لینک ستون اول",

"desc" => "لینک ستون یک را به طور کامل وارد کنید",

"id" => $shortname."_url1",

"std" => "http://www.faridghasemi.ir/",

"type" => "text"),

array( "name" => "عنوان ستون دوم",

"desc" => "متنی که کنار آیکون قرار می گیرد",

"id" => $shortname."_widgt2",

"std" => "عنوان تستی",

"type" => "text"),

array( "name" => "محتوای ستون دوم",

"desc" => "محتوای مورد نظر را مثل محتوای تستی بین دو تگ قرار دهید",

"id" => $shortname."_widg2",

"std" => "<p>اینجا متن تستی است</p>",

"type" => "textarea"),

array("name" => "لینک ستون دوم",

"desc" => "لینک ستون یک را به طور کامل وارد کنید",

"id" => $shortname."_url2",

"std" => "ttp://www.faridghasemi.ir/",

"type" => "text"),

array( "name" => "عنوان ستون سوم",

"desc" => "متنی که کنار آیکون قرار می گیرد",

"id" => $shortname."_widgt3",

"std" => "عنوان تستی",

"type" => "text"),

array( "name" => "محتوای ستون سوم",

"desc" => "محتوای مورد نظر را مثل محتوای تستی بین دو تگ قرار دهید ",

"id" => $shortname."_widg3",

"std" => "<p>اینجا متن تستی است</p>",

"type" => "textarea"),

array("name" => "لینک ستون سوم",

"desc" => "لینک ستون یک را به طور کامل وارد کنید",

"id" => $shortname."_url3",

"std" => "ttp://www.faridghasemi.ir/",

"type" => "text"),

array( "type" => "close"),

array( "name" => "تنظیمات اسکرول فوتر ( به تعداد 12 عدد)",

"type" => "title",

"desc" => "شما میتوانید لوگو ها را اینجا ویرایش کنید",

),

array("type" => "open"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner4",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url4",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab4",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner5",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url5",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab5",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner6",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url6",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab6",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner7",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url7",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab7",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner8",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url8",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab8",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner9",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url9",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab9",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner10",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url10",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab10",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner11",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url11",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab11",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner12",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url12",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab12",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner13",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url13",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab13",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner14",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url14",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab14",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array("name" => "تصویر",

"desc" => "آدرس تصویر",

"id" => $shortname."_banner15",

"std" => "http://localhost/wordpress/wp-content/themes/Ghalampub/images/carousel/carousel3.jpg",

"type" => "text"),

array("name" => "لینک تصویر",

"desc" => "لینک تصویر",

"id" => $shortname."_url15",

"std" => "http://www.Faridghasemi.ir/",

"type" => "text"),

array("name" => "عنوان تصویر",

"desc" => "عنوان تصویر",

"id" => $shortname."_lab15",

"std" => "متنی که روی لوگو نوشته می شود",

"type" => "text"),

array("type" => "break"),

array( "name" => "تنظیمات شبکه های اجتماعی در فوتر",

"type" => "title",

"desc" => "ای قسمت امکان تنظیم گزینه های مربوط به دکمه های شبک اجتماعی را در اختیار شما می گذارد",

),

array( "type" => "open"),

array( "name" => "آیدی توییتر",

"desc" => "آیدی توییتر خود را وارد کنید",

"id" => $shortname."_twitter",

"std" => "twitter",

"type" => "text"),

array( "name" => "صفحه ی فیس بوک",

"desc" => "لینک صفحه فیسبوک خود را وارد کنید",

"id" => $shortname."_face",

"std" => "",

"type" => "text"),

array( "type" => "close"),

);

function mytheme_add_admin() {

global $themename, $shortname, $options;

if ( $_GET['page'] == basename(__FILE__) ) {

if ( 'save' == $_REQUEST['action'] ) {

foreach ($options as $value) {

update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }

foreach ($options as $value) {

if( isset( $_REQUEST[ $value['id'] ] ) ) { update_option( $value['id'], $_REQUEST[ $value['id'] ] ); } else { delete_option( $value['id'] ); } }

header("Location: themes.php?page=theme_options.php&saved=true");

die;

} else if( 'reset' == $_REQUEST['action'] ) {

foreach ($options as $value) {

delete_option( $value['id'] );

update_option( $value['id'], $value['std'] );}

header("Location: themes.php?page=theme_options.php&reset=true");

die;

}

}

add_theme_page($themename." Options", "تنظیمات 2", 'edit_themes', basename(__FILE__), 'mytheme_admin');

}

function mytheme_admin() {

global $themename, $shortname, $options;

?>

<div class="wrap">

<div class="opwrap" style="background:#fff; margin:20px auto; width:70%; padding:30px;" >

<h2 class="wraphead" style="margin:9px 0px; padding:13px 9px; font-family:arial black; font-style:normal; background:#B3D4EF;"><b>تنظیمات : سه ستون صفحه نخست ، شبکه های اجتماعی ، اسکرولر عکس </b></h2>

<?php

if ( $_REQUEST['saved'] ) echo '<div id="message" class="updated fade"><p><strong> تنظیمات ذخیره شد. </strong></p></div>';

if ( $_REQUEST['reset'] ) echo '<div id="message" class="updated fade"><p><strong> تنظیمات باز نشانی شد. </strong></p></div>';

?>

<form method="post">

<?php foreach ($options as $value) {

switch ( $value['type'] ) {

case "image":

?>

<tr>

<td width="30%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>

<td width="60%"><img src="<?php echo $value['id']; ?>" /></td>

</tr>

<tr><td colspan="2" style="margin-bottom:4px;border-bottom:1px dotted #ffffff;"> </td></tr>

<tr><td colspan="2"> </td></tr>

<?php break;

case "open":

?>

<table width="90%" border="0" style="background-color:#eef4fb; padding:9px;">

<?php break;

case "close":

?>

</table><br />

<?php break;

case "break":

?>

<tr><td colspan="2" style="border-top:1px solid #C2DCEF;"> </td></tr>

<?php break;

case "title":

?>

<table width="90%" border="0" style="background-color:#dceefc; padding:4px 9px;">

<tr>

<td colspan="2"><h3 style="font-size:17px;font-family:Georgia,'Times New Roman',Times,serif;"><?php echo $value['name']; ?></h3></td>

</tr>

<?php break;

case 'text':

?>

<tr>

<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>

<td width="70%"><input style="width:400px;" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>" type="<?php echo $value['type']; ?>" value="<?php if ( get_settings( $value['id'] ) != "") { echo get_settings( $value['id'] ); } else { echo $value['std']; } ?>" /></td>

</tr>

<tr>

<td><small><?php echo $value['desc']; ?></small></td>

</tr><tr><td colspan="2" style="margin-bottom:4px;border-bottom:1px dotted #ffffff;"> </td></tr><tr><td colspan="2"> </td></tr>

<?php

break;

case 'textarea':

?>

<tr>

<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>

<td width="70%"><textarea name="<?php echo $value['id']; ?>" style="width:400px; height:200px;" type="<?php echo $value['type']; ?>" cols="" rows=""><?php if ( get_settings( $value['id'] ) != "") { echo stripslashes (get_settings( $value['id'] )); } else { echo $value['std']; } ?></textarea></td>

</tr>

<tr>

<td><small><?php echo $value['desc']; ?></small></td>

</tr><tr><td colspan="2" style="margin-bottom:4px;border-bottom:1px dotted #ffffff;"> </td></tr><tr><td colspan="2"> </td></tr>

<?php

break;

case 'select':

?>

<tr>

<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>

<td width="70%"><select style="width:240px;" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>"><?php foreach ($value['options'] as $option) { ?><option<?php if ( get_settings( $value['id'] ) == $option) { echo ' selected="selected"'; } elseif ($option == $value['std']) { echo ' selected="selected"'; } ?>><?php echo $option; ?></option><?php } ?></select></td>

</tr>

<tr>

<td><small><?php echo $value['desc']; ?></small></td>

</tr>

<tr><td colspan="2" style="margin-bottom:4px;border-bottom:1px dotted #ffffff;"> </td></tr>

<tr><td colspan="2"> </td></tr>

<?php

break;

case "checkbox":

?>

<tr>

<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>

<td width="70%"><? if(get_settings($value['id'])){ $checked = "checked=\"checked\""; }else{ $checked = ""; } ?>

<input type="checkbox" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>" value="true" <?php echo $checked; ?> />

</td>

</tr>

<tr>

<td><small><?php echo $value['desc']; ?></small></td>

</tr><tr><td colspan="2" style="margin-bottom:4px;border-bottom:1px dotted #ffffff;"> </td></tr><tr><td colspan="2"> </td></tr>

<?php break;

}

}

?>

<p class="submit">

<input name="save" type="submit" value="ذخیره تنظیمات" class="button-primary" />

<input type="hidden" name="action" value="save" />

</p>

</form>

<form method="post">

<p class="submit">

<input name="reset" type="submit" value="بازنشانی تنظیمات" />

<input type="hidden" name="action" value="reset" />

</p>

</form>

<p style="text-align:right;"> <small> طراحی و توسعه : <a href="#/"></a> </small>

</div>

<?php

}

add_action('admin_menu', 'mytheme_add_admin'); ?>

ویرایش شده توسط Morteza
کدهای بلند در longbox
لینک به ارسال

سلام

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

لینک به ارسال

مطمئن نیستم ولی ممکنه اگر شرطی شبیه


if ( !current_user_can('switch_themes') && !current_user_can('edit_theme_options') )

بگذارید مرجعی را برای قیاس پیدا کنه و ارور نده

اگر دوست داشتید تست کنید و منتظر پاسخ صحیحتر دوستان نیز باشید

لینک به ارسال

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

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

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

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

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

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

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

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

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