انجمن


فعال کردن صفحه تنظیمات قالب برای کلیه کاربران و وبلاگ ه  (۱۶ نوشته)

  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۲۶ مرداد ۱۳۹۰ - ۲۲:۴۲

    با سلام
    من یک صفحه تنظیمات راه اندازی کردم ولی دسترسی به اون فقط برای مدیر شبکه امکان پذیر هست و کاربران معمولی با رفتن روی منو ( نمایش ) گزینه تظیمات قالب را نمی بینند!!!
    اینم محتویات فایل functions :

    <?php // Widgetized Sidebar.
    if ( function_exists( 'add_image_size' ) ) add_theme_support( 'post-thumbnails' );
    	function limit_words($string, $word_limit) {
    	$words = explode(' ', $string);
    	return implode(' ', array_slice($words, 0, $word_limit));
     }
    function my_function_admin_bar(){
        return false;
    }
    add_filter( 'show_admin_bar' , 'my_function_admin_bar');
    ?>
    <?php
    $themename = "WordPress Classic";
    $shortname = "wpc";
    
    $options = array (
    
    	array(	"name" => "Welcome Message",
    			"type" => "title"),
    
    	array(	"type" => "open"),
    
    	array(	"name" => "Name",
    			"desc" => "Enter a title to display for your welcome message.",
    			"id" => $shortname."_welcome_name",
    			"std" => "",
    			"type" => "text"),
    
    	array(	"name" => "Phone",
    			"desc" => "Enter a title to display for your welcome message.",
    			"id" => $shortname."_welcome_phone",
    			"std" => "",
    			"type" => "text"),
    
    		array(	"name" => "Fax",
    			"desc" => "Enter a title to display for your welcome message.",
    			"id" => $shortname."_welcome_fax",
    			"std" => "",
    			"type" => "text"),
    
    		array(	"name" => "Address",
    			"desc" => "Enter a title to display for your welcome message.",
    			"id" => $shortname."_welcome_address",
    			"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=functions.php&saved=true");
                    die;
    
            }
        }
    
        add_theme_page($themename." Options", "".$themename." Options", 'edit_themes', basename(__FILE__), 'mytheme_admin');
    
    }
    
    function mytheme_admin() {
    
        global $themename, $shortname, $options;
    
        if ( $_REQUEST['saved'] ) echo '<div id="message" class="updated fade"><p><strong>'.$themename.' settings saved.</strong></p></div>';
    
    ?>
    <div class="wrap">
    <h2><?php echo $themename; ?> settings</h2>
    
    <form method="post">
    
    <?php foreach ($options as $value) { 
    
    	switch ( $value['type'] ) {
    
    		case "open":
    		?>
            <table width="100%" border="0" style="background-color:#eef5fb; padding:10px;">
    
    		<?php break;
    
    		case "close":
    		?>
    
            </table><br />
    
    		<?php break;
    
    		case "title":
    		?>
    		<table width="100%" border="0" style="background-color:#dceefc; padding:5px 10px;"><tr>
            	<td colspan="2"><h3 style="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="80%"><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:5px;border-bottom:1px dotted #000000;">&nbsp;</td></tr><tr><td colspan="2">&nbsp;</td></tr>
    
    		<?php
    		break;
    
    		case 'textarea':
    		?>
    
            <tr>
                <td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
                <td width="80%"><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 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:5px;border-bottom:1px dotted #000000;">&nbsp;</td></tr><tr><td colspan="2">&nbsp;</td></tr>
    
    		<?php
    		break;
    
    		case 'select':
    		?>
            <tr>
                <td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
                <td width="80%"><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:5px;border-bottom:1px dotted #000000;">&nbsp;</td></tr><tr><td colspan="2">&nbsp;</td></tr>
    
    		<?php
            break;
    
    		case "checkbox":
    		?>
                <tr>
                <td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
                    <td width="80%"><? 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:5px;border-bottom:1px dotted #000000;">&nbsp;</td></tr><tr><td colspan="2">&nbsp;</td></tr>
    
            <?php 		break;
    
    }
    }
    ?>
    
    <!--</table>-->
    
    <p class="submit">
    <input name="save" type="submit" value="Save changes" />
    <input type="hidden" name="action" value="save" />
    </p>
    </form>
    
    <?php
    }
    
    add_action('admin_menu', 'mytheme_add_admin'); ?>
    <?php
    if ( function_exists('register_sidebar') )
    	register_sidebar(array(
            'before_widget' => '<li id="%1$s" class="widget %2$s">',
            'after_widget' => '</li>',
            'before_title' => '',
            'after_title' => '',
        ));
    
    ?>

    ممنون میشم راهنمایی کنید

  • Parsa

    آفلاین
    عضو فعال
    تعداد نوشته‌ها: ۱۹۲۱
    تشکر شده: ۲۶۸۳ بار
    # نوشته شده: ۷ سال پیش
    ۲۶ مرداد ۱۳۹۰ - ۲۳:۳۳

    من با شبكه كار نكردم
    ولي اينو تست بكنيد
    add_action('admin_menu', 'function_name', priority);
    مثال:
    add_action('admin_menu', 'mytheme_add_admin',1);

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    ~> Mr.vAhiD.DI <~
  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۲۷ مرداد ۱۳۹۰ - ۰۵:۱۱

    نه ، بی فایده بود! فرقی نکرد!
    متشکرم

  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۲۷ مرداد ۱۳۹۰ - ۲۳:۱۳

    ویرایش قالب برای کاربران امکان پذیر نیست چون قالب ها بین کاربران مشترک هستند تنها میشه سی اس اس را ویرایش کرد

  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۲۸ مرداد ۱۳۹۰ - ۱۲:۱۸

    freeblog گفت:
    ویرایش قالب برای کاربران امکان پذیر نیست چون قالب ها بین کاربران مشترک هستند تنها میشه سی اس اس را ویرایش کرد

    با تشکر
    ولی تونستم این کار را بکنم

  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۲۸ مرداد ۱۳۹۰ - ۱۲:۲۷

    یعنی هر کاربر قالبش را میتونه ویرایش کنه ؟ !!!

    میشه توضیح بدهید

  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۲۸ مرداد ۱۳۹۰ - ۲۳:۱۱

    آره ولی اون چیزهایی که من تعریف کردم!
    مثلا
    لینک تصویر لوگو
    ایمیل و یاهو و فیسبوک و توییتر و ...
    آدرس و شماره تماس
    و...
    حتی میشه برای هر قالب چندتا فایل استایل و رنگ بندی گذاشت تا کاربر تعیین کنه یا توسط چندتا لیبل رنگ منوها را تغییر بده!

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    FreeBlog.ir
  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۲۸ مرداد ۱۳۹۰ - ۲۳:۲۸

    خوب اینا همون سی اس اس میشه و در خیلی قالب ها موجود هست به صورت پیشفرض

    در کل امکان ادیت قالب برای کاربران فراهم نیست

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    محسن غیاثی
  • Parsa

    آفلاین
    عضو فعال
    تعداد نوشته‌ها: ۱۹۲۱
    تشکر شده: ۲۶۸۳ بار
    # نوشته شده: ۷ سال پیش
    ۲۹ مرداد ۱۳۹۰ - ۰۳:۰۶

    freeblog گفت:
    خوب اینا همون سی اس اس میشه و در خیلی قالب ها موجود هست به صورت پیشفرض

    در کل امکان ادیت قالب برای کاربران فراهم نیست

    منظور ايشون دسترسي به بخش ويرايش پوسته نيست

    منظور: دسترسي به بخشي به نام تنظيمات قالب هست. كه شخصا براي قالبشون ايجاد كردند.
    كه اين امكان رو به كاربر ميده بدون ويرايش قالب،فقط با چند كليك تغييراتي در قالب انتخابي دهند.
    كه اين امكان براي كاربران سرويس وبلاگدهي ايجاد شده است

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    محسن غیاثی
  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۲۹ مرداد ۱۳۹۰ - ۱۳:۲۶

    پارسا جان درست متوجه شد!
    فری بلاگ عزیز ، شما چه تعداد وبلاگ پشتیبانی میکنی و از هاست معمولی استفاده می کنی یا از مجازی یا اختصاصی؟

  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۳۰ مرداد ۱۳۹۰ - ۱۶:۴۷

    در حال حاضر حدود 3 هزار وبلاگ داریم و البته مسلمه که با توجه با هسته وردپرس و پلاگین های سنگینی که داریم از سرور اختصاصی و قدرتمند استفاده میکنیم

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    محسن غیاثی - محسن - ~> Mr.vAhiD.DI <~
  • طالبیان

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۱۱
    تشکر شده: ۵۸ بار
    # نوشته شده: ۷ سال پیش
    ۳ شهریور ۱۳۹۰ - ۱۹:۲۲

    freeblog گفت:
    در حال حاضر حدود 3 هزار وبلاگ داریم و البته مسلمه که با توجه با هسته وردپرس و پلاگین های سنگینی که داریم از سرور اختصاصی و قدرتمند استفاده میکنیم

    بابا بی خیال
    شما که رو hostdl.com هستید

  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۳ شهریور ۱۳۹۰ - ۲۲:۱۴

    bloghaa گفت:

    بابا بی خیال
    شما که رو hostdl.com هستید

    بله رو هاست دی ال هستیم شما که بهتر در جریانی
    اما این چه تناقضی با حرف من داشت ؟ !

  • طالبیان

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۱۱
    تشکر شده: ۵۸ بار
    # نوشته شده: ۷ سال پیش
    ۴ شهریور ۱۳۹۰ - ۰۰:۲۰

    freeblog گفت:

    بله رو هاست دی ال هستیم شما که بهتر در جریانی
    اما این چه تناقضی با حرف من داشت ؟ !

    تناقض نداره
    اما اختصاصی نیست همین :)

  • محسن

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۳۲
    تشکر شده: ۱۳۸ بار
    # نوشته شده: ۷ سال پیش
    ۴ شهریور ۱۳۹۰ - ۱۵:۵۰

    هاست دی ال سرور اختصاصی نمیده!
    منم متوجه شدم همون اول ولی به رو خودم نیاوردم!!!

  • FreeBlog.ir

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۰
    تشکر شده: ۱۴۹ بار
    # نوشته شده: ۷ سال پیش
    ۴ شهریور ۱۳۹۰ - ۱۵:۵۹

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

    متاسفانه نمی توانم توضیح بیشتری بدهم اما همینقدر میگم که از لحاظ سرور این کار نیاز به سرور اختصاصی داره

درباره‌ی این موضوع



برچسب‌ها

هیچ برچسبی نیست.