انجمن


سوال تخصصی از متخصصان کدنویسی وردپرس  (۵ نوشته)

  • naghmesara

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

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

    <?php
    // create custom plugin settings menu
    add_action('admin_menu', 'ete');
    
    function ete() {
    
    	//create new top-level menu
    	add_menu_page('بخش اطلاعیه', 'اطلاعیه', 'administrator', __FILE__, 'ete_settings_page',plugins_url('/images/icon.png', __FILE__));
    
    	//call register settings function
    	add_action( 'admin_init', 'register_mysettings' );
    }
    
    function register_mysettings() {
    	//register our settings
    	register_setting( 'ete-settings-group', 'ete-text' );
    }
    
    function ete_settings_page() {
    ?>
    <div class="wrap">
    <h2>اطلاعیه</h2>
    
    <form method="post" action="options.php">
        <?php settings_fields( 'ete-settings-group' ); ?>
        <?php do_settings_sections( 'ete-settings-group' ); ?>
        <table class="form-table">
            <tr valign="top" align="center">
            <td><?php
    
    $content = '';
    $editor_id = 'ete-text';
    wp_editor( $content, $editor_id );
    
    ?></td>
            </tr>
        </table>
    
        <?php submit_button(); ?>
    
    </form>
    </div>
    <?php } ?>

    بنده خروجی این ادیتور رو در قالب با استفاده از شورت کد زیر میگیرم.
    <?php echo esc_attr( get_option('ete-text') ); ?>
    خوب حالا میریم سر مشکلات کار :
    مشکل اول : خروجی این شورت کد برای واژه "سلام" که وسط چین شده به شکل زیر است:
    <p style="text-align: center;">سلام</p>
    که قطعا اشتباه است و باید یک سلام در وسط صفحه نشان دهد.
    مشکل دوم : پس از نوشتن متن موردنظر در ادیتور ایجاد شده و زدن دکمه ذخیره تغییرات متن نوشته شده ذخیره میشود ولی دیگر داخل ادیتور قابل رویت نیست و مشخص نیست که دفعه قبل چی نوشته شده.
    لطفا اساتید مشکل رو بررسی کنند.
    با تشکر

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    آموزش وردپرس - modeyou1
  • Masoud

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

    سلام،
    شما در ادیتورتون کد html وارد کردید؟
    کدتون رو به این صورت امتحان کنید:
    <?php echo get_option('ete-text'); ?>

    و لینک زیر رو هم مطالعه کنید:
    http://codex.wordpress.org/Function_Reference/esc_attr

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    naghmesara - آموزش وردپرس
  • naghmesara

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

    masoudin گفت:
    سلام،
    شما در ادیتورتون کد html وارد کردید؟
    کدتون رو به این صورت امتحان کنید:
    <?php echo get_option('ete-text'); ?>

    و لینک زیر رو هم مطالعه کنید:
    http://codex.wordpress.org/Function_Reference/esc_attr

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

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    آموزش وردپرس
  • don.Diego

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

    برای حل مشکل دوم باید این قسمت از کدتون رو :

    $content = '';
    $editor_id = 'ete-text';
    wp_editor( $content, $editor_id );

    به این صورت تغییر بدید:

    $content = get_option('ete-text');
    $editor_id = 'ete-text';
    wp_editor( $content, $editor_id );
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    آموزش وردپرس - Masoud
  • آموزش وردپرس

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

    don.Diego گفت:
    برای حل مشکل دوم باید این قسمت از کدتون رو :

    $content = '';
    $editor_id = 'ete-text';
    wp_editor( $content, $editor_id );

    به این صورت تغییر بدید:

    $content = get_option('ete-text');
    $editor_id = 'ete-text';
    wp_editor( $content, $editor_id );

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

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



برچسب‌ها

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